9 Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ http – HTTP запрос: Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP запроса, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ HTTP запроса, строка HTTP запроса, рСсурсы HTTP запроса, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ запросов

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠŸΡƒΡ‚ΡŒ ΠΊ HTTP/2 / Habr

ΠžΡ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠ°: ΠΏΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP ΠΈ Π΅Π³ΠΎ истории β€” ΠΎΡ‚ вСрсии 0.9 ΠΊ вСрсии 2.

HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΏΡ€ΠΎΠ½ΠΈΠ·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π²Π΅Π±. Π—Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ обязан ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. ПониманиС Ρ€Π°Π±ΠΎΡ‚Ρ‹ HTTP ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ качСствСнныС Π²Π΅Π±-прилоТСния.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ обсудим, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP, ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ стал ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠΌ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Π΅Π³ΠΎ сСгодня.


Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP?

Π˜Ρ‚Π°ΠΊ, рассмотрим для Π½Π°Ρ‡Π°Π»Π°, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ΅ HTTP? HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TCP/IP. HTTP опрСдСляСт, ΠΊΠ°ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ собой ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр, ΠΊΠ°ΠΊ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ ΠΈ пСрСдаётся ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΏΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ. Под ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня я понимаю, Ρ‡Ρ‚ΠΎ это лишь абстракция, ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·ΡƒΡŽΡ‰Π°Ρ, ΠΊΠ°ΠΊ ΡƒΠ·Π»Ρ‹ сСти (ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΈ сСрвСры) Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π‘Π°ΠΌ HTTP зависит ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TCP/IP, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ запросы ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 80 ΠΏΠΎΡ€Ρ‚ TCP, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. HTTPS, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ 443 ΠΏΠΎΡ€Ρ‚.


HTTP/0.9 β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ стандарт (1991)

ΠŸΠ΅Ρ€Π²ΠΎΠΉ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ вСрсиСй HTTP стал HTTP/0.9, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Π² 1991 Π³ΠΎΠ΄Ρƒ. Π­Ρ‚ΠΎ Π±Ρ‹Π» самый простой ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π° свСтС, c ΠΎΠ΄Π½ΠΈΠΌ-СдинствСнным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ β€” GET. Если ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ страницу Π½Π° сСрвСрС, ΠΎΠ½ Π΄Π΅Π»Π°Π» запрос:

GET /index.html

А ΠΎΡ‚ сСрвСра ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ» ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ‚Π²Π΅Ρ‚:

(response body)
(connection closed)

Π’ΠΎΡ‚ ΠΈ всё. Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ запрос, посылаСт HTML Π² ΠΎΡ‚Π²Π΅Ρ‚, ΠΈ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вСсь ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½, Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ соСдинСниС. Π’ HTTP/0.9 Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², СдинствСнный ΠΌΠ΅Ρ‚ΠΎΠ΄ β€” GET, Π° ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² HTML.

Π˜Ρ‚Π°ΠΊ, HTTP/0.9 стал ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ шагом Π²ΠΎ всСй дальнСйшСй истории.


HTTP/1.0 β€” 1996

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ HTTP/0.9, спроСктированного Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для HTML-ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ², HTTP/1.0 справляСтся ΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ: изобраТСния, Π²ΠΈΠ΄Π΅ΠΎ, тСкст ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°. Π’ Π½Π΅Π³ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ POST ΠΈ HEAD). ИзмСнился Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ запросов/ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ². К запросам ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌ добавились HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΊΠΎΠ΄Ρ‹ состояний, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ сСрвСра. Π’Π²Π΅Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ составныС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… (multi-part types), авторизация, ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΈ Π΅Ρ‰Ρ‘ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Π’ΠΎΡ‚ Ρ‚Π°ΠΊ выглядСли простыС запрос ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTP/1.0:

