Домены
Интересные статьи
Домены

Ускорение Apache с помощью mod_pagespeed и Memcached в Ubuntu 15.04

В этой стать я расскажу вам, как уменьшить время загрузки страниц вашего сайта, для этого проведем ускорение apache с помощью mod_pagespeed и Memcached в Ubuntu 15.04. Время загрузки страницы это важный фактор в ранжировании страниц поисковыми системами. Вы можете протестировать время загрузки страницы с помощью сервиса Google PageSpeed Insights.

Pagespeed это модуль для Apache2, который оптимизирует и кеширует содержимое сайта, прежде чем оно будет передано браузеру. Mod_pagespeed использует по умолчанию файловое кеширование, в статье я расскажу как установить и настроить Mod_pagespeed,а также переключить кеш на Memcached.

 

Все операции я буду производить на готовом LAMP сервере под Ubuntu 15.04.

1. Установка mod_pagespeed

Для начала выясним, какую разрядность имеет операционная система сервера. Т.к. Google предоставляет .deb пакеты для 32 и 64-битных систем.

Для этого выполним следующую команду:

uname -a

В результате вы получите подобный вывод:

uname-a-64-bitЗдесь мы видим "x86_64", это означает, что у нас 64-битная система, иначе 32-битная.

Скачаем и установим mod_pagespeed:

Ubuntu 64 бита:

cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb 
dpkg -i mod-pagespeed-stable_current_amd64.deb

Ubuntu 32 бита:

cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb 
dpkg -i mod-pagespeed-stable_current_i386.deb

После чего перезапустим вебсервер Apache, чтобы mod_pagespeed создал файлы конфигурации:

service apache2 restart

2. Установка Memcached

Memcached доступен в стандартных репозиториях Ubuntu и может быть установлен следующей командой:

apt-get -y install memcached

Проверим, запустился ли memcached:

netstat -tap | grep memcached

В результате увидим подобное:

root@server1:/tmp# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 1687/memcached

Я выделил порт, на котором работает Memcached, а именно 11211, он нам понадобится при настройке mod_pagespeed.

Если вы хотите, чтобы memcached работал также с PHP приложениями, а не только mod_pagespeed, установите расширение для PHP:

apt-get install php5-memcached

3. Настройка mod_pagespeed для работы с Memcached.

Откроем файл конфигурации mod_pagespeed в редакторе:

nano /etc/apache2/mods-available/pagespeed.conf

И найдем строку "ModPagespeedMemcachedServers":

[….] # ModPagespeedMemcachedServers localhost:11211
[….]

Раскомментируем эту строку, удалив # в начале строки.

Сохраним файл и перезапустим вебсервер Apache:

service apache2 restart

Теперь mod_pagespeed использует Memcached для хранения кеша. Посмотреть статистику использования Memcached можно с помощью следующей команды:

echo stats | nc 127.0.0.1 11211

В результате получим следующий вывод:

root@server1:/tmp# echo stats | nc 127.0.0.1 11211
STAT pid 1687
STAT uptime 134
STAT time 1440931897
STAT version 1.4.14 (Ubuntu)
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.000000
STAT rusage_system 0.008000
STAT curr_connections 5
STAT total_connections 6
STAT connection_structures 6
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 0
STAT get_misses 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 6
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT evictions 0
STAT reclaimed 0
END

Прервать вывод информации можно, нажав Ctrl-C.

Также, вы можете использовать phpMemcachedAdmin и ему подобные, для просмотра статистики Memcached сервера.

Теперь протестируем скорость открытия сайта с помощью PageSpeed Insights. Первая проверка может не показать изменений т.к. кеш еще не сформирован, а вот последующие проверки должны давать хороший результат.

На этом всё 🙂

Обо мне cyber01

Прочитайте также

Как установить Java с помощью apt в Ubuntu 20.04

Java один из самых популярных языков программирования, а JVM (Java’s virtual machine) используется в качестве окружения для запуска …

Как сделать дамп только нужных записей из базы данных

Бывало такое, что из всей таблицы нужно сделать дамп только определенных строк? Например, результата какого-либо …

Как добавить поддержку ГОСТ 34.10 2012 в CentOS 7/Redhat 7

Именно с такой задачей я столкнулся несколько дней назад на работе. Требовалось организовать поддержку ГОСТовых …

2 комментария

  1. После установки мода pagespeed увеличилось потребление памяти, скорость загрузки сайта на нагрузочном тестировании увеличилась на 0,2 секунды при 100 одновременных посещений. После удаления мода показатели стали ещё хуже. При этом до установки мода при 100 посетителях скорость загрузки страницы была 0,5 секунды, с модом 0,7, после удаления 0,75-0,8.

    • Тут все упирается в частоту процессора и оперативку т.к. апачик при большом количестве подключений начинает активно кушать и проц и память,а pagespeed хранит данные в memcached, который в свою очередь хранит данные в оперативке

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *