

L’équipe de Chrome s’efforce de maintenir la vitesse de son navigateur à tout moment. Dans le cadre de ce processus, nous avons récemment apporté des améliorations pour réduire les interactions lentes, contribuant ainsi aux Core Web Vitals.
Les navigateurs multiprocessus comme Chrome gèrent plusieurs charges de travail, notamment le CPU, la mémoire et les files d’attente internes. L’analyse des données d’utilisation de Chrome a révélé que les appels synchrones récurrents à la récupération des cookies du site entraînaient des ralentissements.
Les cookies, également connus sous le nom de cookies HTTP, sont essentiels au web mais posent des problèmes dans les environnements multiprocessus. La spécification web exige de récupérer les cookies de manière synchrone, ce qui bloque les opérations.
**Une solution innovante : le versioning de la mémoire partagée**
Nous avons résolu ce problème en adoptant un nouveau paradigme appelé versioning de la mémoire partagée. Cette technique associe à chaque valeur de « document.cookie » une version croissante. Les moteurs de rendu mettent en cache leur dernière lecture de « document.cookie » avec la version correspondante. Le service réseau stocke la version de chaque « document.cookie » dans la mémoire partagée.
En vérifiant la version dans la mémoire partagée, les moteurs de rendu peuvent déterminer si leur version est à jour sans envoyer de requête interprocessus.
**Résultats impressionnants**
Cette optimisation a réduit les messages interprocessus liés aux cookies de 80 % et accéléré les accès à « document.cookie » de 60 %. En combinant cela avec d’autres améliorations, nous avons réduit les interactions les plus lentes d’environ 5 % sur toutes les plateformes.
**Impact sur les utilisateurs**
Les tests ont confirmé que la réduction des requêtes de cookies a considérablement amélioré les interactions lentes pour les utilisateurs. Cela a conduit à davantage de sites Web passant les Core Web Vitals, ce qui se traduit par une navigation plus fluide.
**Conclusion**
Le versioning de la mémoire partagée est une avancée majeure qui optimisera considérablement l’expérience utilisateur sur le web. Nous restons engagés à identifier et à résoudre les goulots d’étranglement pour offrir un Internet plus rapide et plus convivial à tous.
**Mots-clés :** optimisation des performances, Core Web Vitals, multi-processus, versioning de la mémoire partagée, cookies HTTP
