https://help.superhosting.bg/keep-alive-http-persistent-connection.html
  • bg

Хостинг, Домейни, Cloud, Виртуални сървъри (VPS), Managed VPS, SSL сертификати

Какво е Keep-Alive?

Хостинг терминология
keep-alive, http persistent connection, http keep-alive, connection keep-alive, keep, alive

Keep-Alive (наричана още HTTP persistent connection или HTTP keep-alive) е настройка към уеб сървъра, чрез която може да се зададе типа на връзката между уеб сървър и уеб браузър.

🚀При СуперХостинг.БГ всички хостинг и Managed VPS планове се предлагат с по-новия и по-добър протокол - HTTP/2. Голяма част от хостинг сървърите вече поддържат протокола HTTP/2. В рамките на няколко месеца, всички сървъри на СуперХостинг.БГ ще бъдат с активиран HTTP/2.

info-iconKeep-Alive се поддържа на всички сървъри при СуперХостинг.БГ, за клиентите, които все още използват по-старата версия на протокола HTTP/1.1.

Когато се достъпва даден уеб сайт, уеб браузърът осъществява връзка с уеб сървъра през интернет с помощта на мрежови протоколи (TCP/IP). Всяка TCP мрежова връзка представлява комуникационен канал, по който уеб браузър и уеб сървър си разменят HTTP заявки и HTTP отговори.

Стандартно дадена уеб страница е съвкупност от множество отделни обекти като изображения (.jpg,.png ...), стил (.css), интерактивност (.js ...) документи (.doc, .pdf ...), мултимедия (.flv, .mp3) и други.

Тези обекти са отделни от самия HTML код на уеб страницата и дори не е задължително да се намират на същия сървър. Реално в HTML кода са поставени само указатели и функции, чрез които тези обекти се извикват. След като получи HTML кода на уеб страницата, уеб браузърът разчита указателите и изпраща към уеб сървъра по една HTTP заявка за всеки отделен обект.

Когато не се ползва Keep-Alive, за всяка отделна HTTP заявка ще бъде създаден отделен комуникационен канал (TCP връзка) между уеб сървъра и уеб браузъра. След като уеб сървърът предостави HTTP отговор на HTTP заявката, връзката се прекратява. При следваща заявка от уеб браузъра, уеб сървърът ще отвори нов комуникационен канал. Към времето за зареждане на уеб страницата се прибавя и времето за създаване и прекратяване на всяка TCP връзка. Когато обектите са повече, това значително забавя окончателното зареждане на уеб страницата.

Когато се ползва Keep-Alive, комуникационният канал (TCP връзката) между уеб браузър и уеб сървър не се прекратява след само една HTTP заявка/отговор. Вместо това, връзката остава отворена и по нея се предават множество HTTP заявки/отговори. Връзката се прекратява, когато няма повече заявки от уеб браузъра.

С постоянния комуникационен канал, уеб браузърът може да изиска множество обекти и да ги получи по същият този канал. Това елиминира допълнителното време, за създаването и прекратяването на множество връзки с уеб сървъра и зареждането на уеб страниците е значително по-бързо.

Във версия 1.1 на протокола HTTP, Keep-Alive е описан като метод по подразбиране за връзката между уеб сървър и уеб браузър.

Информация за метода на връзката се подава в заглавната част на HTTP заявката и HTTP отговора.

Примерна HTTP заявка и HTTP отговор:

HTTP заявка от уеб браузъра:
GET / HTTP/1.1
Host: help.superhosting.bg
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: bg,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive

HTTP отговор от уеб сървъра:
HTTP/1.1 200 OK
Date: Mon, 19 Jan 2015 12:14:41 GMT
Server: Apache
Connection: Keep-Alive
Keep-Alive: timeout=5, max=5
Content-Type: text/html; charset=UTF-8

В настройките на уеб сървъра за Keep-Alive могат да се зададат два параметъра:

timeout - след колко време на неактивност по комуникационния канал, да се прекрати връзката; в секунди; ако по канала не се получи нова HTTP заявка, връзката се прекратява;

max - максимален брой заявки, които могат да се подадат по един комуникационен канал.

Прекратяване на връзката може да се задейства или от уеб браузъра или уеб сървъра, като в заглавните части на последната заявка/отговор се подаде Connection: close.

За да проверите дали Keep-Alive е активиран на уеб сървъра, погледнете HTTP заглавните части на негов HTTP отговор.

HTTP заглавните части, изпратени от уеб сървъра, можете да видите или през уеб браузър, с помощта на инструмент за разработчици или през онлайн инструмент като:
http://www.askapache.com/online-tools/http-headers-tool
(в полето Target URL въведете адреса на уеб сайта)
Keep-Alive е активиран, ако в HTTP отговора се съдържа Connection: Keep-Alive.

500px270px
SuperHosting.BG
    Хостинг терминология
  • Какво е HTTP/2?
    HTTP/2 е новата версия на основния протокол за пренос на данни в Уеб - HTTP. HTTP/2 е с повишена производителност, понижено потребление на трафик и нова, оптимизирана организация на комуникацията... »
  • Redis и поддръжка на Redis
    Redis (REmote DIctionary Server) е проект с отворен код и подобно на Memcached, е инструмент за съхранение на данни. Използва се за ускоряване на зареждането на уеб сайтовете, чрез кеширане... »
  • Какво е I/O, IOPS?
    I/O (Input/Output Operations) - входно-изходни операции. В сферата на компютърните технологии, комуникацията между две системи се осъществява чрез входно-изходни операции. Например, при устройствата за съхранение на данни, постъпващите към устройството... »
  • Какво е XML-RPC?
    XML-RPC е протокол за отдалечено изпълнение на операции. XML-RPC позволява две приложения, работещи на различни операционни системи и в различни среди, да комуникират помежду си през Уеб (по HTTP). Информацията, описваща... »
  • HTTP статус код - 301 (Moved Permanently) и 302 (Found)
    301 Moved Permanently и 302 Found са HTTP статус кодове, с които уеб сървърът отговаря на уеб клиентите и ботовете на търсещите машини, при опит да достъпят пренасочен уеб адрес. HTTP... »
Всички права запазени © 2005-2017 , www.superhosting.bg