Отправка 400 HTTP / 1 запросов приводит к загрузке ЦП на 90%,
в то время как отправка 150 HTTP / 2 запросов приводит к загрузке ЦП на 80%.
Почему HTTP / 2 требует больше ресурсов ЦП по сравнению с HTTP / 1 при использовании команды curl?
Отправка 400 HTTP / 1 запросов приводит к загрузке ЦП на 90%,
в то время как отправка 150 HTTP / 2 запросов приводит к загрузке ЦП на 80%.
Почему HTTP / 2 требует больше ресурсов ЦП по сравнению с HTTP / 1 при использовании команды curl?
Судя по вашим комментариям, вы не сравниваете подобное. Вы сравниваете:
Лучшее сравнение было бы:
И тогда я ожидал бы, что цифры будут похожими или даже немного в пользу HTTP / 2.
HTTPS добавляет некоторые накладные расходы на HTTP-запросы и , хотя это не особенно заметно для большинства веб-сайтов в настоящее время с увеличением количества процессоров на большинство серверов, тесты производительности, которые делают один запрос (в отличие от типичного веб-сайта, который делает несколько запросов для страницы, CSS, Javascript и т. д.), будут иметь пропорционально большее влияние, как вы заметили, потому что первый запрос имеет , чтобы завершить рукопожатие HTTPS для настройки шифрования. Для веб-сайта, который выполняет несколько запросов по одному и тому же соединению, стоимость этого первого запроса становится пропорционально меньше по мере использования большего количества запросов.
HTTPS становится нормой и ожидается на веб-сайтах теперь, когда браузеры все чаще выделяют небезопасные сайты только с HTTP (например, Google Chrome, Firefox и Apple Safari), на мой взгляд, всем сайтам следует как можно скорее перейти на HTTPS. HTTP / 2 помогает в этом, поскольку дает улучшения производительности и доступен только через HTTPS для как идеологических, так и технических причины.