Порівняння HTTP/1.1 vs HTTP/2 vs HTTP/2 + Server Push

2 хв. читання

Розробник Evert Pot опублікував дослідження, в якому порівнюються протоколи HTTP/1.1, HTTP/2 та HTTP/2 + Server Push. Оцінюється їхня продуктивність, методи отримання колекції ресурсів через ці протоколи, вплив даних в кеші та маніпуляцій з ресурсами на рівні логіки роботи застосунку (об'єднання ресурсів в єдиний JSON-блок).

Для першого тестування дослідник виконав 25 запитів. Результати виявились цілком передбачуваними: найповільніше запити передаються через HTTP/1.1 На другому місці індивідуальні HTTP/2-ріквести, цей результат дещо покращується за допомогою кешування або пуш-методу.

На цьому етапі продуктивність Firefox і Chrome була приблизно однаковою, але наявність даних в кеші не покращила ефективність, як очікувалось.

Screenshot-6

Однак під час більшого тесту Chrome працював повільніше за Firefox, коли передавалась значна кількість запитів. Firefox відставав від Chrome, коли застосовувався Server Push та під час використання HTTP/2 (і більшість даних тоді була в браузерному кеші).

Тож Chrome ефективніше працює з кешем, а Firefox краще обробляє зовнішні запити.

Тест на 500 запитів: Screenshot-7

Той самий тест, але без найповільніших результатів: Screenshot-9

Дослідник дійшов висновку, що HTTP/2 ефективно обробляє розділені запити великої колекції ресурсів. Об'єднання ресурсів у єдиний блок зазвичай мало впливає на результат, є зміст це робити, лише коли продуктивність має найвищий пріоритет. Якщо ж важливіше спростити логістику й API, найкращим варіантом буде роздільне опрацювання ресурсів.

Також з'ясувалось, що браузерний кеш з HTTP/2 не дуже впливає на ефективність обробки запитів. Server Push суттєво допомагає роботі Chrome, коли ресурсів стає багато, а от з Firefox він не надто ефективний.

Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Codeguida 1.7K
Приєднався: 1 рік тому
Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.

Вхід