Middle
Фарқи байни HTTP/1 ва HTTP/2 чист?
sobes.tech AI
Ҷавоб аз AI
Асосӣ фарқиятҳо:
- Мултиплексинг (Multiplexing). HTTP/2 имкон медиҳад, ки чандин дархост ва ҷавоб дар як вақт тавассути як пайванди TCP ирсол ва қабул карда шаванд. HTTP/1.1 барои ҳар дархост/ҷавоб пайванди алоҳида талаб мекард (ғайр аз механизмҳои
pipelining, ки маҳдудият доштанд). - Тавсифи сарлавҳаҳо (Header Compression). HTTP/2 аз алгоритми HPACK барои фишурдани сарлавҳаҳо истифода мебарад, то андоза ва миқдори маълумотро, ки интиқол дода мешавад, кам кунад. Дар HTTP/1.1 сарлавҳаҳо дар шакли матнӣ ирсол мешаванд.
- Приоритети равандҳо (Stream Prioritization). Дар HTTP/2 муштарӣ метавонад приоритет барои равандҳои гуногун (дархостҳо/ҷавобҳо) таъин кунад, ки ба сервер имкон медиҳад, ки тартиби интиқоли маълумотро оптимизатсия кунад. HTTP/1.1 чунин механизм надорад.
- Пуши сервер (Server Push). HTTP/2 имкон медиҳад, ки сервер ба муштарӣ захираҳоро пеш аз он ки муштарӣ онҳоро талаб кунад, ирсол кунад, бо асоси пешгӯии зарурати онҳо барои намоиши саҳифа. Дар HTTP/1.1 муштарӣ бояд ҳар захираро равшан талаб кунад.
- Формати рамкаҳо (Binary Framing). HTTP/2 маълумотро дар шакли бинарӣ (рамкаҳо) интиқол медиҳад, ки парсингро осон ва самаранокиро дар муқоиса бо шакли матнӣ дар HTTP/1.1 баланд мебардорад.
Таблиғот дар ҷадвал:
| Нишондиҳанда | HTTP/1.1 | HTTP/2 |
|---|---|---|
| Пайвастшавӣ | Як пайвастшавӣ барои ҳар дархост (бе pipelining) |
Як пайвастшавӣ барои чанд равандҳо |
| Мултиплексинг | Надорад (ё маҳдуд аст pipelining) |
Бале |
| Фишурдани сарлавҳаҳо | Надорад | HPACK (бинарӣ фишуриш) |
| Приоритети равандҳо | Надорад | Бале |
| Пуши сервер | Надорад | Бале |
| Формати маълумот | Матн | Бинарӣ (рамкаҳо) |
| Head-of-Line блокировка | мавҷуд аст | То андозае бо мултиплексинг ҳал мешавад |
Маслиҳат дар HTTP/1.1:
// GET /index.html HTTP/1.1
// Host: example.com
// User-Agent: curl/7.68.0
// Accept: */*
Маслиҳат дар HTTP/2 (таҳлили рамкаҳо мураккабтар аст ва ба ҳамин тариқ намоиш дода намешавад):
// Дар HTTP/2 муошират дар сатҳи рамкаҳо (HEADERS, DATA ва ғайра) сурат мегирад,
// ки онҳо бинарӣ мебошанд ва аз корбар дар сатҳи барнома пинҳонанд.
// Намоиши онҳо дар шакли матнӣ осон нест.
// Сарлавҳаҳо фишурда мешаванд ва дар рамкаи HEADERS интиқол дода мешаванд.
// Танаи ҷавоб дар рамкаи DATA интиқол дода мешавад.