Прискорення apache за допомогою mod_pagespeed і memcached в ubuntu

У цій стати я розповім вам, як зменшити час завантаження сторінок вашого сайту. для цього проведемо прискорення 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-бітових систем.

Для цього виконаємо наступну команду:

В результаті ви отримаєте подібний висновок:

Прискорення apache за допомогою mod_pagespeed і memcached в ubuntu
Тут ми бачимо "x86_64", це означає, що у нас 64-бітна система, інакше 32-бітна.

Завантажити та встановити mod_pagespeed:

Після чого перезапустити вебсервер 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.

І знайдемо рядок "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 одна тисяча шістсот вісімдесят сім
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. Перша перевірка може не показати змін тому кеш ще не сформований, а ось наступні перевірки повинні давати хороший результат.

Тут все впирається в частоту процесора і оперативку тому апачік при великій кількості підключень починає активно їсти і проц і пам'ять, а pagespeed зберігає дані в memcached, який в свою чергу зберігає дані в оперативці

Схожі статті