En 2009, Google dévoile SPDY, un nouveau protocole permettant de réduire la durée de chargement des pages Web en ordonnant les fichiers selon leur priorité et en optimisant leur transfert, de façon à ce que ces fichiers soient transmis en une seule connexion (on parle de multiplexage). SPDY a été utilisé comme base pour l’HTTP/2 dont la spécification vient d’être validée.
C’est pour ces raisons que nous avons déployé SPDY sur notre moteur Fasterize et que l’HTTP/2 arrivera dans quelques semaines.

Qu’est-ce que SPDY ?(prononcé “Speedy”)

Ce nouveau protocole permet de :

  • compresser les headers des requêtes et des réponses (contrairement à l’HTTP 1.1). La bande passante est réduite lorsque les headers sont similaires (par exemple des cookies), puisqu’ils seront mieux compressés.
  • multiplexer les requêtes au serveur :
    1. on économise l’établissement de multiples connexions entre le client et le serveur.
    2. les requêtes sont effectuées simultanément par le navigateur. On ne doit plus attendre la fin d’une requête pour en envoyer une autre. En ce sens, une ressource à faible priorité (par exemple une image) ne bloquera plus une ressource plus prioritaire (tel qu’un CSS).
  • pousser activement les ressources du serveur au navigateur, avant même que celui-ci ne les demande (par exemple le serveur enverra les CSS et JS référencés dans une même page avant que le navigateur ait analysé celle-ci)

SPDY déployé chez Fasterize

En attendant l’HTTP/2, chez Fasterize on a choisi de deployer SPDY. Cette feature profitera aux utilisateurs de Chrome, Firefox, Safari et Opéra et impactera ainsi la majorité des utilisateurs d’Android et iOS.

Nos clients peuvent ainsi déjà bénéficier de la plus-value de cette nouvelle feature. A cette heure-ci, seul le push du serveur reste à exploiter. Nous développerons cette nouvelle fonctionnalité dans les mois à venir.

Les résultats de SPDY made by Fasterize

Les impacts de cette nouvelle feature sont, à ce stade, déjà très intéressants.
SPDY

En effet ces deux waterfalls nous montrent le comportement du navigateur avec et sans SPDY. Dans le premier cas, le téléchargement de la page se fait en escalier. Les requêtes se suivent.
Dans le second cas, celui où l’on utilise SPDY, on peut voir que le chargement se fait en simultané. On gagne donc un temps non négligeable sur le temps de chargement de la page (environ 13% de gain sur le temps de chargement de la page et 30% sur le Speed Index dans l’exemple ci-dessus) et ce sans aucune modification sur le code de la page !

Vous souhaitez tester l’impact de SPDY et de nos autres optimisations sur votre site web ?

A lire aussi :


Hello SMX Paris !