| Auto с аукционов США|COPART|IAAI|MANHEIM |

Увеличить скорость открытия страниц

Создано A. Daniley .Разместил в категорию CMS, Debian, Linux, Ubuntu, Web-дизайн, WordPress

После первой статьи об ускорении загрузки, прошло не так уж много времени, и та минутная радость, что мой сайт получил оценку от google pagespeed 97 из 100 и я наконец то увидел все зелёные галочки, быстро развеялась.

Открыв страницу управления сайтом в google webmasters, я обнаружил что мой сайт на WordPress, стал грузиться в среднем 5.5 сек. что на 85% процентов медленнее других сайтов.

Хм начал сравнивать другие сайты.

Обнаружил один интернет магазин, на котором было изображений в 20 раз больше чем на всех моих страницах сразу и грузились все страницы со скоростью 1.3 сек.

Копаем дальше, лезем смотрим в google pagespeed и видим что у нас много времени тратится на ожидание от сервера — где то около 85% всей загрузки это ожидание от сервера. Решил попробовать на виртуальном сервере, благо потестить VPS можно у некоторых компаний до 30 дней.

На VPS сервере с установленными Apache и Nginx, скорость загрузки снизилась примерно на 10-20 процентов, тоесть была не меньше 4 сек.

Отключаем все плагины для ускорения WordPress, всевозможные минификаторы, кэшы, сжиматели, загрузчики библиотек с googla. Скорость страниц WordPress, увеличилась ещё на 1 секунду. Интересно да ? Но всёравно интервал ожидания в первой же строке показывает 1.8 сек.

В .HTACCESS всевозможные mod_deflate и mod_expires включены.

Было решено создать пустую страницу в обычном html, аналогичную той которую нам показывает Apache с текстом Hello World. Проверяем всё тем же Google PageSpeed эту страницу и видим что время ожидания ответа практически пустой страницы, всё равно больше чем у интернет магазина, примерно 1.2 сек.

Напрашивается вывод, что проблема в сервере ?, если быть более точным в его настройке. Неожиданно пришла идея, у некоторых движков CMS, таких как Prestasshop например — использовать Memcached.

Устанавливаем Memcached на сервер для того что бы наш сайт на WordPress работал быстрее и отдавал более быстрые ответы от сервера, чем сейчас.

apt-get install memcached php5-memcached
nano /etc/memcached.conf
/etc/init.d/memcached restart
/etc/init.d/apache2 restart

после настройки и перезагрузки, необходимо подправить конфигурацию Nginx

nano /etc/nginx/nginx.conf

и добавить в конец секции server { следующие строки.

location @memcached {
default_type text/html;

set $memcached_key data-$scheme://$host$request_uri;
memcached_pass 127.0.0.1:11211;
error_page 404 = @rewrites;
}

так же я добавил после строки gzip on; следующие строки:

gzip on;
gzip_buffers 4 8k;
gzip_comp_level 7;
gzip_proxied any;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_disable "MSIE [1-6].(?!.*SV1)";

сохраняем и перезапускаем наш nginx сервер.

service nginx restart

теперь можно подключить плагин для wordpress который подружит нашу cms с memcache.

Я воспользовался плагином WP-FFPC, и для мониторинга из админ панели за сервером поставил wp-serverinfo.

настроив плагин WP-FFPC.

Мой wordpress стал загружать первую страницу в среднем 1.5 секунды, а последующие за 0.3 — 0.6 сек

Данная статья является дополнением к статье Как ускорить WordPress

Теоретически эти манипуляции подходят и к другим CMS, таким как joomla или prestashop, oscart, друпал. потому как участие самой CMS минимально.

к тому же после таких опытов становится ясно какой хостинг нужно искать с 2 гигабайтами или с memcached. 🙂

Сейчас мой сайт работает именно по материалам этой статьи, циферки упали до 87 из 100 в google pagespeed, но мы то теперь знаем что наш сайт грузится быстрее.

Кстати замеры скорости открытия страницы проводились благодаря плагину для браузера telemetry Page Speed Monitor, который есть у google crome и mozilla firefox.

Уведомить с этого сайта.

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