Dans le Web moderne, chaque milliseconde des performances de votre site compte. Cela dépend de la structure de votre site Web, mais à partir des tests effectués par CloudFlare et LoadImpact, votre site peut bénéficier de 20% à 200% + augmentation de la vitesse de passer au nouveau protocole HTTP / 2. Ce test illustre la différence de vitesse lors du chargement d’une page avec plusieurs requêtes.
HTTP / 2 est un protocole binaire qui n’utilise qu’une seule connexion par serveur. Il offre des performances TLS plus rapides, prend en charge une plus grande sécurité et simplifie vos applications Web. C’est une excellente solution pour la plupart des sites et CMS comme WordPress. Si vous souhaitez accélérer davantage votre site, nous avons 33 conseils supplémentaires ici.
Vous serez pas bénéficier depuis HTTP / 2 si votre application Web sert principalement de gros fichiers téléchargeables ou des flux multimédias. Dans ce cas, vous ne voulez probablement pas TLS, et le multiplexage n’offre aucun avantage lorsqu’un seul flux est utilisé.
Contents
Une introduction à HTTP / 2
HTTP / 2 est une révision majeure du cadre traditionnel de transmission de données Web HTTP / 1.1, qui a fidèlement servi le World Wide Web pendant quinze ans comme méthode principale de chargement des ressources Web via des connexions TCP.
Plutôt qu’une réécriture fondamentale du protocole, HTTP / 2 est plutôt une ré-expression du code HTTP et utilise les mêmes méthodes, codes d’état et sémantique de langage pour relever les défis auxquels est confronté le cadre HTTP hérité aujourd’hui. Principalement, HTTP / 2 cherche à réduire la latence de charge dans les pages Web en augmentant le nombre de demandes en attente qu’une page peut faire sans recourir à des «hacks» comme le partage de domaine, la concaténation et le sprint.
À quoi sert HTTP / 2 et pourquoi l’utiliser?
Développé par le groupe de travail HTTP d’Internet Engineering Task Force, HTTP / 2 est basé sur un protocole SPDY antérieur développé par Google et utilisé pour résoudre les problèmes d’escalade des coûts au sein de l’utilisation des données de leur centre de réseau et est composé de deux spécifications: à savoir Hypertext Transfer Protocol v. 2 et le format de compression d’en-tête HPACK.
La compression d’en-tête, en particulier, réduit considérablement le nombre d’aller-retour nécessaires pour charger complètement les données; cela est particulièrement utile pour les clients mobiles, où généralement vous verrez une latence aller-retour de quelques centaines de millisecondes. Le cadre SPDY / 2 a été choisi comme base du nouveau système et, depuis la mise en œuvre de HTTP / 2, Google a décidé de supprimer le support SPDY au profit des protocoles nouveaux et améliorés..
En fin de compte, améliorer vos performances d’hébergement.
Comment ça fonctionne
HTTP / 2 utilise des protocoles binaires par opposition aux protocoles textuels des frameworks HTTP / 1.x, car ces protocoles sont plus compacts et plus faciles à analyser «sur le fil».
Sur les conceptions plus anciennes, il y avait quatre façons pour une page d’analyser un message de ligne; dans le nouveau cadre, cela a été réduit à un seul appel. En plus de cela, le inclusion d’un support multiplex complet signifie que les problèmes de blocage en tête de ligne des protocoles hérités ont été éliminés, permettant à plus d’un message de demande et de réponse d’être «en vol» sur une seule connexion TCP à la fois.
Ceci est important car HTTP / 2 ne permet toujours qu’une seule connexion TCP, en partie du fait que la plupart des pages Web modernes utilisent plusieurs sources. Avoir plusieurs connexions à partir de divers points d’origine augmente l’utilisation des ressources réseau du navigateur au-delà de ce qui est raisonnable, donc HTTP / 2 utilise plutôt la poussée du serveur et la compression d’en-tête pour maximiser le transfert de données et l’efficacité.
Les applications qui ne sont pas des navigateurs, et encore plus celles qui utilisent des paquets comme la VoIP, devraient également pouvoir utiliser des connexions HTTP / 2.x à condition qu’elles utilisent déjà HTTP. Malgré cela, HTTP / 2 a jusqu’à présent été optimisé principalement pour l’utilisation du navigateur, car cela constitue l’utilisation principale du cadre.
Sécurité en ligne avec HTTP / 2
Jusqu’à présent, le groupe de travail HTTP n’a pas exigé l’utilisation de méthodes de chiffrement telles que Transport Layer Security (TLS); malgré cela, ils ont défini un profil TLS comprenant une liste noire de suite de chiffrement, et aucun navigateur ne prend actuellement en charge HTTP / 2 dans un état non chiffré. Les navigateurs qui prennent actuellement en charge les protocoles HTTP / 2 incluent Microsoft Edge, Safari, Firefox et Chrome.
Ces statistiques d’assistance concernent juillet 2017. Pour un état plus actuel, vous pouvez consulter le source ici.
Mise en œuvre des nouveaux protocoles
Pour la plupart, HTTP / 2 peut être implémenté sans prise en charge HTTP / 1.x préalable. Si vous n’implémentez pas les identificateurs ALPN (HTTP 1.1 Application-layer Protocol Negotiation), la prise en charge du chiffrement TLS est également possible. Cependant, pour HTTP / 2 sur TCP, vous devrez traiter une mise à niveau à partir de HTTP / 1.1.
Parallèlement à l’absence d’une exigence de chiffrement, HTTP / 2 présente quelques points faibles. Les cookies n’ont pas été beaucoup améliorés par rapport à HTTP / 1, et malgré leur nature relativement inoffensive, les cookies peuvent toujours être techniquement utilisés par les pirates pour accéder à vos systèmes privés..
Comment et quand changer
Commencer avec HTTP / 2 n’est pas trop difficile du côté client, tout ce que vous aurez à faire est de vous assurer que votre navigateur est à jour, car la plupart des principaux clients prennent en charge les nouveaux protocoles.
Côté serveur, cependant, il y en a un peu plus. Vous devrez vous préparer à vous éloigner des images-images, réduire la quantité de concaténation CSS et Java sur vos pages et préparer vos fragments de domaine pour la coalescence par HTTP / 2.
Pour ce faire, vous devez vous assurer que les deux URL partagées possèdent les certificats TLS requis. Si vous n’avez pas de contrôle direct sur les serveurs sur lesquels leurs pages sont déployées, il est probablement préférable d’attendre jusqu’à ce que vos serveurs soient mis à jour.
Vérifiez auprès de votre hôte
Enfin, parlez à votre Hébergement WordPress fournisseur ou administrateur de serveur afin de vérifier si vous êtes prêt pour HTTP / 2.
Une fois que vous avez confirmé que l’infrastructure est là, déployez les nouveaux protocoles au fur et à mesure que vos visiteurs en bénéficieront statistiquement. Si vous ne pouvez pas contacter l’hôte de votre serveur, il existe des outils open source disponibles en ligne que vous pouvez utiliser pour tester l’état de votre serveur comme celui-ci. outil de KeyCDN.
Assurez-vous de nous suivre sur top5hosting pour plus de bons conseils sur la façon d’optimiser vos projets et si vous avez plus de questions sur le protocole HTTP / 2, consultez le FAQ sur Github.