Остання версія HTTP була створена ще в 1999 році. У 1999 році всі підключились до Інтернету за допомогою комутованого доступу. Інтернет був дуже повільним. Через 16 років справи значно змінилися, але протоколи, які ми використовуємо, не мають.
Відповіді, які ми не повинні наводити "тому, що це заважає кешуванню", є трохи оманливими, особливо в епоху надшвидкого Інтернету. Коли ви насправді робите розрахунки, часто є незначна різниця між часом завантаження з кешами-користувачами та користувачами, які холодно кешують, якщо ви вказали. Те, що є невелика різниця, притаманне не тому, що ви вказали, а через негнучку конструкцію HTTP / 1.1.
Протокол SPDY реалізує щось, що називається натисканням сервера . Це по суті вимагає вбудованого тексту із самого HTML-документа та у протокол. Розумний сервер буде знати, які ресурси у клієнта вже є. Тупий сервер просто надсилатиме все незалежно - це все одно буде користю для продуктивності, але може коштувати з точки зору пропускної здатності. Якщо браузер містить вміст у своєму кеші, він може просто відкинути вхідні копії. Сервер чекає, поки HTML завантажується, перш ніж надсилати додаткові ресурси - теоретично браузер може надіслати сигнал для скасування натискання сервера.
HTTP / 2.0 заснований на SPDY і, швидше за все, реалізує натискання сервера, але теоретично ви можете почати використовувати SPDY вже сьогодні. Тож справжня причина, яку ми не вказуємо, є однією із застарілих - протоколи, які існують на даний момент, є старими і не є досить гнучкими, щоб досягти "складання рівня протоколу".