Поиск по сайту:

Как ускорить apache с помощью mod_pagespeed и Memcached в Ubuntu 15.04


Это руководство существует для этих версий ОС

  • Ubuntu 15.10 (Wily Werewolf)
  • Ubuntu 15.04 (Vivid Vervet)

На этой странице

  1. Установка mod_pagespeed
  2. Установка Memcached
  3. Настройте mod_pagespeed для использования Memcached.
  4. Ссылки

В этом руководстве показано, как улучшить время загрузки страницы вашего веб-сайта с помощью модуля Google mod_pagespeed для Apache в сочетании с быстрым кешем в памяти Memcached. Время загрузки страницы является важным фактором для получения хорошего рейтинга в поисковых системах, вы можете проверить текущее время загрузки, например. с сервером Google Ubuntu LAMP в качестве основа, но вы также можете использовать учебные пособия по ISPConfig 3 Perfect Server.

Установка mod_pagespeed

Google предоставляет пакеты mod_pagespeed .deb для 32- и 64-разрядных установок Ubuntu.

Как узнать, нужен ли вам 32-битный или 64-битный пакет? Запустите команду:

uname -a

Результат команды должен быть похож на скриншот ниже.

Когда команда содержит строку \x86_64\, ваша система работает на 64-битном ядре Linux. В этом случае используйте приведенные ниже команды для 64-битной версии Ubuntu.

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

Убунту 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 2, чтобы загрузить конфигурацию mod_pagespeed.

service apache2 restart

Установка Memcached

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

apt-get -y install memcached

Выполните команду \netstat -tap | grep memcached\, чтобы увидеть, запущен ли Memcached:

netstat -tap | grep memcached

Результат команды netstat должен выглядеть следующим образом:

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

Я выделил порт, на котором работает Memcached, жирным шрифтом. Нам нужно знать этот номер порта для конфигурации mod_pagespeed.

Если вы хотите использовать Memcache из своих приложений на основе PHP, а не только для mod_pagespeed, установите расширение PHP memcahed:

apt-get install php5-memcached

Настройте mod_pagespeed для использования Memcached

Откройте файл pagespeed.conf в редакторе, здесь я буду использовать редактор nano:

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

и найдите строку «ModPagespeedMemcachedServers»:

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

Удалите # перед строкой, чтобы результирующая строка выглядела так, как показано ниже:

[....]
ModPagespeedMemcachedServers localhost:11211
[....]

Если на вашем сервере много памяти, вы можете получить дополнительное ускорение, удалив # перед этой строкой:

[....]
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" 51200
[....]

Затем перезапустите сервер Apache 2, чтобы активировать новую конфигурацию.

service apache2 restart

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

echo stats | nc 127.0.0.1 11211
:/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, чтобы вернуться в командную строку.

Теперь снова проверьте скорость вашего сайта, например. с помощью PageSpeed Insights. Когда на вашем веб-сайте еще мало трафика, возможно, вам придется перезагрузить веб-страницу несколько раз, чтобы заполнить кэши, прежде чем вы получите правильные результаты.

Ссылки

  • Инструменты Google Pagespeed
  • memcached.org