Какво трябва да знаят собствениците на уебсайтове за HTTP
Защо беше необходим HTTP/2?
HTTP/1.1 не може да се справи с натоварването.Протоколът има ограничение за броя на едновременните връзки и страниците със съдържание се зареждат бавно. За да ускорите, можете да изберете оптимизация на ниво сайт: свържете CDN, настройте кеширане, обединете няколко елемента в един, премахнете незадължителни знаци от javascript и CSS стилове, разпространете сайта на различни хостове и т.н. Някои техники се оказват ефективни, но някои не могат да бъдат наречени патерици.
Фундаменталното решение на проблема - подобряването на протокола - беше подето от инженерите на Google още през 2009 г. Те направиха сериозна оптимизационна работа и се роди протоколът SPDY. Наистина ускорява сайтовете, протоколът се поддържа от почти всички браузъри, но има нужда от сървърна поддръжка, за да работи, а има модули само за Apache и Nginx.
Новият HTTP/2 разчита на SPDY.В същото време той е обратно съвместим с HTTP/1.1: няма нужда да прехвърляте сайта към новия протокол точно сега - известно време ще работи на стария, само че малко по-бавно.
Пазар на творчески работилници
Коса препоръчва: онлайн курсове на IKRA, където всеки ученик може да научи меки компетенции, без да напуска работа, и да прилага знания към реални проблеми, без да напуска дома.
Защо HTTP/2 е по-бърз
Множество заявки се изпращат в рамките на една и съща връзка. В HTTP/1.1 се установява отделна TCP връзка за всяка заявка за текст, стилове или изображение и броят на едновременните TCP връзки е ограничен. Поради това страниците с много статично съдържание се зареждат по-бавно. Когато използвате HTTP/2, браузърът го правимножество заявки в рамките на една и съща връзка - това се нарича мултиплексиране. Статичните елементи се зареждат паралелно и скоростта на сайта расте.
Подобрява сигурността. HTTP/2 не изисква криптиране, но наложителите на тенденциите в браузърите Google Chrome и Mozilla Firefox са приели HTTP/2 протокола само за криптирани връзки. Ако мислите да преминете към HTTP/2, първо преместете сайта си към HTTPS. Като бонус ще получите подобрена позиция в резултатите от органичното търсене на Google и използване на HTML5 функции на 100% - например геолокация.
Какво да търсите при оптимизиране
HTTP/2 е обратно съвместим с HTTP/1.1. Това означава, че няма нужда да бързате с прехвърлянето на сайта към новия протокол - известно време той ще работи почти както преди.
Постепенно, докато популярни уеб сървъри и уеб браузъри мигрират към HTTP/2, сайтът ще започне да се забавя. Това е не само пряко свързано с протокола, но и с техниките за оптимизиране на сайта - това, което работи за HTTP / 1.1, ще стане неуместно или ще се забави с HTTP / 2.
Продължете да комбинирате изображения в спрайтове. В HTTP/1.1, за да се ускори зареждането, малките изображения бяха комбинирани в едно - спрайт файл. Браузърът направи една заявка вместо стотици и зареди сайта по-бързо. Мултиплексирането в HTTP/2 реши този проблем, въпреки че комбинирането на изображения от една страница подобрява компресията и намалява общото количество изтеглени данни.
Трябва да спрете да вграждате изображения с DataURI и конкатенация. В HTTP/2 е най-добре да не вграждате изображения с помощта на URI адреси за данни. Този трик често се използва с JS и CSS конкатенация, за да се заобиколи ограничението за броя на HTTP заявките. Поради това потребителят изтегля многодопълнителни файлове, има трудности с кеширането. Ако HTTP заявките не изискват значителни разходи за ресурси, тогава е напълно възможно да се направи без него. Зареждането на много малки стилови файлове не е проблем. Също така няма да има проблеми с изтичането и кеширането.
Вече не е необходимо шардинг на домейн. HTTP/1.1 има ограничение за броя отворени връзки, за да го заобиколите, трябва да изтеглите статични ресурси от няколко поддомейна. Тази техника се нарича шардинг на домейн: използва се по правило за ускоряване на зареждането на страници с голям брой изображения. С HTTP/2 можете да поискате толкова ресурси, колкото са ви необходими, и няма нужда да разпространявате съдържание между поддомейни. Освен това шардингът ще намали производителността, тъй като ще създаде допълнителни връзки и ще забави изтеглянията.
Кога трябва да планирате мигриране към HTTP/2?
Няма еднозначен отговор на този въпрос - всичко зависи от характеристиките на вашия проект.
HTTP/2 вече се поддържа от Chrome, Firefox, Opera, Edge, Safari - ако повечето от вашите посетители използват тези браузъри, тогава трябва да помислите за смяна.
Къде да намерите технически подробности
Ако планирате да преминете към HTTP/2, изпратете техническата версия на статията на вашия уеб администратор или програмист.