GET / HTTP/1.0
Host: kamranahmed.info
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5)
Accept: */*

Помимо запроса ΠΊΠ»ΠΈΠ΅Π½Ρ‚ посылал ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈ Ρ‚.Π΄. Π’ HTTP/0.9 ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π΅ послал Π±Ρ‹ Ρ‚Π°ΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² попросту Π½Π΅ сущСствовало.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ запрос:

HTTP/1.0 200 OK 
Content-Type: text/plain
Content-Length: 137582
Expires: Thu, 05 Dec 1997 16:00:00 GMT
Last-Modified: Wed, 5 August 1996 15:55:28 GMT
Server: Apache 0.84

(response body)
(connection closed)

Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° стоит HTTP/1.0 (HTTP ΠΈ Π½ΠΎΠΌΠ΅Ρ€ вСрсии), Π·Π°Ρ‚Π΅ΠΌ ΠΊΠΎΠ΄ состояния β€” 200, Π·Π°Ρ‚Π΅ΠΌ β€” описаниС ΠΊΠΎΠ΄Π° состояния.

Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ запросов ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π±Ρ‹Π»ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² ASCII (HTTP/0.9 вСсь Π±Ρ‹Π» Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ Π² ASCII), Π° Π²ΠΎΡ‚ Ρ‚Π΅Π»ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹Ρ‚ΡŒ любого ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° β€” ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π²ΠΈΠ΄Π΅ΠΎ, HTML, ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ тСкстом ΠΈ Ρ‚. ΠΏ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ сСрвСр ΠΌΠΎΠ³ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ любой Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, поэтому словосочСтаниС Β«Hyper TextΒ» Π² Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅ HTTP стало искаТСниСм. HMTP, ΠΈΠ»ΠΈ Hypermedia Transfer Protocol, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, стало Π±Ρ‹ Π±ΠΎΠ»Π΅Π΅ умСстным Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ, Π½ΠΎ всС ΠΊ Ρ‚ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΊ HTTP.

Один ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… нСдостатков HTTP/1.0 β€” Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ нСсколько запросов Π²ΠΎ врСмя ΠΎΠ΄Π½ΠΎΠ³ΠΎ соСдинСния. Если ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π½Π°Π΄ΠΎ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚ сСрвСра, Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ TCP-соСдинСниС, ΠΈ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ запрос Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, это соСдинСниС закроСтся. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ запроса Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ соСдинСниС.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ это ΠΏΠ»ΠΎΡ…ΠΎ? Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ страницу, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ 10 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, 5 Ρ„Π°ΠΉΠ»ΠΎΠ² стилСй ΠΈ 5 JavaScript Ρ„Π°ΠΉΠ»ΠΎΠ². Π’ ΠΎΠ±Ρ‰Π΅ΠΉ слоТности ΠΏΡ€ΠΈ запросС ΠΊ этой страницС Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ 20 рСсурсов β€” Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ сСрвСру придётся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ 20 ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… соСдинСний. Π’Π°ΠΊΠΎΠ΅ число соСдинСний Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сказываСтся Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π½ΠΎΠ²ΠΎΠ΅ TCP-соСдинСниС Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Β«Ρ‚Ρ€ΠΎΠΉΠ½ΠΎΠ³ΠΎ рукопоТатия», Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ старт.


Π’Ρ€ΠΎΠΉΠ½ΠΎΠ΅ Ρ€ΡƒΠΊΠΎΠΏΠΎΠΆΠ°Ρ‚ΠΈΠ΅

Β«Π’Ρ€ΠΎΠΉΠ½ΠΎΠ΅ Ρ€ΡƒΠΊΠΎΠΏΠΎΠΆΠ°Ρ‚ΠΈΠ΅Β» β€” это ΠΎΠ±ΠΌΠ΅Π½ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ TCP-соСдинСниС для Π½Π°Ρ‡Π°Π»Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….


  • SYN β€” ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ случайноС число, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, x, ΠΈ отправляСт Π΅Π³ΠΎ Π½Π° сСрвСр.
  • SYN ACK β€” Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚ этот запрос, посылая ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ ACK, состоящий ΠΈΠ· случайного числа, Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ сСрвСром (допустим, y), ΠΈ числа x + 1, Π³Π΄Π΅ x β€” число, ΠΏΡ€ΠΈΡˆΠ΅Π΄ΡˆΠ΅Π΅ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.
  • ACK β€” ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ число y, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΎΡ‚ сСрвСра ΠΈ посылаСт y + 1 Π½Π° сСрвСр.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠ°: SYN β€” синхронизация Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, (Π°Π½Π³Π». Synchronize sequence numbers). ACK β€” ΠΏΠΎΠ»Π΅ «НомСр подтвСрТдСния» задСйствовано (Π°Π½Π³Π». Acknowledgement field is significant).

Волько послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Ρ€ΠΎΠΉΠ½ΠΎΠ³ΠΎ рукопоТатия начинаСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром. Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ сразу ΠΆΠ΅ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ послСднСго ACK-ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ сСрвСр всё Ρ€Π°Π²Π½ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ACK-ΠΏΠ°ΠΊΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ запрос.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ HTTP/1.0 ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Ρ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π½ΠΎΠ²Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Connection: keep-alive, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» Π±Ρ‹ сСрвСру Β«Π­ΠΉ, Π΄Ρ€ΡƒΠΆΠΈΡ‰Π΅, Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΠΉ это соСдинСниС, ΠΎΠ½ΠΎ Π½Π°ΠΌ Π΅Ρ‰Ρ‘ пригодится». Однако эта Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ Π±Ρ‹Π»Π° ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСна, поэтому ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΡΡ‚Π°Π²Π°Π»Π°ΡΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°.

Помимо Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π±Π΅Π· установлСния соСдинСния, Π² Π½Ρ‘ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ прСдусмотрСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° состояний. Π˜Π½Ρ‹ΠΌΠΈ словами, сСрвСр Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, поэтому ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ запросу приходится Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ сСрвСру ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π±Π΅Π· ΡƒΡ‡Ρ‘Ρ‚Π° ΠΏΡ€ΠΎΡˆΠ»Ρ‹Ρ… запросов. И это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π»ΠΈΠ²Π°Π΅Ρ‚ масла Π² огонь: ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ³ΠΎ числа соСдинСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ посылаСт ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅, излишнС пСрСгруТая ΡΠ΅Ρ‚ΡŒ.


HTTP/1.1 – 1999

ΠŸΡ€ΠΎΡˆΠ»ΠΎ 3 Π³ΠΎΠ΄Π° со Π²Ρ€Π΅ΠΌΡ‘Π½ HTTP/1.0, ΠΈ Π² 1999 Π²Ρ‹ΡˆΠ»Π° новая вСрсия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° β€” HTTP/1.1, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ мноТСство ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ:


  • НовыС HTTP-ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ β€” PUT, PATCH, HEAD, OPTIONS, DELETE.
  • Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ хостов. Π’ HTTP/1.0 Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Host Π½Π΅ Π±Ρ‹Π» ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Π° HTTP/1.1 сдСлал Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ.
  • ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Ρ‹Π΅ соСдинСния. Как Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, Π² HTTP/1.0 ΠΎΠ΄Π½ΠΎ соСдинСниС ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΎ лишь ΠΎΠ΄ΠΈΠ½ запрос ΠΈ послС этого сразу Π·Π°ΠΊΡ€Ρ‹Π²Π°Π»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π»ΠΎ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ. Π’ HTTP/1.1 появились постоянныС соСдинСния, Ρ‚.Π΅. соСдинСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π»ΠΈΡΡŒ, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… запросов. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ соСдинСниС, Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈ запросС Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Connection: close. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ посылали этот Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π² послСднСм запросС ΠΊ сСрвСру, Ρ‡Ρ‚ΠΎΠ±Ρ‹ бСзопасно Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ соСдинСниС.
  • ΠŸΠΎΡ‚ΠΎΠΊΠΎΠ²Π°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… соСдинСния ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ мноТСствСнныС запросы ΠΊ сСрвСру, Π½Π΅ оТидая ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ², Π° сСрвСр посылаСт ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ запросы. Но, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΆΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΡƒΠ·Π½Π°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° закончится ΠΎΠ΄ΠΈΠ½ ΠΎΡ‚Π²Π΅Ρ‚ ΠΈ начнётся Π΄Ρ€ΡƒΠ³ΠΎΠΉ? Для Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ устанавливаСтся Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Content-Length, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ опрСдСляСт, Π³Π΄Π΅ заканчиваСтся ΠΎΠ΄ΠΈΠ½ ΠΎΡ‚Π²Π΅Ρ‚ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ.

Π—Π°ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‰ΡƒΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ постоянных соСдинСний ΠΈΠ»ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Content-Length Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ доступСн Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ запрос (Π² случаС ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… запросов) ΠΈΠ»ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° (Π² случаС ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ).

Но Π² Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π§Ρ‚ΠΎ, Ссли Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½Ρ‹, ΠΈ сСрвСр Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°? ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Π² этом случаС ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ постоянными соСдинСниями? Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ, HTTP/1.1 Π²Π²Ρ‘Π» сhunked encoding β€” ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ разбиСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° нСбольшиС части (chunks) ΠΈ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ.


  • Chunked Transfers Ссли ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ строится динамичСски ΠΈ сСрвСр Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Content-Length, ΠΎΠ½ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΡ‚ΡΡ‹Π»Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ частями, Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ, ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Content-Length ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ части. Когда всС части ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹, посылаСтся пустой ΠΏΠ°ΠΊΠ΅Ρ‚ с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ Content-Length, установлСнным Π² 0, сигнализируя ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ ΠΏΠΎ частям, сСрвСр добавляСт Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ
    Transfer-Encoding: chunked
    .
  • Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² HTTP/1.0, Π² HTTP/1.1 добавились дайдТСст-аутСнтификация ΠΈ прокси-аутСнтификация.
  • ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.
  • Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ Π±Π°ΠΉΡ‚ (byte ranges).
  • ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ
  • БогласованиС содСрТимого (content negotiation).
  • ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠ΅ ΠΊΡƒΠΊΠΈ.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сТатия.
  • И другиС…

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ HTTP/1.1 β€” ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π΅ΠΌΠ° для Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π°, ΠΈ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Π½Π΅ Π±ΡƒΠ΄Ρƒ Π·Π°Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΉ Π½Π°Π΄ΠΎΠ»Π³ΠΎ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΏΠΎ этой Ρ‚Π΅ΠΌΠ΅. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΊ ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΡŽ Key differences between HTTP/1.0 and HTTP/1.1 ΠΈ, для супСргСроСв, ссылку Π½Π° RFC.

HTTP/1.1 появился Π² 1999 ΠΈ ΠΏΡ€ΠΎΠ±Ρ‹Π» стандартом Π΄ΠΎΠ»Π³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹. И, хотя ΠΎΠ½ ΠΈ Π±Ρ‹Π» Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ своСго ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠ°, со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π½Π°Ρ‡Π°Π» ΡƒΡΡ‚Π°Ρ€Π΅Π²Π°Ρ‚ΡŒ. Π’Π΅Π± постоянно растёт ΠΈ мСняСтся, ΠΈ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π΄Π½Ρ‘ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²Π΅Π±-страниц Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ всё Π±ΠΎΠ»ΡŒΡˆΠΈΡ… рСсурсов. БСгодня стандартной Π²Π΅Π±-страницС приходится ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 30 соСдинСний. Π’Ρ‹ скаТСтС: «Но… Π²Π΅Π΄ΡŒβ€¦ Π² HTTP/1.1 ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ постоянныС соСдинСния…». Однако, Π΄Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ HTTP/1.1 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ лишь ΠΎΠ΄Π½ΠΎ внСшнСС соСдинСниС Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. HTTP/1.1 пытался ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ это ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ΄Π½Π°ΠΊΠΎ это Π½Π΅ Ρ€Π΅ΡˆΠ°Π»ΠΎ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ. Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π»Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π°Ρ‡Π°Π»Π° ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (

head-of-line blocking) β€” ΠΊΠΎΠ³Π΄Π° ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ большой запрос Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π» всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ (вСдь ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ Π² порядкС ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Ρ‚ΡŒ эти нСдостатки HTTP/1.1, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Π»ΠΈ ΠΎΠ±Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΡƒΡ‚ΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Ρ‚ΠΎΠΌΡƒ слуТат спрайты, Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² CSS изобраТСния, конкатСнация CSS ΠΈ JS Ρ„Π°ΠΉΠ»ΠΎΠ², Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ ΡˆΠ°Ρ€Π΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.


SPDY β€” 2009

Google ΠΏΠΎΡˆΡ‘Π» дальшС ΠΈ стал ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ, поставив Ρ†Π΅Π»ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π΅Π± быстрСС ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности Π·Π° счёт ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ Π²Π΅Π±-страниц. Π’ 2009 Π³ΠΎΠ΄Ρƒ ΠΎΠ½ΠΈ прСдставили ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» SPDY.

Казалось, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ сСти, увСличится Π΅Ρ‘ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Однако Π²Ρ‹ΡΡΠ½ΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° рост пропускной способности пСрСстаёт Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒ врСмя ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°, прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ постоянным. Π’ этом ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π»Π°ΡΡŒ основная идСя SPDY.


Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ, Π² Ρ‡Ρ‘ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°: врСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ β€” Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π·Π°ΠΉΠΌΡ‘Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ отправитСля ΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ (Π² миллисСкундах), Π° пропускная ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ β€” количСство Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π² сСкунду (Π±ΠΈΡ‚ Π² сСкунду).

SPDY Π²ΠΊΠ»ΡŽΡ‡Π°Π» Π² сСбя ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, сТатиС, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚.д… Π― Π½Π΅ Ρ…ΠΎΡ‡Ρƒ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ Π² рассказ ΠΏΡ€ΠΎ SPDY, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ свойства HTTP/2, Π° HTTP/2 ΠΌΠ½ΠΎΠ³ΠΎΠ΅ пСрСнял ΠΎΡ‚ SPDY.

SPDY Π½Π΅ старался Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ собой HTTP. Он Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Π½Π°Π΄ HTTP, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Π²ΡˆΠΈΠΌ Π½Π° ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, ΠΈ измСнял запрос ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΠΏΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°ΠΌ. Он Π½Π°Ρ‡Π°Π» ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ стандартом Π΄Π΅Ρ„Π°ΠΊΡ‚ΠΎ, ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² стали Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ.

Π’ 2015 Π² Google Ρ€Π΅ΡˆΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π΄Π²ΡƒΡ… ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… стандартов, ΠΈ объСдинили SPDY с HTTP, Π΄Π°Π² Π½Π°Ρ‡Π°Π»ΠΎ HTTP/2.


HTTP/2 β€” 2015

Π”ΡƒΠΌΠ°ΡŽ, Π²Ρ‹ ΡƒΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΠ»ΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½Π° новая вСрсия HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. HTTP/2 разрабатывался для транспортировки ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° с Π½ΠΈΠ·ΠΊΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Π“Π»Π°Π²Π½Ρ‹Π΅ отличия ΠΎΡ‚ HTTP/1.1:


  • Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ вмСсто тСкстового
  • ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… асинхронных HTTP-запросов ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ TCP-соСдинСнию
  • сТатиС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ HPACK
  • Server Push β€” нСсколько ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π½Π° ΠΎΠ΄ΠΈΠ½ запрос
  • приоритизация запросов
  • Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ


1. Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

HTTP/2 пытаСтся Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π²Ρ‹Ρ€ΠΎΡΡˆΠ΅ΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Π²ΡˆΡƒΡŽ Π² HTTP/1.x, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ сообщСния быстрСС Ρ€Π°Π·Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ автоматичСски, Π½ΠΎ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ HTTP/1.x, Π½Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ для чтСния Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ HTTP/2 β€” Ρ„Ρ€Π΅ΠΉΠΌΡ‹ (Frames) ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ (Streams).


Π€Ρ€Π΅ΠΉΠΌΡ‹ ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ.

БСйчас HTTP-сообщСния состоят ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ². Для ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Ρ€Π΅ΠΉΠΌ HEADERS, для основных Π΄Π°Π½Π½Ρ‹Ρ… β€” Ρ„Ρ€Π΅ΠΉΠΌ DATA, ΠΈ Π΅Ρ‰Ρ‘ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² (RST_STREAM, SETTINGS, PRIORITY ΠΈ Ρ‚.Π΄.), с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π² спСцификации HTTP/2.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ запрос ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ HTTP/2 ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΈ раздСляСтся Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΡ‹. Π€Ρ€Π΅ΠΉΠΌΡ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой просто Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ части Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² называСтся ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ (Stream). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌ содСрТит ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ°, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ, ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ ΠΎΠ½ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌ содСрТит ΠΎΠ±Ρ‰ΠΈΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ. Π’Π°ΠΊΠΆΠ΅, ΠΏΠΎΠΌΠΈΠΌΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½, стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ клиСнтский запрос ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π½Π΅Ρ‡Ρ‘Ρ‚Π½Ρ‹Π΅ id, Π° ΠΎΡ‚Π²Π΅Ρ‚ ΠΎΡ‚ сСрвСра β€” Ρ‡Ρ‘Ρ‚Π½Ρ‹Π΅.

Помимо HEADERS ΠΈ DATA, стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΈ RST_STREAM β€” ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉΡΡ для прСрывания ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ². ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ этот Ρ„Ρ€Π΅ΠΉΠΌ сСрвСру, сигнализируя, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π΅ΠΌΡƒ большС Π½Π΅ Π½ΡƒΠΆΠ΅Π½. Π’ HTTP/1.1 СдинствСнным способом Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСрвСр ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π±Ρ‹Π»ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ соСдинСния, Ρ‡Ρ‚ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π»ΠΎ врСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, вСдь Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ соСдинСниС для Π»ΡŽΠ±Ρ‹Ρ… Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… запросов. А Π² HTTP/2 ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ RST_STREAM ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ. ΠŸΡ€ΠΈ этом соСдинСниС останСтся ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ.


2. ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ HTTP/2 являСтся Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ для запросов ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Ρ„Ρ€Π΅ΠΉΠΌΡ‹ ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ упомянуто Π²Ρ‹ΡˆΠ΅, всС ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΏΠΎΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π² Π΅Π΄ΠΈΠ½ΠΎΠΌ TCP-соСдинСнии, Π±Π΅Π· создания Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ…. Π‘Π΅Ρ€Π²Π΅Ρ€, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ асинхронным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ порядка, ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚. Π­Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π°Ρ‡Π°Π»Π° ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (head-of-line blocking) β€” ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π½Π΅ придётся ΠΏΡ€ΠΎΡΡ‚Π°ΠΈΠ²Π°Ρ‚ΡŒ, оТидая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ запроса, вСдь Π²ΠΎ врСмя оТидания ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ запросы.


3. Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ HPACK

Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ RFC, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π½Π°Ρ†Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡŽ отправляСмых Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π’ основС Π»Π΅ΠΆΠ°Π»ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ постоянного обращаСмся ΠΊ сСрвСру ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Ρ‚ΠΎ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ… Ρ€Π°Π· Π·Π° Ρ€Π°Π·ΠΎΠΌ посылаСтся ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ Π΄Π°Π½Π½Ρ‹Ρ…. А ΠΈΠ½ΠΎΠ³Π΄Π° ΠΊ этому Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΅Ρ‰Ρ‘ ΠΈ ΠΊΡƒΠΊΠΈ, Ρ€Π°Π·Π΄ΡƒΠ²Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Ρ‡Ρ‚ΠΎ сниТаСт ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ сСти ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ врСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π² HTTP/2 появилось сТатиС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ².

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ запросов ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ², Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π½Π΅ ΡΠΆΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π² gzip ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹. Для сТатия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΈΠ½ΠΎΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ β€” Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅ значСния ΡΠΆΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ Π₯Π°Ρ„Ρ„ΠΌΠ°Π½Π°, Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π΅Π΄ΠΈΠ½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, user agent) ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… запросах ΠΈ ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΈΡ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ².

Π Π°Π· ΡƒΠΆ зашла Ρ€Π΅Ρ‡ΡŒ ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ…, ΠΏΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ HTTP/1.1, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ добавилось нСсколько псСвдозаголовков, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ :method, :scheme, :host, :path ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅.


4. Server Push

Server push β€” Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ HTTP/2. Π‘Π΅Ρ€Π²Π΅Ρ€, зная, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ собираСтся Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ рСсурс, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Π½Π΅ доТидаясь запроса. Π’ΠΎΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° это Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ: Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π²Π΅Π±-страницу, ΠΎΠ½ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚ Π΅Ρ‘ ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚, ΠΊΠ°ΠΊΠΎΠΉ Π΅Ρ‰Ρ‘ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ с сСрвСра, Π° Π·Π°Ρ‚Π΅ΠΌ отправляСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ запросы.

Server push позволяСт сСрвСру ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ количСство Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… запросов. Если ΠΎΠ½ Π·Π½Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ собираСтся Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΠ½ сразу ΠΈΡ… посылаСт. Π‘Π΅Ρ€Π²Π΅Ρ€ отправляСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌ PUSH_PROMISE, говоря ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ: Β«Π­ΠΉ, Π΄Ρ€ΡƒΠΆΠΈΡ‰Π΅, сСйчас я Ρ‚Π΅Π±Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡŽ Π²ΠΎΡ‚ этот рСсурс. И Π½Π΅ Π½Π°Π΄ΠΎ лишний Ρ€Π°Π· Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒ.Β» Π€Ρ€Π΅ΠΉΠΌ PUSH_PROMISE связан с ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·Π²Π°Π» ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ push-Π°, ΠΈ содСрТит ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ сСрвСр ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ Π½ΡƒΠΆΠ½Ρ‹ΠΉ рСсурс.


5. ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ запросов

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΡƒ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅ Π²ΠΎ Ρ„Ρ€Π΅ΠΉΠΌ HEADERS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ открываСтся ΠΏΠΎΡ‚ΠΎΠΊ. Π’ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ врСмя ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌ PRIORITY, ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ°.

Если Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎ, сСрвСр ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ запрос асинхронно, Ρ‚.Π΅. Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ порядка. Если ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½, Ρ‚ΠΎ, Π½Π° основС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°Ρ…, сСрвСр ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, сколько рСсурсов выдСляСтся для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°.


6. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

Насчёт Ρ‚ΠΎΠ³ΠΎ, Π΄ΠΎΠ»ΠΆΠ½Π° Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ (ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TLS) Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ для HTTP/2 ΠΈΠ»ΠΈ Π½Π΅Ρ‚, Ρ€Π°Π·Π²ΠΈΠ»Π°ΡΡŒ ΠΎΠ±ΡˆΠΈΡ€Π½Π°Ρ дискуссия. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ² Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Однако Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² заявило, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ HTTP/2 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ²Π΅Ρ€Ρ… TLS. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, хотя спСцификация Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ для HTTP/2, ΠΎΠ½ΠΎ всё Ρ€Π°Π²Π½ΠΎ станСт ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠŸΡ€ΠΈ этом HTTP/2, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ… TLS, Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ограничСния: Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ TLS вСрсии 1.2 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅, Π΅ΡΡ‚ΡŒ ограничСния Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ эфСмСрныС ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.


Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

HTTP/2 ΡƒΠΆΠ΅ здСсь, ΠΈ ΡƒΠΆΠ΅ ΠΎΠ±ΠΎΡˆΡ‘Π» SPDY Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅, которая постСпСнно растёт. Для всСх, ΠΊΠΎΠΌΡƒ интСрСсно ΡƒΠ·Π½Π°Ρ‚ΡŒ большС, Π²ΠΎΡ‚ ссылка Π½Π° ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ ссылка Π½Π° Π΄Π΅ΠΌΠΎ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ прСимущСства скорости HTTP/2.

HTTP/2 ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ для увСличСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΈ, ΠΏΠΎΡ…ΠΎΠΆΠ΅, самоС врСмя Π½Π°Ρ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.



ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π»: Journey to HTTP/2, Π°Π²Ρ‚ΠΎΡ€ Kamran Ahmed.

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄: АндрСй АлСксССв, Ρ€Π΅Π΄Π°ΠΊΡ‚ΡƒΡ€Π°: Анатолий Π’ΡƒΡ‚ΠΎΠ², Jabher, Π˜Π³ΠΎΡ€ΡŒ ΠŸΠ΅Π»Π΅Ρ…Π°Π½ΡŒ, ΠΠ°Ρ‚Π°Π»ΡŒΡ Ёркина, Π’ΠΈΠΌΠΎΡ„Π΅ΠΉ ΠœΠ°Ρ€ΠΈΠ½ΠΈΠ½, Π§Π°ΠΉΠΊΠ° Чурсина, Π―Π½Π° ΠšΡ€ΠΈΠΊΠ»ΠΈΠ²Π°Ρ.

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP?

HTTP (HyperText Transfer Protocol) β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ гипСртСкста. Π•Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π² 1992 Π³ΠΎΠ΄Ρƒ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ гипСртСкстовых HTML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½ΠΎ сСгодня Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с самыми Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. ГипСртСкст β€” это тСкст с гипСрссылками: Π½Π°ΠΆΠ°Π² Π½Π° Π½ΠΈΡ…, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ страницы ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ рСсурсы.

Для пСрСсылки Π΄Π°Π½Π½Ρ‹Ρ… HTTP ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» TCP. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» выступаСт основой ΠΈ транспорта для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, SOAP, XML-RPC, WebDAV.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ HTTP

HTTP Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° основС ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹. ΠšΠ»ΠΈΠ΅Π½Ρ‚ β€” это ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ установку соСдинСния ΠΈ отправляСт запрос сСрвСру. Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ соСдинСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ запрос. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· запроса ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎΠΌ сообщСнии. Π’ ΠΎΡ‚Π²Π΅Ρ‚Π΅ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ структуру, скрипты, Ρ„ΠΎΡ‚ΠΎ, Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅. ΠœΠ΅ΠΆΠ΄Ρƒ запросом ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° посрСдников (прокси ΠΈ Π΄Ρ€.).

Запросы ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€. Но Ρ‚Π°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π²ΠΎΠ·Π»Π°Π³Π°ΡŽΡ‚ Π½Π° Π±ΠΎΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΊΠ°Π½ΠΈΡ€ΡƒΡŽΡ‚ страницы Π²Π΅Π±-рСсурсов для обновлСния Π΄Π°Π½Π½Ρ‹Ρ…. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΎΠ±Ρ…ΠΎΠ΄ΠΎΠΌ страниц Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ поисковыС Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹ для индСксации для поисковых систСм.

Π’ клиСнтском запросС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ содСрТится URI (Uniform Resource Identifier). Он ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ рСсурс: Ρ„Π°ΠΉΠ» Π½Π° сСрвСрС, логичСский ΠΈΠ»ΠΈ абстрактный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π² запросС, Π° сСрвСр β€” Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅ прСдставлСниС рСсурса ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ: языку, ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP-запросов.

Π‘Π°ΠΌΠΎΠ΅ Π²Π°ΠΆΠ½ΠΎΠ΅ здСсь β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ прСдставлСниС. Благодаря этому, собствСнно, HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ гипСртСкст, Π½ΠΎ ΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅.

HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π΅ сохраняСт своСго состояния ΠΌΠ΅ΠΆΠ΄Ρƒ запросом ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для сохранСния Π΄Π°Π½Π½Ρ‹Ρ… приходится Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ инструмСнты β€” сСссии Π½Π° сСрвСрС ΠΈ cookies Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP-запросов ΠΈ IP-адрСса ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². Но ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» сам ΠΏΠΎ сСбС Π½Π΅ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠ΅ запросы ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΠ»ΠΈΡΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡŒ Ρ€Π°Π½Π΅Π΅.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ HTTP нСбСзопасСн

HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…. Он ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ создавался для быстрой доставки Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ сСрвСра ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ, Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Ρ„ΠΎΠΊΡƒΡΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ Π½Π° Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΡ‚ΡŒ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ΠΈ измСнСния Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅ΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

ИмСнно поэтому Π½Π° смСну HTTP ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ HTTPS (HTTP + security, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ). Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ….

HTTPS Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° транспортном ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ HTTP β€” Π½Π° ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, транспортный ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выполняСтся ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ соСдинСниями, Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

Π—Π°Ρ‰ΠΈΡ‚Π° особСнно Π²Π°ΠΆΠ½Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ β€” ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΡ€Π΅Π΄ΠΈΡ‚Π½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚ ΠΈ Ρ‚.ΠΏ. Π­Ρ‚ΠΎ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ услоТняСт для Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ² использованиС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ β€” Π΄Π°ΠΆΠ΅ Ссли Π΄Π°Π½Π½Ρ‹Π΅ пСрСхватят, ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ нСпросто Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» позволяСт ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΏΡƒΡ‚ΠΈ ΠΎΡ‚ сСрвСра ΠΊ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ совсСм Π½Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ. Или ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ врСдонос вмСсто Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ.

Π’Π°ΠΊΠΆΠ΅ HTTPS Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π°. Π₯Π°ΠΊΠ΅Ρ€Ρ‹ Π½Π΅ смогут ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠΌΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· запросов.

ΠšΡ€ΡƒΠΏΠ½Ρ‹Π΅ сСрвисы Π²Ρ€ΠΎΠ΄Π΅ Google ΠΈ Facebook ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΡˆΠ»ΠΈ Π½Π° HTTPS. БСгодня всё большС сайтов ΠΌΠΈΠ³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π½Π° HTTPS, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² постСпСнно ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с HTTP.

Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° HTTPS трСбуСтся ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ SSL-сСртификат. Π­Ρ‚ΠΎ платная услуга, ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρ‹ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… сайтов ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ Π½Π΅Ρ‘ (Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΈ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° HTTPS), Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ставят Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎΠ΄ ΡƒΠ³Ρ€ΠΎΠ·Ρƒ.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. ВСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΈ ΠΈΡ… особСнности

ЗдравствуйтС, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ посСтитСли сайта ZametkiNaPolyah.ru. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ HTTP Π² Ρ€ΡƒΠ±Ρ€ΠΈΠΊΠ΅ Π‘Π΅Ρ€Π²Π΅Ρ€Ρ‹ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΈ Π΅Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». Π’ Π΄Π°Π½Π½ΠΎΠΉ записи ΠΌΡ‹ познакомимся со стандартами HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, Π³Π΄Π΅ ΠΈΡ… ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π°Π΄ΡƒΡ‚ Π½Π°ΠΌ эти стандарты, рассматривая стандарты HTTP, ΠΌΡ‹ нСвольно Π·Π°Ρ‚Ρ€ΠΎΠ½Π΅ΠΌ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ развития ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP, Π° Π·Π°ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ измСнСния вводились ΠΎΡ‚ вСрсии ΠΊ вСрсии HTTP.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Π˜ΡΡ‚ΠΎΡ€ΠΈΡ развития HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. ВСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Π˜ΡΡ‚ΠΎΡ€ΠΈΡ развития HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. ВСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

Рассмотрим ΠΊΠ°ΠΊΠΈΠ΅ Π΅ΡΡ‚ΡŒ стандарты HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, посмотрСв стандарты HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΌΡ‹ Π·Π°ΠΎΠ΄Π½ΠΎ познакомимся с историСй развития HTTP. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ HTTP – это основной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, исходя ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ свои прилоТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ HTTP, вСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ стандарта HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°:

  1. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ HTTP/0.9 – вСрсия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 0.9 Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π² 1991 Π³ΠΎΠ΄Ρƒ Π² ЦЕРН Π’ΠΈΠΌΠΎΠΌ БСрнСрсом-Π›ΠΈ. Π’ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» для облСгчСния доступа ΠΈ создания Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ гипСртСкста. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» вСрсии 0.9 Π±Ρ‹Π» ΠΏΡ€ΠΈΠ·Π²Π°Π½ ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΡ‚ΡŒ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром Π² сСти. ПослС появлСния стандарта HTTP/0.9 появилось Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром ΠΏΡ€ΠΈ ΠΈΡ… взаимодСйствии. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ HTTP/0.9 содСрТит Π² сСбС основы синтаксиса ΠΈ сСмантики ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP.
  2. Π’ 1996 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π» Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ RFC 1945 (стандарт HTTP/1.0). Π”Π°Π½Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ стал основой для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² с использованиСм ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP вСрсии 1.0. ΠšΡΡ‚Π°Ρ‚ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои прилоТСния ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ HTTP сообщСний.
  3. Π’ 1997 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° вСрсия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP1: Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ стандарт HTTP/1.1 ΠΈ описан ΠΎΠ½ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ RFC 2068. Π’ 1999 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π» Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½ стандарт HTTP/1.1 (ΠΈΠΌΠ΅Π½Π½ΠΎ стандарт HTTP/1.1). Π”ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΡΠ½ΡƒΠ»ΠΈΡΡŒ: ΠΎΠ±Ρ‰Π΅Π³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π° стандарта, Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ Ρ€Π°Π·ΡŠΡΡΠ½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ², исправлСны ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ, Π΄Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·ΡŠΡΡΠ½Π΅Π½ΠΈΡ ΠΏΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ HTTP сСрвСра Π² спорных ситуациях. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π² Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 1.1 Π±Ρ‹Π» Ρ€Π΅ΠΆΠΈΠΌ постоянного соСдинСния (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ постоянныС HTTP соСдинСния), Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами: Π·Π° ΠΎΠ΄Π½ΠΎ соСдинСниС ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ нСсколько HTTP запросов ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ нСсколько HTTP ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ дСлались запросы. Π’Ρ‚ΠΎΡ€Ρ‹ΠΌ основным Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 1.1 являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΡ€ΠΈ установкС соСдинСния с сСрвСром Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ имя хоста Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΠ»Π΅ HTTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (Π΄Π°Π½Π½ΠΎΠ΅ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ массовому Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… хостингов). На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» вСрсии 1.1. Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ вСрсия HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° являСтся ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹ΠΌ HTTP ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС прилоТСния. Π’Π°ΠΊ ΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ нСзависимо ΠΎΡ‚ Π½ΠΎΠΌΠ΅Ρ€Π° стандарта HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅Ρ‚ трСбования ΠΊ прилоТСниям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚.
  4. 2015 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π»Π° ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ вСрсия Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 2, это Π΅Ρ‰Π΅ Π½Π΅ стандарт, Π½ΠΎ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ Π½Π°ΠΌ Β«ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Β» ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°. ВСрсия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 2 являСтся Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ. Π’ вСрсии ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP 2 Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (объСдинСниС) запросов, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ появится объСдинСниС, появится ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ запросов ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅, Π΄ΡƒΠΌΠ°ΡŽ, Π² Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΏΠΎ HTTP ΠΌΡ‹ познакомимся со всСми нововвСдСниями HTTP.

Π₯ΠΎΡ‡Ρƒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ вашС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ всС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ RFC, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я пСрСчислил ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ ΠΈ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ c вСрсиями ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π° языкС ШСкспира. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π½Π°ΠΉΡ‚ΠΈ стандарт HTTP Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. Π”ΠΎΠ±Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» относится ΠΊ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌΡƒ ΡƒΡ€ΠΎΠ²Π½ΡŽ всСм извСстной ΠΌΠΎΠ΄Π΅Π»ΠΈ сСтСвого взаимодСйствия OSI.

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ Π² коммСнтариях ΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π»ΡƒΡ‡ΡˆΠ΅, с ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ZametkiNaPolyah.ru!

HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» уровня ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ / Habr

Данная ΡΡ‚Π°Ρ‚ΡŒΡ являСтся ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° статСй ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ HTTP с сайта opera.com.
ΠŸΠ΅Ρ€Π΅ΡΠΎΠ·Π΄Π°Π» Π΅Ρ‘, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚ΠΈΠΏ ΡΡ‚Π°Ρ‚ΡŒΠΈ стал ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠΌ.
Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ Π‘ΡƒΡ‚Π°Π½Π΅, ΠΊΠΎΠ³Π΄Π° люди знакомятся, ΠΎΠ½ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° словами Β«Π’Π²ΠΎΡ‘ Ρ‚Π΅Π»ΠΎ чувствуСт сСбя Ρ…ΠΎΡ€ΠΎΡˆΠΎ?Β». Π’ Π―ΠΏΠΎΠ½ΠΈΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠ»Π°Π½ΡΡ‚ΡŒΡΡ, Π² зависимости ΠΎΡ‚ обстановки. Π’ ОманС ΠΌΡƒΠΆΡ‡ΠΈΠ½Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ†Π΅Π»ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° Π² нос, послС рукопоТатия. Π’ КамбодТС ΠΈ Π’Π°ΠΈΠ»Π°Π½Π΄Π΅ ΠΎΠ½ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ Π»Π°Π΄ΠΎΠ½ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ ΠΌΠΎΠ»ΠΈΡ‚Π²Π΅. Π­Ρ‚ΠΎ всС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ общСния, простая ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΎΠ², которая имССтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ ΠΎΠ±Π΅ стороны ΠΊ ΠΎΠ±ΠΌΠ΅Π½Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.

Π’ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ Π΅ΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ эффСктивный ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ ΠΊ ΠΎΠ±ΠΌΠ΅Π½Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ: Hypertext Transfer Protocol, ΠΈΠ»ΠΈ HTTP. HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TCP/IP. HTTP часто упускаСтся ΠΈΠ· Π²ΠΈΠ΄Π° ΠΏΡ€ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Π²Π΅Π±-Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΈ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎ являСтся ошибкой: ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠΉ способ взаимодСйствия с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ, Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сайта ΠΈ создаСт эффСктивный инструмСнт для управлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π² сСти Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

Π­Ρ‚ΠΎ пСрвая ΡΡ‚Π°Ρ‚ΡŒΡ ΠΈΠ· сСрии статСй, Ρ†Π΅Π»ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ основам HTTP ΠΈ эффСктивному Π΅Π³ΠΎ использованию. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ этапС HTTP Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»?

Π”ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒΡΡ Π² спСцифику, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ сцСнарий. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, ΠΎΠ±Π΅ΠΈΠΌ сторонам (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм, устройством, людьми, ΠΈ Ρ‚.Π΄.) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ:
  • синтакс (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°)
  • сСмантика (ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок)
  • Ρ‚Π°ΠΉΠΌΠΈΠ½Π³ (согласованиС ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ)


Когда Π΄Π²Π° Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ, ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π―ΠΏΠΎΠ½ΠΈΠΈ ΠΏΡ€ΠΈ встрСчС с ΠΊΠ΅ΠΌ-Π»ΠΈΠ±ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π΄Π΅Π»Π°Π΅Ρ‚ спСцифичСскоС дСйствиС с Ρ‚Π΅Π»ΠΎΠΌ. Одно ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… дСйствий β€” ΠΏΠΎΠΊΠ»ΠΎΠ½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся синтаксисом, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ для взаимодСйствия. Π’ японской Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΈ ТСст Β«ΠΏΠΎΠΊΠ»ΠΎΠ½Β» (ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅) ассоциируСтся с сСмантикой привСтствия ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ. Π’ ΠΈΡ‚ΠΎΠ³Π΅, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ кланяСтся Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, устанавливаСтся Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° событий ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя людьми Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Ρ‚Π°ΠΉΠΌΠΈΠ½Π³Π΅.

ΠžΠ½Π»Π°ΠΉΠ½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» состоит ΠΈΠ· Ρ‚Π΅Ρ… ΠΆΠ΅ элСмСнтов. Бинтаксисом Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов, ΠΊΠ°ΠΊ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для написания ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Π‘Π΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΠ° β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ассоциированноС с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· этих слов ΠΈ, Π² Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ, Ρ‚Π°ΠΉΠΌΠΈΠ½Π³ β€” ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π²Π΅ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ сущности ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ этими словами.

Π“Π΄Π΅ HTTP вклиниваСтся Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ?

Π‘Π°ΠΌ HTTP Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². Π’ΠΎ врСмя соСдинСния ΠΊ Π²Π΅Π±-сайту, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊ www.example.org, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π°Π³Π΅Π½Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сСмСйство ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² TCP/IP. МодСль TCP/IP, спроСктированная Π² 1970, состоит ΠΈΠ· 4 ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ:
  • Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ сСтСвого доступа, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ доступ ΠΊ физичСскому устройству (Ρ‚.Π΅. ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ)
  • ΠœΠ΅ΠΆΡΠ΅Ρ‚Π΅Π²ΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ размСщСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄Π΅ΠΉΡ‚Π°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Ρ€ΠΎΡƒΡ‚ΠΈΠ½Π³ Π΄Π°Π½Π½Ρ‹Ρ… β€” ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠ°ΠΊΡƒΡŽΡ‚ΡΡ (IP)
  • Вранспортный ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ способ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· исходной Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΊ Ρ„ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ (TCP, UDP)
  • ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… сообщСний (HTTP)

HTTP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π½Π°Π΄ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²Π²ΠΈΠ΄Ρƒ. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° нСзависимыС ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ части ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π±Π΅Π· нСобходимости ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ всё. НапримСр, TCP, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» транспортного уровня, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ, Π±Π΅Π· нСобходимости ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ HTTP, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня. Π’ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΡΡ‚Π°Ρ‚ΡŒΡΡ… ΠΏΡ€ΠΎ HTTP ΠΌΡ‹ ΡƒΠ΄Π΅Π»ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ, ΠΊΠ°ΠΊ это сдСлано Π² TCP/IP ΠΌΠΎΠ΄Π΅Π»ΠΈ. HTTP ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ двумя частями ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния посрСдством HTTP сообщСний. Π’ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ эти сообщСния, ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ для ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Ρ‚Π°ΠΊ ΠΈ для сСрвСра (Π²Π΅Π±-сайт) ΠΈ посрСдников (прокси-сСрвСр).
Π”Π°Π²Π°ΠΉΡ‚Π΅ добСрСмся Π΄ΠΎ сСрвСра

ΠŸΠΎΡ€Ρ‚ 80 β€” ΠΏΠΎΡ€Ρ‚ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для соСдинСния ΠΊ Π²Π΅Π±-сСрвСрам. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ сами ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ Π²Π΅Π±-сСрвСру, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ соСдинСниС ΠΊ www.opera.com Π½Π° ΠΏΠΎΡ€Ρ‚ 80 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:
telnet www.opera.com 80
Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅:
Trying 195.189.143.147...
Connected to front.opera.com.
Escape character is '^]'.
Connection closed by foreign host.

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» пытаСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ соСдинСниС с сСрвСром, располоТСнным ΠΏΠΎ адрСсу 195.189.143.147. Если ΠΌΡ‹ большС Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ, сСрвСр сам Π·Π°ΠΊΡ€ΠΎΠ΅Ρ‚ соСдинСниС. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΈ Π΄Π°ΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Π½ΠΎ эти β€” самыС общСпринятыС.
Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ± HTTP

Π”Π°Π²Π°ΠΉ ΠΎΠΏΡΡ‚ΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒΡΡ с сСрвСром. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ сообщСниС Π² вашСй ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС:
telnet www.opera.com 80
Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ соСдинСниС установится, Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ HTTP сообщСниС быстро (Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ соСдинСниС автоматичСски закроСтся), ΠΏΠΎΡ‚ΠΎΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Enter Π΄Π²Π°ΠΆΠ΄Ρ‹:
GET / HTTP/1.1
Host: www.opera.com

Π­Ρ‚ΠΎ сообщСниС ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚:
  • GET: Π§Ρ‚ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.
  • /: Π§Ρ‚ΠΎ информация, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ находится Π² ΠΊΠΎΡ€Π½Π΅ сайта.
  • HTTP/1.1: Π§Ρ‚ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ HTTP вСрсии 1.1.
  • Host: ΠœΡ‹ пытаСмся ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ сайту.
  • www.opera.com: имя сайта β€” www.opera.com.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ настаСт ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ сСрвСра ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² ΠΎΠΊΠ½Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° содСрТимоС сайта, начиная с этих строк:
 HTTP/1.1 200 OK
Date: Wed, 23 Nov 2011 19:41:37 GMT
Server: Apache
Content-Type: text/html; charset=utf-8
Set-Cookie: language=none; path=/; domain=www.opera.com; expires=Thu, 25-Aug-2011 19:41:38 GMT
Set-Cookie: language=en; path=/; domain=.opera.com; expires=Sat, 20-Nov-2021 19:41:38 GMT
Vary: Accept-Encoding
Transfer-Encoding: chunked
<!DOCTYPE html>
<html lang="en">

…

Π’ΡƒΡ‚ сСрвСр ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚: Β«Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ HTTP вСрсии 1.1. Π’Π°Ρˆ запрос Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, поэтому я ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽ ΠΊΠΎΠ΄ΠΎΠΌ 200Β». Π‘Ρ‚Ρ€ΠΎΠΊΠ° Ok Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΈ присутствуСт для объяснСния людям, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ людям β€” Π² Π΄Π°Π½Π½ΠΎΠΌ случаС, Ρ‡Ρ‚ΠΎ всё Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ наш запрос Π±Ρ‹Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½. Π”Π°Π»Π΅Π΅, сСрия HTTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² отправляСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ это Π·Π° сообщСниС ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ слСдуСт ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ. Π’ ΠΈΡ‚ΠΎΠ³Π΅, содСрТимоС страницы, располоТСнной Π² ΠΊΠΎΡ€Π½Π΅ сайта добавляСтся ΠΊ ΠΎΡ‚Π²Π΅Ρ‚Ρƒ начиная со строки . Бписок ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов HTTP ΠΈ ΠΊΠΎΠ΄ΠΎΠ² ΠΎΡ‚Π²Π΅Ρ‚Π° Π±ΡƒΠ΄ΡƒΡ‚ описаны Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡΡ‚Π°Ρ‚ΡŒΡΡ….

РСзюмС

ΠœΡ‹ ΠΎΠ±Ρ‰Π°Π»ΠΈΡΡŒ с Π²Π΅Π±-сСрвСром, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP β€” это максимально просто! ΠœΡ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ сообщСниС (Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ написали письмо) ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‡Ρ‚ΠΎ нашС сообщСниС Π±Ρ‹Π»ΠΎ понято. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π· ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ рассмотрим, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π°Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»: ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ основныС понятия, связанныС с HTTP

ЗдравствуйтС, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ посСтитСли сайта ZametkiNaPolyah.ru. НачнСм Π·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ HTTP Π² Ρ€ΡƒΠ±Ρ€ΠΈΠΊΠ΅ Π‘Π΅Ρ€Π²Π΅Ρ€Ρ‹ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΈ Π΅Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».  ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP – это ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»Π° двиТСния Π½Π° Π΄ΠΎΡ€ΠΎΠ³Π΅, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠ³ΠΎ двиТСния ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ Π½Π΅ всС ΠΈ Π½Π΅ всСгда. А Π²ΠΎΡ‚ Ссли наши прилоТСния Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ смогут Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ познакомимся с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ HTTP, ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ собой прСдставляСт ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP, Π΄Π°Π΄ΠΈΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ, посмотрим ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ознакомимся с ΠΎΠ±Ρ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Π±Π΅Π· изучСния слоТных Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ.

HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»: ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

HTTP (HyperText Transfer Protocol) – это ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» сСдьмого уровня ΠΌΠΎΠ΄Π΅Π»ΠΈ OSI для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π² основС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π»Π΅ΠΆΠΈΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° взаимодСйствиС ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP разрабатывался для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ HTML Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСром ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ HTTP сообщСний. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² основС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Π»Π΅ΠΆΠΈΡ‚ взаимодСйствиС ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр, Ρ‚ΠΎ прСдполагаСтся, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π΅Π»Π°Π΅Ρ‚ HTTP запросы ΠΈ Π΅ΡΡ‚ΡŒ HTTP сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ эти запросы ΠΈ Π΄Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ HTTP ΠΎΡ‚Π²Π΅Ρ‚Ρ‹. ВсС ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ сСрвСра содСрТат ΠΊΠΎΠ΄Ρ‹ состояния, Π° всС запросы ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠΌΠ΅ΡŽΡ‚ HTTP ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Данная сСрия ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр ΠΏΠΎ срСдствам HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP довольно строгий ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (кстати, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP позволяСт ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прилоТСния) ΠΊΠ°ΠΊ клиСнтский, Ρ‚Π°ΠΊ ΠΈ сСрвСрных строго исполнСния стандарта (моТСшь ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС стандарты HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°). ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² HTTP ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²: Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, прилоТСния Π½Π° Android, iOS, Windows. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² сСрвСров HTTP: Apache, IIS, nginx, lighthttpd ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ HTTP

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»: ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP осущСствляСт доступ ΠΊ Π²Π΅Π±-рСсурсам ΠΈ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ прилоТСниями. По сути HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» обСспСчиваСт Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°. Иногда HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ транспорт для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² (ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° пСрСдаСтся информация для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ²): SOAP, XML-RPC ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· TCP/IP соСдинСниС (Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΎ HTTP соСдинСниС ΠΈ обсуТдСниС Π² HTTP). Машина, которая выступаСт Π² Ρ€ΠΎΠ»ΠΈ сСрвСра ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π²ΠΎΡΡŒΠΌΠΈΠ΄Π΅ΡΡΡ‚Ρ‹ΠΉ TCP ΠΏΠΎΡ€Ρ‚ ΠΈΠ»ΠΈ ΠΏΠΎΡ€Ρ‚ 8080. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠ΅ прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ настроСны Π½Π° использованиС 80-Π³ΠΎ ΠΏΠΎΡ€Ρ‚Π° для соСдинСния с HTTP сСрвСром.

HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» – это абстракция Π½Π°Π΄ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ IP, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ адрСсу m.vk.com, vk.com, Π½ΠΎ фактичСски, Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ OSI, Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΡƒΠ·Π»Ρƒ с ΠΎΠ΄Π½ΠΈΠΌ адрСсом IP, Π½ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΡƒΡŽ.

HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ инструмСнтов для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ (Ссли интСрСсно, Ρ‚ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π² HTTP), Π½ΠΎ для Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹: SSL ΠΈ TLS. По сути SSL – это Π±ΠΎΠ»Π΅Π΅ ранняя вСрсия TLS ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Но ΠΎΠ± этом ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… публикациях.

Данная сСрия Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΈ записСй Π±ΡƒΠ΄Π΅Ρ‚ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ посвящСна HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ, ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Π½Π° простых ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΈ простыми словами разбСрСмся с HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ ΠΎΡ‚ ΠΈ Π΄ΠΎ.

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ Π² коммСнтариях ΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π»ΡƒΡ‡ΡˆΠ΅, с ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ZametkiNaPolyah.ru!

Как HTTP/2 сдСлаСт Π²Π΅Π± быстрСС / NIX corporate blog / Habr

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ гипСртСкста (HTTP) β€” это простой, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΈ нСвСроятно скучный ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΉ Π² основС ВсСмирной ΠΏΠ°ΡƒΡ‚ΠΈΠ½Ρ‹. По сути, HTTP позволяСт ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹Ρ… ΠΊ сСти рСсурсов, ΠΈ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ дСсятилСтий ΠΎΠ½ выступаСт Π² Ρ€ΠΎΠ»ΠΈ быстрого, бСзопасного ΠΈ качСствСнного β€œΠΏΠΎΡΡ€Π΅Π΄Π½ΠΈΠΊΠ°β€.
Π’ этой ΠΎΠ±Π·ΠΎΡ€Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ расскаТСм ΠΎΠ± использовании ΠΈ прСимущСствах HTTP/2 для ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ, стрСмящихся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ соврСмСнныС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. Π—Π΄Π΅ΡΡŒ Π²Ρ‹ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ HTTP/2, ΠΎΡ‚ основ Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТных вопросов.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅:

  • Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP/2?
  • Для Ρ‡Π΅Π³ΠΎ создавался HTTP/2?
  • Π§Π΅ΠΌ Π±Ρ‹Π» ΠΏΠ»ΠΎΡ… HTTP 1.1?
  • ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ HTTP/2
  • Как HTTP/2 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с HTTPS?
  • Различия ΠΌΠ΅ΠΆΠ΄Ρƒ HTTP 1.x, SPDY ΠΈ HTTP/2
  • ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства HTTP/2
  • Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ HTTPS, SPDY ΠΈ HTTP/2
  • БраузСрная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° HTTP/2 ΠΈ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ
  • Как Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTP/2?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HTTP/2?


HTTP Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ создатСлСм ВсСмирной ΠΏΠ°ΡƒΡ‚ΠΈΠ½Ρ‹ Π’ΠΈΠΌΠΎΠΌ БСрнСрсом-Π›ΠΈ. Он сдСлал ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» простым, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ высокоуровнСвой ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Π±-сСрвСрами ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ.

ΠŸΠ΅Ρ€Π²Π°Ρ задокумСнтированная вСрсия HTTP β€” HTTP 0.9 β€” Π²Ρ‹ΡˆΠ»Π° Π² 1991. Π’ 1996 появился HTTP 1.0. Π“ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ·ΠΆΠ΅ Π²Ρ‹ΡˆΠ΅Π» HTTP 1.1 с нСбольшими ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡΠΌΠΈ.

Π’ Ρ„Π΅Π²Ρ€Π°Π»Π΅ 2015 Рабочая Π³Ρ€ΡƒΠΏΠΏΠ° HTTP Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠ³ΠΎ совСта Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° (IETF) пСрСсмотрСла ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π² Π²ΠΈΠ΄Π΅ HTTP/2. Π’ ΠΌΠ°Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π³ΠΎΠ΄Π° спСцификация Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±Ρ‹Π»Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ стандартизирована Π² качСствС ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° HTTP-совмСстимый ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» SPDY, созданный Π² Google. Дискуссия Π½Π° Ρ‚Π΅ΠΌΡƒ Β«HTTP/2 ΠΏΡ€ΠΎΡ‚ΠΈΠ² SPDYΒ» Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ Π½Π° протяТСнии всСй ΡΡ‚Π°Ρ‚ΡŒΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»?


Π§Ρ‚ΠΎΠ±Ρ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Β«HTTP/2 ΠΏΡ€ΠΎΡ‚ΠΈΠ² HTTP/1Β», Π΄Π°Π²Π°ΠΉΡ‚Π΅ сначала вспомним, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ сам Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Β», часто ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌΡ‹ΠΉ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» β€” это Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ», Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ, Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹Π΅) ΠΈ сСрвСрами (ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ, содСрТащими эти Π΄Π°Π½Π½Ρ‹Π΅).

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ состоят ΠΈΠ· Ρ‚Ρ€Ρ‘Ρ… основных частСй: Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (header), ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (payload) ΠΈ Ρ„ΡƒΡ‚Π΅Ρ€Π° (footer). Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈΠ΄Ρ‘Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈ содСрТит адрСса источника ΠΈ получатСля, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ Ρ‚ΠΈΠΏ. ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ β€” это информация, которая пСрСдаётся посрСдством ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Π€ΡƒΡ‚Π΅Ρ€ пСрСдаётся Π² послСднюю ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΈ выполняСт Ρ€ΠΎΠ»ΡŒ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ поля для ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных запросов ΠΊ адрСсатам. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ Ρ„ΡƒΡ‚Π΅Ρ€ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ошибок ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Если провСсти аналогию с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ Π±ΡƒΠΌΠ°ΠΆΠ½Ρ‹ΠΌ письмом: тСкст (ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅) ΠΏΠΎΠΌΠ΅Ρ‰Ρ‘Π½ Π² ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) с адрСсом получатСля. ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ запСчатываСтся, ΠΈ Π½Π° Π½Π΅Π³ΠΎ наклСиваСтся почтовая ΠΌΠ°Ρ€ΠΊΠ° (Ρ„ΡƒΡ‚Π΅Ρ€). ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, это ΡƒΠΏΡ€ΠΎΡ‰Ρ‘Π½Π½ΠΎΠ΅ прСдставлСниС. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Π½ΡƒΠ»Π΅ΠΉ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ† Π½Π΅ Ρ‚Π°ΠΊ проста, ΠΎΠ½Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ примСнСния Π½ΠΎΠ²ΠΎΠ³ΠΎ измСрСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с растущими тСхнологичСскими Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ, связанными со Π²Π·Ρ€Ρ‹Π²Π½Ρ‹ΠΌ использованиС ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°.

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ состоял ΠΈΠ· Π΄Π²ΡƒΡ… основных ΠΊΠΎΠΌΠ°Π½Π΄:

GET β€” ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ с сСрвСра,
POST β€” ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ для хранСния.

Π­Ρ‚ΠΎΡ‚ простой ΠΈ скучный Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ β€” ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° запроса β€” Π»Ρ‘Π³ Π² основу ΠΈ ряда Π΄Ρ€ΡƒΠ³ΠΈΡ… сСтСвых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². Π‘Π°ΠΌ ΠΏΠΎ сСбС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» являСтся Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΈΠΌ шагом ΠΊ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ UX, Π° для Π΅Π³ΠΎ дальнСйшСго развития Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ HTTP/2.

Для Ρ‡Π΅Π³ΠΎ создавался HTTP/2?


Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° своСго возникновСния Π² Π½Π°Ρ‡Π°Π»Π΅ 1990-Ρ…, HTTP лишь нСсколько Ρ€Π°Π· подвСргался ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎΠΌΡƒ пСрСсмотру. ПослСдняя вСрсия β€” HTTP 1.1 β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡƒΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ 15 Π»Π΅Ρ‚. Π’ эру динамичСского обновлСния ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, рСсурсоёмких ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΈ Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ стрСмлСния ΠΊ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Π΅Π±Π°, Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ старых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΏΠ΅Ρ€Π΅ΡˆΠ»ΠΈ Π² разряд ΠΌΠΎΡ€Π°Π»ΡŒΠ½ΠΎ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ…. ВсС эти Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ обСспСчиваСт HTTP/2.

Главная Ρ†Π΅Π»ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½ΠΎΠ²ΠΎΠΉ вСрсии HTTP Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π»Π°ΡΡŒ Π² обСспСчСнии Ρ‚Ρ€Ρ‘Ρ… свойств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π΄ΠΊΠΎ Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΡƒΡŽΡ‚ΡΡ с ΠΎΠ΄Π½ΠΈΠΌ лишь сСтСвым ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ, Π±Π΅Π· нСобходимости использования Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сСтСвых Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, β€” простота, высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ. Π­Ρ‚ΠΈ свойства обСспСчСны благодаря ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½Ρ‹Ρ… запросов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΈΡ… ΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, сТатиС, приоритСзация запросов ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ сСрвСра (Server Push).

Π’ качСствС ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠΉ HTTP ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹, ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² (flow control), Π°ΠΏΠ³Ρ€Π΅ΠΉΠ΄ (upgrade) ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠšΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π½Π°Ρ систСма (collective system) позволяСт сСрвСрам эффСктивно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ большС ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ запросили, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ постоянныС запросы ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΏΠΎΠΊΠ° сайт Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ Π² ΠΎΠΊΠ½Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. НапримСр, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ сСрвСра (Server Push), прСдоставляСмая HTTP/2, позволяСт сСрвСру ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ сразу вСсь ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ страницы, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ имССтся Π² кэшС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. НакладныС расходы ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π·Π° счёт эффСктивного сТатия HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ запроса ΠΈ сСрвСрного ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°.

HTTP/2 разрабатывался с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ взаимозамСняСмости ΠΈ совмСстимости с HTTP 1.1. ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ HTTP/2 даст Ρ‚ΠΎΠ»Ρ‡ΠΎΠΊ ΠΊ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌΡƒ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

ΠœΠ°Ρ€ΠΊ НоттингСм, Π“Π»Π°Π²Π° Π Π°Π±ΠΎΡ‡Π΅ΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ HTTP IETF ΠΈ Ρ‡Π»Π΅Π½ W3C TAG:

«… ΠΌΡ‹ Π½Π΅ мСняСм вСсь HTTP β€” ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΠ΄Ρ‹ статусов ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅. ΠœΡ‹ лишь ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π΅Π³ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ эффСктивности использования, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» Π±ΠΎΠ»Π΅Π΅ щадящим ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ интСрнСту…»

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ новая вСрсия HTTP ΠΈΠ΄Ρ‘Ρ‚ Π² качСствС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ для своСго ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠ°, ΠΈ вряд Π»ΠΈ Π² ΠΎΠ±ΠΎΠ·Ρ€ΠΈΠΌΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ HTTP 1.1. РСализация HTTP/2 Π½Π΅ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ автоматичСской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ всСх Ρ‚ΠΈΠΏΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, доступных Π² HTTP 1.1, Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎ поощряСт использованиС Π±ΠΎΠ»Π΅Π΅ интСрСсных Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ², ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ совмСстимости ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² сравнСниях Β«HTTP/2 ΠΏΡ€ΠΎΡ‚ΠΈΠ² HTTP 1Β» ΠΈ Β«SPDY ΠΏΡ€ΠΎΡ‚ΠΈΠ² HTTP/2Β» Π³Π΅Ρ€ΠΎΠΉ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΌ ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, бСзопасности ΠΈ надёТности.

Π§Π΅ΠΌ Π±Ρ‹Π» ΠΏΠ»ΠΎΡ… HTTP 1.1?


HTTP 1.1 позволяСт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ лишь ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠΈΠΉ запрос Π½Π° ΠΎΠ΄Π½ΠΎ TCP-соСдинСниС, поэтому Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ приходится ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ нСсколько соСдинСний, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ нСсколько запросов.

Но ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ использованиС многочислСнных соСдинСний ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ΅ TCP, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΊ нСсправСдливой ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΠΈΠ·Π°Ρ†ΠΈΠΈ сСтСвых рСсурсов. Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ многочислСнныС соСдинСния для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… запросов, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π»ΡŒΠ²ΠΈΠ½ΡƒΡŽ долю доступных сСтСвых рСсурсов, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ сниТСнию сСтСвой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ многочислСнных запросов ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… Π² сСтях ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, Ρ‡Ρ‚ΠΎ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ использования Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… Π±Π΅Π·ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΡƒΠ·Π»Π°Ρ… Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

Π‘Π΅Ρ‚Π΅Π²ΠΎΠΉ индустрии фактичСски ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Ρ…Π°ΠΊΠ½ΡƒΡ‚ΡŒ эти ограничСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ, ΠΊΠ°ΠΊ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹ΠΉ ΡˆΠ°Ρ€Π΄ΠΈΠ½Π³ (domain sharding), конкатСнация, встраиваниС ΠΈ спрайтинг (spriting) Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ряд Π΄Ρ€ΡƒΠ³ΠΈΡ…. НСэффСктивноС использованиС HTTP 1.1 Π±Π°Π·ΠΎΠ²Ρ‹Ρ… TCP-соСдинСний являСтся ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ рСсурсов, ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ β€” ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄Π΅Π³Ρ€Π°Π΄Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ роста слоТности, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉΡΡ сСти ΡƒΠΆΠ΅ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ возмоТностСй HTTP-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ свойства HTTP 1.1 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСсколько нСприятных Π»Π°Π·Π΅Π΅ΠΊ, ΡƒΡ…ΡƒΠ΄ΡˆΠ°ΡŽΡ‰ΠΈΡ… Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π΅Π±-сайтов ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

НапримСр, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Cookie Hack Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ сСссию для получСния нСсанкционированного доступа ΠΊ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. А ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ HTTP 1.1 Π½Π΅ прСдоставляСт инструмСнтов ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ подтвСрТдСния подлинности. Понимая, Ρ‡Ρ‚ΠΎ Π² HTTP/2 Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ Π»Π°Π·Π΅ΠΉΠΊΠΈ, Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй TLS.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ HTTP/2


ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ

ΠŸΠ΅Ρ€Π΅ΡΡ‹Π»Π°Π΅ΠΌΠ°Ρ Ρ‡Π΅Ρ€Π΅Π· HTTP/2 Π² ΠΎΠ±Π΅ стороны ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ тСкстовых Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ собой ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр, называСтся β€œΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌβ€. Π’ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях HTTP ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ Π·Π° Ρ€Π°Π·, с нСбольшой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ. ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ способом большиС ΠΎΠ±ΡŠΡ‘ΠΌΡ‹ ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π±Ρ‹Π»ΠΎ слишком нСэффСктивно ΠΈ рСсурсозатратно. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² HTTP/2 примСняСтся Π½ΠΎΠ²Ρ‹ΠΉ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ слой Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ².

Π­Ρ‚ΠΎΡ‚ слой позволяСт ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ ΠΎΡ‚ сСрвСра ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, Π² ΡƒΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… нСзависимых Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ². И ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ всСго Π½Π°Π±ΠΎΡ€Π° Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² исходном Π²ΠΈΠ΄Π΅. Π­Ρ‚Π° схСма Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ β€” ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊ сСрвСру.

Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ²Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ многочислСнными, нСзависимыми ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ Π² ΠΎΠ±Π΅ стороны, Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΄Π°Ρ‘Ρ‚ массу прСимущСств:

  • ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ запросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°.
  • НСсмотря Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ многочислСнных ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, для наибольшСй эффСктивности использования сСтСвых рСсурсов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ΅ TCP-соСдинСниС.
  • Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ…Π°ΠΊΠΈ, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ спрайтов, ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ, фрагмСнтирования Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ ΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… сфСрах сСтСвой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½ΠΈΠΆΠ΅, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ сСти Π²Ρ‹ΡˆΠ΅, Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ поисковыми систСмами.
  • Π’ сСти ΠΈ IT-рСсурсах ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°ΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ расходы ΠΈ ΠΊΠ°ΠΏΠΈΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ влоТСния.

Благодаря описанной возмоТности, ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· СдинствСнноС TCP-соСдинСниС. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ эти ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π·Π°Ρ‚Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π’ HTTP 1.1 ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ многочислСнных запросов ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ количСство TCP-соСдинСний, Ρ‡Ρ‚ΠΎ являСтся ΡƒΠ·ΠΊΠΈΠΌ мСстом с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΎΠ±Ρ‰Π΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСти, нСсмотря Π½Π° Π±Ρ‹ΡΡ‚Ρ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ большСго количСства ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….
ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ сСрвСра (Server Push)

Π­Ρ‚Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ позволяСт сСрвСру ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΊΡΡˆΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ‚ΠΎΡ‚ Π½Π΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π», Π½ΠΎ которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… запросах. НапримСр, Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ рСсурс Π₯, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ссылаСтся Π½Π° рСсурс Y, Ρ‚ΠΎ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Y вмСстС с Π₯, Π½Π΅ доТидаясь ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ запроса.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚ сСрвСра рСсурс Y ΠΊΡΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ для Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ использования. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ позволяСт ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ»Ρ‹ «запрос-ΠΎΡ‚Π²Π΅Ρ‚Β» ΠΈ сниТаСт ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Server Push появился Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ SPDY. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², содСрТащиС псСвдозаголовки Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ :path, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ сСрвСром Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, которая Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½Π°. ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈΠ±ΠΎ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ сСрвСру ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ сСбС ΠΊΡΡˆΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ рСсурсы посрСдством HTTP/2, Π»ΠΈΠ±ΠΎ ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ возмоТности HTTP/2, извСстныС ΠΊΠ°ΠΊ Cache Push, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ с ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ кэш Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. ΠŸΡ€ΠΈ этом сСрвСр способСн ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ рСсурсы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π».

РСализация HTTP/2 дСмонстрируСт Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ рСсурсами:

  • Π˜Π½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ рСсурсы ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² кэшС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.
  • ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти рСсурсы Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… страницах.
  • Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ рСсурсы вмСстС с Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ TCP-соСдинСния.
  • Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ рСсурсы. Π­Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ HTTP/2 ΠΈ HTTP 1.
  • ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ рСсурсы для поддСрТания эффСктивности рСпозитория, ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Server Push.
  • ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ количСство ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² с ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π’ Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ°Ρ… Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ встраивания (Inlining) Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ push-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСрвСр ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°Ρ‚ΡŒΡΡ Π½Π° запросы. ΠŸΡ€ΠΈ этом Server Push прСдставляСт собой Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π΅Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π²ΠΎΠ·Π½ΠΈ с ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ Ρ…Π°ΠΊΠ°ΠΌΠΈ.

HTTP/2 ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊ с ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ€Π°Π΄ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠ°ΠΊ ΠΈ Π² случаС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ запросов-ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠΎΠ². Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ встроСнный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ бСзопасности, согласно ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ сСрвСр Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½ для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ рСсурсов.

Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

ПослСдняя вСрсия HTTP ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния возмоТностСй, ΠΈ дСмонстрируСт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· тСкстового Π² Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». Для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ†ΠΈΠΊΠ»ΠΎΠ² запрос-ΠΎΡ‚ΠΊΠ»ΠΈΠΊ HTTP 1.x ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ тСкстовыС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. HTTP/2 Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ (состоящих ΠΈΠ· Π΅Π΄ΠΈΠ½ΠΈΡ† ΠΈ Π½ΡƒΠ»Π΅ΠΉ). Π­Ρ‚ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Ρ€Π΅ΠΉΠΌΠ°ΠΌΠΈ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡƒΡ‚Π°Ρ‚ΡŒ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ состоят ΠΈΠ· тСкста ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ².

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π΅, Ρ‡Π΅ΠΌ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ тСкстовыС, Π½ΠΎ Π·Π°Ρ‚ΠΎ сСти Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³Ρ‡Π΅ ΠΈΡ… Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ°Ρ€ΡΠΈΡ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΡ‹. Π‘Π΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΠ° остаётся Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ HTTP/2, ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π² ΡΠ΅Ρ‚ΡŒ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ тСкстовыС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅. Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ слой Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости с ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ сСрвСрами, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ HTTP 1.x. Он являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с SPDY ΠΈ HTTP 1.x. КакиС прСимущСства Π΄Π°Ρ‘Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-компаниям ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-сСрвисам использованиС Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄:

  • НизкиС Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы ΠΏΡ€ΠΈ парсингС Π΄Π°Π½Π½Ρ‹Ρ… β€” критичСски Π²Π°ΠΆΠ½ΠΎΠ΅ прСимущСство HTTP/2 ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с HTTP 1.
  • НиТС Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок.
  • МСньшС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° ΡΠ΅Ρ‚ΡŒ.
  • Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ использованиС сСтСвых рСсурсов.
  • РСшСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ Π°Ρ‚Π°ΠΊ с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ запросов (response splitting attack), ΠΏΡ€ΠΎΠΈΡΡ‚Π΅ΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΈΠ· тСкстовой ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹ HTTP 1.x.
  • Π Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ возмоТности HTTP/2, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сТатиС, ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡŽ, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ TLS.
  • ΠšΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ.
  • Π’Ρ‹ΡˆΠ΅ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ сбоям ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром.
  • Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ сСтСвой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ пропускной способности.

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

HTTP/2 позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ прСдпочтСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Π₯отя сСрвСр ΠΈ Π½Π΅ обязан ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ клиСнтским инструкциям, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ сСрвСру ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ распрСдСлСниС сСтСвых рСсурсов согласно трСбованиям ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ присваивания ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ зависимостСй (Dependencies) ΠΈ вСса (Weight). Π₯отя всС ΠΏΠΎΡ‚ΠΎΠΊΠΈ, ΠΏΠΎ сути, ΠΈ Ρ‚Π°ΠΊ зависят Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π΅Ρ‰Ρ‘ добавляСтся присваиваниС вСса Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 1 Π΄ΠΎ 256. Π”Π΅Ρ‚Π°Π»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ всё Π΅Ρ‰Ρ‘ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… условиях сСрвСр Ρ€Π΅Π΄ΠΊΠΎ управляСт Ρ‚Π°ΠΊΠΈΠΌΠΈ рСсурсами, ΠΊΠ°ΠΊ ЦПУ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π‘Π”. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сама ΠΏΠΎ сСбС Π½Π΅ Π΄Π°Ρ‘Ρ‚ сСрвСрам Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ запросы Π½Π° ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ². ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚ Π² этом Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ особСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для успСха HTTP/2 Π² долгосрочной пСрспСктивС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» позволяСт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ многочислСнныС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… СдинствСнного TCP-соСдинСния.

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ приходящиС Π½Π° сСрвСр запросы Π² соотвСтствии с потрСбностями ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. А ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² случайном порядкС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Ρ€Ρ‹Π²Π°Π΅Ρ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ удобство HTTP/2. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹ ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространённый ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² даст Π½Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прСимущСства:

  • Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ использованиС сСтСвых рСсурсов.
  • Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ доставки запросов ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°.
  • ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ скорости Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страниц.
  • ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром.
  • Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ эффСкта ΠΎΡ‚ сСтСвых Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² с сохранСниСм состояния

Π§Ρ‚ΠΎΠ±Ρ‹ произвСсти Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π΅ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, соврСмСнныС Π²Π΅Π±-сайты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ³Π°Ρ‚Ρ‹ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ. HTTP β€” это ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π±Π΅Π· сохранСния состояния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ клиСнтский запрос Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ сСрвСру для выполнСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… содСрТат многочислСнныС ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ Ρ„Ρ€Π΅ΠΉΠΌΡ‹, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ сСрвСр Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… клиСнтских запросов.

Если Π²Π΅Π±-сайт содСрТит ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ отправляСт ΠΊΡƒΡ‡Ρƒ практичСски ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΡŽ Π½Π΅ бСсконСчных сСтСвых рСсурсов. Π‘Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ сочСтания ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΡ‹ Π½Π΅ смоТСм Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹Ρ… стандартов ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°.

Π’ HTTP/2 это Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сТатия большого количСства ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ. Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° HPACK, это простой ΠΈ бСзопасный ΠΌΠ΅Ρ‚ΠΎΠ΄. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр хранят список Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡ…ΡΡ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… запросах.

HPACK сТимаСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π½Π° сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΌ ΠΈΡ‰Π΅Ρ‚ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² спискС Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅. Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ HPACK Π΄Π°Ρ‘Ρ‚ нСвСроятныС прСимущСства с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ обСспСчиваСт:

  • Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ².
  • Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ использованиС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.
  • Π‘Π½ΠΈΠΆΠ°Π΅Ρ‚ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы ΠΏΡ€ΠΈ использовании рСсурсов. Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… вопросов, обсуТдаСмых ΠΏΡ€ΠΈ сравнСнии HTTP/2 с HTTP 1 ΠΈ SPDY.
  • ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Ρ‡Ρ‚ΠΎ позволяСт Π½Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ вСсь Ρ„Ρ€Π΅ΠΉΠΌ с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ. ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° быстро ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ.
  • Π£ΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ Π°Ρ‚Π°ΠΊΠ°ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, CRIME β€” эксплойтам ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… со сТатыми Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ.

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ HTTP 1.x ΠΈ SPDY


Базовая сСмантика прилоТСния HTTP Π² послСднСй ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ HTTP/2 ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ΄Ρ‹ статусов, URI, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². HTTP/2 основан Π½Π° SPDY, созданной Π² Google Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π΅ HTTP 1.x. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ различия ΠΊΡ€ΠΎΡŽΡ‚ΡΡ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных запросов. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Ρ‹ основныС различия ΠΌΠ΅ΠΆΠ΄Ρƒ HTTP 1.x, SPDY ΠΈ HTTP/2:
HTTP 1.x SPDY HTTP2
SSL Π½Π΅ трСбуСтся, Π½ΠΎ рСкомСндуСтся. НСобходим SSL. SSL Π½Π΅ трСбуСтся, Π½ΠΎ рСкомСндуСтся.
МСдлСнноС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅. БыстроС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π¨ΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ стало Π΅Ρ‰Ρ‘ быстрСС.
Один ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрный запрос Π½Π° ΠΎΠ΄Π½ΠΎ TCP-соСдинСниС. Много ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных запросов Π½Π° ΠΎΠ΄Π½ΠΎ TCP-соСдинСниС. ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ хостС. ΠœΠ½ΠΎΠ³ΠΎΡ…ΠΎΡΡ‚ΠΎΠ²ΠΎΠ΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… хостах Π² ΠΎΠ΄Π½ΠΎΠΌ экзСмплярС.
НСт сТатия Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π’Π²Π΅Π΄Π΅Π½ΠΎ сТатиС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ сТатия Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ.
НСт ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ². Π’Π²Π΅Π΄Π΅Π½Π° приоритСзация ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ². Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ².

Как HTTP/2 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с HTTPS


HTTPS ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для установлСния сСтСвого соСдинСния высокой стСпСни бСзопасности, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²Π°ΠΆΠ½ΠΎΠΉ Π΄Π΅Π»ΠΎΠ²ΠΎΠΉ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ†Π΅Π»ΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ² β€” Π±Π°Π½ΠΊΠΈ, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ финансовыС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΠΈ учрСТдСния здравоохранСния, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡŽΡ‚ΡΡ истории Π±ΠΎΠ»Π΅Π·Π½Π΅ΠΉ. HTTPS Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² качСствС слоя, Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΡ‚ постоянных ΠΊΠΈΠ±Π΅Ρ€ΡƒΠ³Ρ€ΠΎΠ·, хотя ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ слоТных Π°Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° Ρ†Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ сСти, обусловлСно Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сообраТСниями бСзопасности.

БраузСрная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° HTTP/2 Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя HTTPS-ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈ фактичСски ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ ΠΎΠ±Ρ‰ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ обСспСчСния бСзопасности ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с HTTPS. ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ особСнностями HTTP/2, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ Π² Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ сСтСвом ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

  • мСньшСС количСство TLS-Ρ…ΡΠ½Π΄ΡˆΠ΅ΠΉΠΊΠΎΠ²,
  • мСньшСС ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ рСсурсов Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра,
  • ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½Ρ‹Π΅ возмоТности ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Π²Π΅Π±-сСссий, Π½ΠΎ Π±Π΅Π· уязвимостСй, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Ρ… для HTTP 1.x.

HTTPS примСняСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡˆΠΈΡ€ΠΎΠΊΠΎ извСстных компаниях ΠΈ для обСспСчСния кибСрбСзопасности. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°ΠΌ ΠΎΠ½Π»Π°ΠΉΠ½-сСрвисов, ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ Π±Π»ΠΎΠ³Π΅Ρ€Π°ΠΌ, ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°ΠΌ ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ соцсСтСй. Для HTTP/2 Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° самая свСТая, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ бСзопасная вСрсия TLS, поэтому всС ΠΎΠ½Π»Π°ΠΉΠ½-сообщСства, Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρ‹ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ ΠΈ вСбмастСры Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΈΡ… сайты ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ HTTPS.

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ настройки HTTPS Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя использованиС ΠΏΠ»Π°Π½ΠΎΠ² Π²Π΅Π±-хостинга, ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅, Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΡŽ ΠΈ установку сСртификатов бСзопасности, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ самого сайта, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΌΠΎΠ³ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTPS.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства HTTP/2


БСтСвая индустрия Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ HTTP 1.x Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ, прСимущСства ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для рядовых ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ с HTTP 1.x Π½Π° HTTP/2 ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ обусловлСн ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π° тСхнологичСских прСимущСств, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ соотвСтствовали соврСмСнным оТиданиям.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния элСктронной ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ†ΠΈΠΈ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ‡Π΅ΠΌ большС Π² сСти Π½Π΅Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, насыщСнного ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°, Ρ‚Π΅ΠΌ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

HTTP/2 создавался с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ эффСктивности ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрного ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Ρ‡Ρ‚ΠΎ позволяСт бизнСсмСнам ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΡ…Π²Π°Ρ‚ своих сСгмСнтов Ρ€Ρ‹Π½ΠΊΠ°, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ β€” быстрСС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ качСствСнному ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Ρƒ. Помимо ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, сСгодня Π²Π΅Π± ситуативСн ΠΊΠ°ΠΊ Π½ΠΈΠΊΠΎΠ³Π΄Π° Ρ€Π°Π½Π΅Π΅.

Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ доступа ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ Π²Π°Ρ€ΡŒΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… сСтСй ΠΈ гСографичСского мСстополоТСния. Доля ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ быстро растёт, Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ достаточно Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах Π»ΡŽΠ±Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ-Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², Π΄Π°ΠΆΠ΅ Ссли ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ сотовыС сСти Π½Π΅ Π² состоянии ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΡˆΠΈΡ€ΠΎΠΊΠΎΠΏΠΎΠ»ΠΎΡΠ½Ρ‹ΠΌ доступом. ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ являСтся HTTP/2, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ ΠΈΠ· ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСсмотрСнных ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… сСтСвых ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΠ°ΠΊΠΎΠ²Ρ‹ основныС прСимущСства HTTP/2?

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ сСти

Π­Ρ‚ΠΎ понятиС ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ совокупный эффСкт всСх Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ HTTP/2. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠΎΠ² (см. Π³Π»Π°Π²Ρƒ Β«Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ HTTPS, SPDY ΠΈ HTTP/2Β») Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ использовании HTTP/2 ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ.

Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ большС Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр β€” это Π½Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ…Π°ΠΊ, Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅, доступноС ΠΈ практичСскоС прСимущСство HTTP/2. Π’ качСствС Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ привСсти сравнСниС Π²Π°ΠΊΡƒΡƒΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΅Π·Π΄Π° с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ: отсутствиС трСния ΠΈ сопротивлСния Π²ΠΎΠ·Π΄ΡƒΡ…Π° позволяСт транспортному срСдству ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ быстрСС, Π±Ρ€Π°Ρ‚ΡŒ большС пассаТиров ΠΈ эффСктивнСС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ доступныС ΠΊΠ°Π½Π°Π»Ρ‹ Π±Π΅Π· установки Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Ρ… Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»Π΅ΠΉ. Π’Π°ΠΊΠΆΠ΅ сниТаСтся вСс ΠΏΠΎΠ΅Π·Π΄Π° ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ΡΡ Π΅Π³ΠΎ аэродинамика.

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ большС Π΄Π°Π½Π½Ρ‹Ρ…. Как большой пассаТирский самолёт, с нСсколькими этаТами, Π½Π°ΠΏΠΈΡ‡ΠΊΠ°Π½Π½Ρ‹ΠΌΠΈ сидСньями.

Π§Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΡΠΌΠ΅Ρ‚Π°ΡŽΡ‚ всС ΠΏΡ€Π΅Π³Ρ€Π°Π΄Ρ‹ Π½Π° ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСти? Π£ высокой скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ сайтов Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ явлСния: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ большС ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΡ, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ΡΡ оптимизация для поисковых сСрвисов, рСсурсы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ эффСктивнСС, растёт аудитория ΠΈ ΠΎΠ±ΡŠΡ‘ΠΌΡ‹ ΠΏΡ€ΠΎΠ΄Π°ΠΆ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ HTTP/2 нСсравнСнно ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½Π΅Π΅, Ρ‡Π΅ΠΌ созданиС Π²Π°ΠΊΡƒΡƒΠΌΠ½Ρ‹Ρ… Ρ‚ΠΎΠ½Π½Π΅Π»Π΅ΠΉ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… пассаТирских ΠΏΠΎΠ΅Π·Π΄ΠΎΠ².

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ мобильной сСти

Π•ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ выходят Π² ΡΠ΅Ρ‚ΡŒ со своих ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств. ΠœΡ‹ ΠΆΠΈΠ²Ρ‘ΠΌ Π² «эру ΠΏΠΎΡΡ‚ΠŸΠšΒ», мноТСство людСй ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ смартфоны Π² качСствС основного устройства для доступа ΠΊ ΠΎΠ½Π»Π°ΠΉΠ½-сСрвисам ΠΈ выполнСния Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ прямо Π½Π° Ρ…ΠΎΠ΄Ρƒ, вмСсто Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ сидСния ΠΏΠ΅Ρ€Π΅Π΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°ΠΌΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ².

HTTP/2 проСктировался с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ соврСмСнных Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΉ использования сСти. Π—Π°Π΄Π°Ρ‡Π° нивСлирования нСбольшой пропускной способности мобильного ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ благодаря сниТСнию Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π·Π° счёт ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ сТатия Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Благодаря Π½ΠΎΠ²ΠΎΠΉ вСрсии ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡŽΡ‚ уровня, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ для дСсктопов. Π­Ρ‚ΠΎ сразу ΠΆΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сказываСтся ΠΈ Π½Π° возмоТностях ΠΎΠ½Π»Π°ΠΉΠ½-бизнСса ΠΏΠΎ ΠΎΡ…Π²Π°Ρ‚Ρƒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ подСшСвлС

Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° создания ВсСмирной ΠΏΠ°ΡƒΡ‚ΠΈΠ½Ρ‹ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ использования ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° быстро сниТалась. Π“Π»Π°Π²Π½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ развития сСтСвых Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ всСгда Π±Ρ‹Π»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ доступа ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ Π΅Π³ΠΎ скорости. Однако сниТСниС Ρ†Π΅Π½, судя ΠΏΠΎ всСму, Π·Π°ΡΡ‚ΠΎΠΏΠΎΡ€ΠΈΠ»ΠΎΡΡŒ, особСнно Π² свСтС ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΠΈΠΈ Ρ‚Π΅Π»Π΅ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ².

Рост пропускной способности ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ эффСктивности ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ HTTP/2 ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ расходы Π±Π΅Π· сниТСния скорости доступа. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, сниТСниС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… расходов ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌ Π°ΠΊΡ‚ΠΈΠ²Π½Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Π² Π½ΠΈΠ·ΠΊΠΎΠΌ Ρ†Π΅Π½ΠΎΠ²ΠΎΠΌ сСгмСнтС, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ высокиС скорости доступа Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ‚Π°Ρ€ΠΈΡ„ΠΎΠ².

Экспансивный ΠΎΡ…Π²Π°Ρ‚

ГустонасСлённыС Ρ€Π΅Π³ΠΈΠΎΠ½Ρ‹ Азии ΠΈ Африки всё Π΅Ρ‰Ρ‘ ΠΈΡΠΏΡ‹Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΡƒ доступа Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ с ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ. ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ ΡΡ‚Π°Ρ€Π°ΡŽΡ‚ΡΡ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΈΠ±Ρ‹Π»ΡŒ, прСдлагая свои услуги Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Π³ΠΎΡ€ΠΎΠ΄Π°Ρ… ΠΈ Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹Ρ… Ρ€Π°ΠΉΠΎΠ½Π°Ρ…. Благодаря прСимущСствам HTTP/2 ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° сСти, Π²Ρ‹Π΄Π΅Π»ΠΈΠ² Ρ‡Π°ΡΡ‚ΡŒ рСсурсов ΠΈ пропускной способности ΠΊΠ°Π½Π°Π»ΠΎΠ² для ΠΆΠΈΡ‚Π΅Π»Π΅ΠΉ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Π½Π΅Π΅ Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹Ρ… Ρ€Π°ΠΉΠΎΠ½ΠΎΠ².

ΠΠ°ΡΡ‹Ρ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°

БСгодня ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ практичСски Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈ сСрвисы, насыщСнныС ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°, с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ страниц. ΠŸΡ€ΠΈ этом для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°ΠΌ сайтов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ рСгулярно ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΡ… содСрТимоС. Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ инфраструктуры Π½Π΅ всСгда ΠΏΠΎΠ΄ΡŠΡ‘ΠΌΠ½Π° для ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-стартапов, Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ условии использования ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… сСрвисов ΠΏΠΎ подпискС. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΈ тСхнологичСскиС особСнности HTTP/2, вСроятно, Π½Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ сильно ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ², Π½ΠΎ Π·Π°Ρ‚ΠΎ снимут ΠΏΠΎ нСсколько Π±Π°ΠΉΡ‚ с Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ «тяТёлого» ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСрами.
Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠΏΡ‹Ρ‚Π° использования мобильного ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°

ΠŸΡ€ΠΎΠ³Ρ€Π΅ΡΡΠΈΠ²Π½Ρ‹Π΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Ρ€Π°Π΄ΠΈ эффСктивного ΠΎΡ…Π²Π°Ρ‚Π° быстрорастущСй мобильной Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ стратСгии Mobile-First. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ, Π²Π»ΠΈΡΡŽΡ‰ΠΈΠΌ Π½Π° использованиС мобильного ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ самыС Π²Ρ‹Π΄Π°ΡŽΡ‰ΠΈΠ΅ΡΡ характСристики Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² смартфонов ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ выраТаСтся Π² Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°Ρ… ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ запросов. HTTP/2 позволяСт ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ сСтСвых Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ Π΄ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ уровня.

Π‘ΠΎΠ»Π΅Π΅ эффСктивноС использованиС сСти

«ВяТёлый» ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈ сайты со слоТным Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ приводят ΠΊ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠΌΡƒ росту потрСблСния рСсурсов ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½Ρ‹Ρ… запросов. Π₯отя Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ…Π°ΠΊΠΈ, всё ΠΆΠ΅ появлСниС устойчивого ΠΈ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Π²ΠΈΠ΄Π΅ HTTP/2 Π±Ρ‹Π»ΠΎ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½Ρ‹ΠΌ. Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², инициативная ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… сСрвСром, зависимости ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” всё это ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности, ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ использования сСти.
Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° HTTP/2 Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠΉ лишь ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Алгоритм HPACK позволяСт ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ распространённыС ΡƒΠ³Ρ€ΠΎΠ·Ρ‹, Π½Π°Ρ†Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° тСкстовыС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ уровня прилоТСния. Для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром, Π² HTTP/2 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Β«Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΏΠΎΠ½ΡΡ‚Π½ΠΎΡΡ‚ΡŒΒ» (Security by Obscurity): ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ прСдставлСны Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅, примСняСтся сТатиС ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ…Π²Π°ΡΡ‚Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ примСнСния ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΠΎΠΉ вСрсии Transport Layer Security (TLS1.2).

Π˜Π½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΡΡ‚ΡŒ

HTTP/2 являСтся Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ΄Π΅ΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сСти. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π»Π΅ΠΆΠΈΡ‚ Π² основС ΠΊΠΈΠ±Π΅Ρ€ΠΌΠΈΡ€Π°, ΠΊΠ°ΠΊΠΈΠΌ ΠΌΡ‹ Π΅Π³ΠΎ Π·Π½Π°Π΅ΠΌ сСгодня. ИзмСнСния, вносимыС HTTP/2, Π² основном Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° свойствах SPDY, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ стал ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΌ шагом Π²ΠΏΠ΅Ρ€Ρ‘Π΄ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с HTTP 1.x. И Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ HTTP/2 ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ ΠΊΠ°ΠΊ SPDY, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ вСрсии HTTP. Π’Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ смогут ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ слоТных ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ…Π°ΠΊΠΎΠ² ΠΏΡ€ΠΈ создании Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сайтов ΠΈ сСрвисов.
ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° HTTP/2 с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния SEO

SEO-ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ Π»Π΅ΠΆΠΈΡ‚ Π³Π΄Π΅-Ρ‚ΠΎ посСрСдинС ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°ΡƒΠΊΠΎΠΉ ΠΈ искусством. Из-Π·Π° услоТнСния ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… популярными поисковиками, Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ нСчСстныС SEO-ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΡƒΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ поисковой Π²Ρ‹Π΄Π°Ρ‡ΠΈ. И Π² соотвСтствии с этим ΠΎΠ½Π»Π°ΠΉΠ½-компаниям Π½ΡƒΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ свои стратСгии ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³Π°. НСобходимо Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ ΠΈΠ½Π²Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² созданныС с нуля, Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ сайты, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π½Π΅ просто скорости, Π° прСвосходной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, бСзопасности ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π°. Π­Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поисковыС Π²Ρ‹Π΄Π°Ρ‡ΠΈ с Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ сайтами, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ Π² использовании для всСй Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ процСссы поисковой ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ выходят Π·Π° Ρ€Π°ΠΌΠΊΠΈ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ΠΎΠ²ΠΎΠΉ фронтэнд-Ρ‚Π°ΠΊΡ‚ΠΈΠΊΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром. SEO-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π±Ρ‹Π»ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ Ρ„ΠΈΠ³ΡƒΡ€Π°ΠΌΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³Π°, потСряли свои ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ с появлСниСм Π½ΠΎΠ²Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ. И ΠΏΡ€Π΅ΠΎΠ±Π»Π°Π΄Π°Π½ΠΈΠ΅ срСди Π½ΠΈΡ… HTTP/2 ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΠ΅Ρ‚ ΠΎ тСктоничСском сдвигС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ заставляСт Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΎΠ»ΠΎΠ³ΠΎΠ² Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ Ρ‡Π΅Ρ€Ρ‚Ρ‘ΠΆΠ½Ρ‹ΠΌ доскам.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ для поисковой ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ сСгодня являСтся Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΈ оптимизация инфраструктуры для HTTP/2 ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅Ρ‰Π°ΡŽΡ‰ΠΈΡ… прСимущСств Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Онлайн-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΡ‚Ρ€Π°Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚ нСдостаточности Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎΠΉ органичСской ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π±Π°Π·Ρ‹, Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ сСбС ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°Ρ‚ΡŒ HTTP/2, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡΠΌΠΈ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния SEO. Π’Π΅Π΄ΡŒ этим компаниям приходится ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΏΠΎΡ‡Π²Π΅ ΠΈΠ½Π½ΠΎΠ²Π°Ρ†ΠΈΠΉ с растущими сСтСвыми бизнСс-импСриями, ΠΈ высоко Ρ€Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΎΠ½Π»Π°ΠΉΠ½-сСрвис поднимСтся Π΅Ρ‰Ρ‘ Π²Ρ‹ΡˆΠ΅ благодаря Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ HTTP/2 Π½Π° сторонС сСрвСров.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ HTTPS, SPDY ΠΈ HTTP/2


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠΎΠ² ясно ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ с ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠ° HTTP/2 ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ сТатиС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², инициативная ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… сСрвСром ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для ускорСния Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страниц, Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ тСстирования:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ этого тСста говорят Π½Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

  • Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² клиСнтского запроса ΠΈ сСрвСрного ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°: HTTP/2 дСмонстрируСт, Ρ‡Ρ‚ΠΎ использованиС сТатия позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°. ΠŸΡ€ΠΈ этом SPDY ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСрвСрного ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° для Π΄Π°Π½Π½ΠΎΠ³ΠΎ запроса. HTTPS Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.
  • Π Π°Π·ΠΌΠ΅Ρ€ сообщСния сСрвСрного ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°: Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° HTTP/2-сСрвСра оказался большС, Π½ΠΎ Π·Π°Ρ‚ΠΎ Π² Π½Ρ‘ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ»ΠΎΡΡŒ Π±ΠΎΠ»Π΅Π΅ стойкоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅.
  • ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… TCP-соСдинСний: ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ многочислСнных ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… запросов(ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) HTTP/2 ΠΈ SPDY ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ мСньшС сСтСвых рСсурсов, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, сниТаСтся Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°.
  • Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страницы: HTTP/2 постоянно Π±Ρ‹Π» быстрСС SPDY. HTTPS Π±Ρ‹Π» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΈΠ·-Π·Π° отсутствия сТатия Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… сСрвСром.

БраузСрная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° HTTP/2 ΠΈ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ


HTTP/2 ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ со стороны сСрвСров ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², Π² Ρ‚ΠΎΠΌ числС ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ…. Π Π°Π±ΠΎΡ‚Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… HTTP 1.x, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π° ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ HTTP/2 Π½Π° вашСм сайтС. Но ΠΈΡ… потрСбуСтся быстро ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ сСтСвыС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ β€” это языки общСния. На Π½ΠΎΠ²Ρ‹Ρ… языках ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ-Ρ‚ΠΎ понимаСшь Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. Π’Π°ΠΊ ΠΈ здСсь: ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP/2.
ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ настройкС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ HTTP/2 Π² своих Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… β€” Β«ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Ρ…Β» ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ…. Chrome ΠΈ Firefox Π΄Π°Π²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ эту Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ, Π° Π² Safari ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° HTTP/2 появилась Π² 2014. Π’ IE Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ начиная с Windows 8.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Android Browser, Chrome для Android ΠΈ iOS, Π° Ρ‚Π°ΠΊΠΆΠ΅ Safari Π² iOS8 ΠΈ Π²Ρ‹ΡˆΠ΅, ΡƒΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ HTTP/2. РСкомСндуСтся Π½Π° всякий случай ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ послСдниС ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ вСрсии ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ прСимущСства Π² бСзопасности.

БСрвСрная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°: Apache ΠΈ Nginx

Π’Π»Π°Π΄Π΅Π»ΡŒΡ†Ρ‹ ΠΎΠ½Π»Π°ΠΉΠ½-сСрвисов, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… локально ΠΈΠ»ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅, для добавлСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ HTTP/2 Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои сСрвСры. Богласно ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с языками, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с сСрвСров Ρ‚ΠΎΠ»ΡŒΠΊΠΎ посрСдством HTTP/2, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ с этой Ρ†Π΅Π»ΡŒΡŽ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ ΠΈ сконфигурированы.

Nginx-сСрвСры, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ 66% всСх Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π²Π΅Π±-сСрвСров, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ…Π²Π°ΡΡ‚Π°Ρ‚ΡŒΡΡ встроСнной ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ HTTP / 2. А для обСспСчСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ HTTP/2 Π½Π° Apache, Π½ΡƒΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ mod_spdy. Он Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Google для внСдрСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² Apache 2.2 Ρ‚Π°ΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ сТатиС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π­Ρ‚ΠΎ ПО Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π² Π΄Π°Ρ€ Apache Software Foundation.

Как Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTP/2?


Для настройки HTTP/2 Π½Π° своём сайтС Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ этой простой инструкциСй:
  1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ HTTPS:
    • ΠŸΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚ΠΈΡ‚Π΅ Π² ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ сСртификат SSL ΠΈΠ»ΠΈ TLS.
    • АктивируйтС сСртификат.
    • УстановитС сСртификат.
    • ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ сСрвСр для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTPS.
  2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ базовая сСтСвая инфраструктура Π²ΠΊΠ»ΡŽΡ‡Π°Π»Π° Π² сСбя ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ HTTP/2 Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сСрвСрного ПО. Π‘Π΅Ρ€Π²Π΅Ρ€Ρ‹ Nginx ΠΈΠΌΠ΅ΡŽΡ‚ Π½Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ, Π² Apache ΠΎΠ½Π° появилась Π² октябрС 2015 (Π² вСрсии 2.4). Π’ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ HTTP/2 Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ.
  3. ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅, сконфигурируйтС ΠΈ протСстируйтС ваши сСрвСры. Π—Π΄Π΅ΡΡŒ описана конфигурация ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ тСстирования для сСрвСров Apache. Π‘Π²ΡΠΆΠΈΡ‚Π΅ΡΡŒ со своим хостинг-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ ΠΈ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ваш сайт Π³ΠΎΡ‚ΠΎΠ² ΠΊ использованию HTTP/2.
  4. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ HTTP/2 Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ этим инструмСнтом.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅


Нас ΠΆΠ΄Ρ‘Ρ‚ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΠ΅ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ прСвосходство HTTP/2. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» уровня прилоТСния, ΠΏΠΎΡ…ΠΎΠΆΠ΅, нСсёт Π² сСбС наслСдиС HTTP 1.x, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΡΠ΅Ρ‚ΡŒ благодаря своим Ρ€Π΅Π²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ возмоТностям ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Но HTTP/2 дСмонстрируСт Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ тСхнологичСскоС прСвосходство Π½Π°Π΄ своим ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠΎΠΌ, Ρ‡Π΅ΠΌ HTTP 1.x Π² своё врСмя.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, использованиС HTTP/2 β€” это лишь ΠΎΠ΄ΠΈΠ½ шаг Π½Π° ΠΏΡƒΡ‚ΠΈ ΠΊ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ скорости Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страниц. Π’ нашСм Пособии ΠΏΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Π΅Π±-сайта для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… описано, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ быстрыС сайты, ΠΊΠ°ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΡƒΠ·ΠΊΠΈΠ΅ мСста ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ стратСгичСскиС бизнСс-прСимущСства Π΄Π°Ρ‘Ρ‚ Π²Ρ‹ΡΠΎΡ‡Π°ΠΉΡˆΠ°Ρ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π΅Π±-сайта.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ вСрсии ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP: ΠΊΠ°ΠΊ влияСт вСрсия HTTP прилоТСния Π½Π° взаимодСйствиС

ЗдравствуйтС, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ посСтитСли сайта ZametkiNaPolyah.ru. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ Π·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ HTTP Π² Ρ€ΡƒΠ±Ρ€ΠΈΠΊΠ΅ Π‘Π΅Ρ€Π²Π΅Ρ€Ρ‹ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΈ Π΅Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». Π’ этой ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ Ρ‚ΠΎ, ΠΊΠ°ΠΊ прилоТСния ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π²Π΅Ρ€ΡΠΈΡŽ HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠΌ слСдуСт ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами ΠΏΡ€ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ вСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

ΠœΡ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ сущСствуСт Ρ‚Ρ€ΠΈ вСрсии HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΈ чСтвСртая вСрсия находится Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ совсСм Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ с HTTP, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, станСт ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ вСрсия HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° являСтся Π΅Π³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ влияСт Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄ΡƒΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ собой ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ вСрсии ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» для указания вСрсии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ°: маТорная.минорная. ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ сСрвСру ΠΏΡ€ΠΈ установкС соСдинСния ΠΏΠΎ HTTP – это вСрсия HTTP, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для общСния. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ вСрсии HTTP Π΅ΡΡ‚ΡŒ свои особСнности ΠΈ тонкости. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ HTTP 1.1.

Когда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ стандарта HTTP ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ сСмантику HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΌΠΈΠ½ΠΎΡ€Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ HTTP. Когда мСняСтся Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° HTTP сообщСний ΠΈΠ»ΠΈ, ΠΊΠΎΠ³Π΄Π° измСняСтся Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ сообщСний, Ρ‚ΠΎ мСняСтся маТорная вСрсия HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

Π― ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», Ρ‡Ρ‚ΠΎ вСрсия HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° указываСтся Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС сообщСния, ΠΎΠ±Ρ‰ΠΈΠΉ синтаксис выглядит Ρ‚Π°ΠΊ:

HTTP-Version   = Β«HTTPΒ» Β«/Β» 1*DIGIT Β«.Β» 1*DIGIT 

HTTP-Version   = Β«HTTPΒ» Β«/Β» 1*DIGIT Β«.Β» 1*DIGIT 

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ HTTP вСрсии:

HTTP/1.0 ΠΈΠ»ΠΈ HTTP/1.1

HTTP/1.0

 

ΠΈΠ»ΠΈ

 

HTTP/1.1

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎ трСбования HTTP? Π’Π°ΠΊ Π²ΠΎΡ‚ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ HTTP Π²Π΅Ρ€ΡΠΈΡŽ Π² свои запросы ΠΈΠ»ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹. ВСрсия HTTP, указанная Π² сообщСниС, Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ условно совмСстимо с Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ вСрсиСй HTTP.

HTTP вСрсия прилоТСния

HTTP вСрсия прилоТСния – это самая высокая HTTP вСрсия, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅) являСтся, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, условном совмСстимым, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ трСбования HTTP.

НСкоторыС прилоТСния ΡƒΠΌΠ΅ΡŽΡ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ HTTP вСрсии, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ поля HTTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π’ΠΎ всСм ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠΈ HTTP ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²Ρ‹Π΄Π΅Π»ΠΈΠΌ прокси-сСрвСра. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ HTTP Ρ‡Π΅Ρ‚ΠΊΠΎ прописываСт Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ вСрсий HTTP ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. ΠŸΡ€ΠΎΠΊΡΠΈ-сСрвСр Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ сообщСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с вСрсиСй HTTP Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚. Напомним сСбС, Ρ‡Ρ‚ΠΎ сСрвСрноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ прокси-сСрвСром Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ выполняСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСпосрСдствСнно ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ прокси-сСрвСра, Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ Π΅Ρ‰Π΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌ сСрвСром, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ.

ПодвСдСм ΠΈΡ‚ΠΎΠ³: HTTP ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ вСрсии позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ вСрсиСй HTTP слСдуСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ прилоТСниям ΠΈ ΠΊΠ°ΠΊΡƒΡŽ максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ HTTP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ Π² коммСнтариях ΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π»ΡƒΡ‡ΡˆΠ΅, с ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ZametkiNaPolyah.ru!

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *