Jusqu’au Forum PHP, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !
La conférence
Peux-tu nous en dire plus sur l’avancement du protocole Vulcain ?
Vulcain propose deux très simples nouveaux en-têtes de requête HTTP qui permettent au serveur de deviner de quelles données le client aura besoin. Le serveur peut ensuite préparer et envoyer ces données le plus tôt possible, typiquement en utilisant HTTP/2 Server Push.
La version initiale de la spécification Vulcain a été publiée sous la forme d’un Internet-Draft en avril 2020.
Suite à cette publication, j’ai eu des retours très intéressants en provenance de la communauté eZ Publish et de l’auteur de la spécification Prefer-Push.
Grâce à ces échanges, il m’a été possible de rendre la spécification encore plus flexible et générique. Une nouvelle version intégrant ces changements a été publiée fin août. Elle ajoute une mécanique de sélection “hypermédia” relativement similaire à ce que propose Prefer-Push qui permet – en complément du mécanisme de sélection déjà existant – de récupérer des relations ayant un certain type, un certain format et/ou une certaine langue.
Désormais Vulcain utilise également les en-têtes HTTP structurés, qui sont en voie de devenir une RFC.
En parallèle à ce travail de fond sur la spécification, un énorme boulot a été effectué sur l’outillage afin de permettre une adoption plus large.
L’un des points de friction majeur pour une adoption massive de Vulcain est que la spécification doit être supportée par le serveur “edge” qui maintient la connexion avec le client.
Pour ce faire, nous travaillons d’arrache-pied sur deux fronts :
– proposer un meilleur support de Vulcain dans l’outillage existant, et je vous expliquerai ça en détail lors de ma session
– tenter d’améliorer les spécifications existantes pour permettre les usages novateurs tels que celui proposé par Vulcain (exemple : https://github.com/w3c/preload/pull/149).
Côté standardisation, la création d’un nouveau groupe de travail de l’IETF dédié aux API HTTP est actuellement en discussion. Si un tel groupe voit le jour, nous proposerons de discuter de Vulcain en son sein.
(suite…)