Сайт

Ускорение Работы Сайта – Включение Режима Keep-Alive

ускорение работы сайта - включение режима keep-alive

Введение

Как работает режим Keep-Alive?

В этом руководстве вы научитесь 4 способам, как включить режим Keep-Alive. Keep-Alive позволяет браузеру пользователя скачивать весь необходимый контент (такой как JavaScript, CSS, изображения, видео и т.д.) через постоянное TCP соединение, вместо создания нескольких запросов для каждого файла. Это обеспечит скорость и производительность, так как браузер вашего посетителя сможет получить все из одного, постоянного HTTP соединения. Простыми словами, Keep-Alive – это форма связи между сервером и браузером способная серьезно уменьшить количество запросов и скорость загрузки страницы. Эта схема позволит вам понять разницу и преимущество режима Keep-Alive:

режим keep alive

Преимущества режима Keep-Alive:

  • Keep-Alive сокращает использование ресурсов сервера из-за меньшего количества сгенерированных HTTP запросов. Это приносит пользу всем пользователям, независимо от их хостинга (бесплатного, виртуального или VPS).
  • Режим Keep-Alive обеспечивает конвейерность (доставку запросов через одно и тоже TCP соединение).
  • HTTPS запросам нужно больше времени и ресурсов центрального процессора. Если вы используете HTTPS и SSL, Keep-Alive станет еще более полезен.
  • Уменьшение задержки, общее увеличение скорости загрузки и производительности.
  • Keep-Alive поддерживается всеми современными браузерами.
  • Режим Keep-Alive также принесет вам пользу в сфере SEO оптимизации, из-за лучшей производительности сайта.

После всего этого, можно с уверенностью сказать, что Keep-Alive это отличный способ для уменьшения использования ресурсов сервера, и в то же время увеличения скорости загрузки вашего сайта.

Что вам понадобится

Перед тем, как вы начнете это руководство, вам понадобится следующее:

  • Доступ к файлу .htaccess
  • Доступ к httpd.conf (необязательно)
  • Доступ к HttpCoreModule (необязательно)

Шаг 1 — Анализ вашего сайта

Во-первых, вы должны проанализировать ваш сайт с помощью таких инструментов как GTMetrix, чтобы определить включен ли режим Keep-Alive на вашем сервере. Вот результаты после анализа тестовой страницы:

gtmetrix scan keep alive

На некоторых серверах или провайдерах услуг хостинга режим Keep-Alive включен по умолчанию. Если ваши результаты выдают 100%, значит вам нет необходимости производить какие-либо действия.

Шаг 2 — Включение режима Keep-Alive

Существует несколько способов включения режима Keep-Alive и их выбор зависит от вашего сервера или провайдера услуг хостинга. Вот несколько вариантов:

Вариант 1 — Редактирование файла .htaccess

Добавление данного кода в ваш файл .htaccess должно помочь включить режим Keep-Alive. Включение режима Keep-Alive через .htaccess заменит собой любые настройки сервера и включит постоянное соединение.

<ifModule mod_headers.c>
Header set Connection keep-alive
</ifModule>

Этот метод должен работать на большинстве виртуальных хостингов на базе Linux. В случае, если вы не знаете где найти файл .htaccess, обратитесь к этому руководству.

Вариант 2 — Включение режима Keep-Alive в Apache через файл httpd.conf

Если у вас есть доступ к файлу настроек Apache, вы можете включить режим оттуда. Вот как должны выглядеть настройки:

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 50

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 10
  • KeepAlive On включает режим Keep-Alive.
  • MaxKeepAliveRequests устанавливает максимальное количество запросов для одного соединения. 50 запросов для одного соединения считается оптимальным.
  • KeepAliveTimeout определяет, как долго сервер будет ожидать запрос от клиента. Рекомендуется начать с меньших значений, таких как 5 или 10 секунд и увеличивать их по мере необходимости. Выставление слишком больших значений может увеличить нагрузку на сервер.

Если вы не можете найти файл httpd.conf, запустите следующую команду в командной строке:

find / -name httpd.conf

Вариант 3 — Включение Keep-Alive в NGINX

В NGINX, Keep-Alive по умолчанию обычно включен. Однако в некоторых случаях он может быть выключен. Вы можете включить его используя HttpCoreModule. Найдите значение keepalive_disable, которое в большинстве случаев является причиной его отключения. Перед внесением каких-либо изменений убедитесь, что узнали причину по которой он был отключен.

Вариант 4 — Сервер Windows (IIS)

Если вы используете сервер на базе Windows, вы можете легко включить режим Keep-Alive используя командную строку.

Данная команда включит режим Keep-Alive:

appcmd set config /section:httpProtocol /allowKeepAlive:true

На случай если вы захотите его отключить используйте эту:

appcmd set config /section:httpProtocol /allowKeepAlive:false

Вы также можете обратиться к официальному руководству от Microsoft на эту тему.

Шаг 3 — Проверка изменений

После того, как режим Keep-Alive полностью включен, запустите еще один анализ в GTMetrix или любом другом сайте по анализу производительности. Вот результаты тестового сайта после включения режима Keep-Alive:

gtmetrix scan keep alive 2

Также можно узнать работает ли Keep-Alive проверив header вашего HTTP. Это может быть сделано через терминал, используя следующую команду:

curl -I http://example.com/example.php

Вот пример:

curl -i http://hostinger.com/index.php

Результаты:

HTTP/1.1 301 Moved Permanently
Connection: keep-alive
Server: nginx
Date: Fri, 23 Dec 2016 18:58:14 GMT
Content-Type: text/html
Content-Length: 178
Location: https://www.hostinger.com/index.php

Часть кода Connection: keep-alive означает, что режим Keep-Alive полностью функционирует.

Заключение

Подводя итог, включение режима Keep-Alive это отличный способ для улучшения скорости и производительности вашего сайта. Постоянное TCP соединение обеспечит быстрое время загрузки и более высокую эффективность, тем самым делая ваших посетителей счастливыми.

Руководства по теме:

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

Нажмите здесь, чтобы оставить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Присоединяйтесь к тысячам других подписчиков по всему миру

и получайте самые свежие руководства на вашу электронную почту

Пожалуйста, подождите...

Спасибо за подписку!

Начните экономить сейчас!

Хостинг и доменное имя от

42
00
грн/мес
[href]
[href]