RIP HHVM. Le moment est venu de faire ses adieux à HHVM lorsqu’il s’agit de propulser vos sites WordPress. Nous ne prenons plus en charge ni ne proposons HHVM chez Kinsta. Elle n’a jamais été officiellement prise en charge et l’équipe de WordPress a cessé de la tester il y a plus d’un an. HHVM v3.30 sera également la dernière série de versions à prendre en charge PHP.

En raison de l’augmentation des problèmes de compatibilité, de la dégradation des performances et de la fin de la prise en charge de PHP, ce n’est plus une option viable pour les sites WordPress de production. Par conséquent, nous avons supprimé progressivement HHVM à partir du 20 août 2018, pour tous les clients.

Si vous utilisez actuellement HHVM sur vos sites, consultez les détails ci-dessous concernant l’impact de ce changement sur vous et ce que vous devez faire. Nous expliquons également pourquoi ce n’est pas un changement négatif.

Historique de HHVM

Avant de nous plonger dans les raisons pour lesquelles HHVM disparaît, examinons rapidement pourquoi Kinsta a commencé à le proposer en premier lieu.

Tout a commencé avec un petit (ou ce qui était un petit) site appelé Facebook. 😉 Il était à l’origine écrit en PHP et lorsque le site a commencé à décoller, la puissance de calcul nécessaire pour servir toutes les requêtes était hors normes. Cela était principalement dû à l’inefficacité des moteurs d’exécution PHP qui étaient disponibles à l’époque. Les ingénieurs et développeurs de Facebook ont donc eu une idée brillante. Au lieu d’acheter simplement plus de serveurs, pourquoi ne pas résoudre le problème au niveau du logiciel ?

Ils ont donc créé un compilateur PHP vers C++ nommé HPHPc. Le code PHP original a été compilé en binaires exécutables (la taille des fichiers atteignant parfois jusqu’à un gigaoctet !) et il a été exécuté au lieu d’être compilé en opcodes et interprété.

Cela a permis de multiplier les performances par six environ, ce qui est énorme ! Six fois plus rapide, cela peut sembler peu, mais si vous voyez les choses de la façon suivante, cela peut vous aider à relativiser. Au lieu de devoir acheter 600 serveurs pour alimenter un service web, vous n’en avez besoin que de 100. C’est une économie assez incroyable simplement due au fait que vous avez simplement changé la façon dont vous exécutez le code.

Cependant, comme vous pouvez l’imaginer, l’exécution et la maintenance de versions distinctes de HipHop pour le développeur et le débogueur (appelées respectivement HPHPi et HPHPd), ainsi que la distribution de gigaoctets d’exécutables sur chaque machine après seulement quelques modifications du code (pensez aux corrections de bogues), sont rapidement devenues fatigantes et difficiles.

En 2013, Facebook a donc décidé de déprécier HPHPc, mais de recycler le code et les expériences acquises en l’ayant en production pendant au moins trois ans et de lancer la HipHop Virtual Machine (HHVM). Ce moteur a converti PHP en bytecode qui est ensuite converti en code machine 64 bits au moment de l’exécution par un compilateur just-in-time (JIT). Ce qui, à son tour, a entraîné des gains de performance encore plus importants ! 🚀

HHVM logo
HHVM

De nombreux sites exigeants et à fort trafic chez Kinsta ont utilisé HHVM au fil des ans et ont constaté des diminutions incroyables des temps de chargement. HHVM permet également la mise en cache des objets, qui est un système de mise en cache interne introduit par WordPress pour stocker les données de la base de données dans la mémoire PHP. Cela augmente l’efficacité de la base de données en réduisant le nombre d’appels à la base de données et accélère les temps d’exécution de PHP. Cela signifie que HHVM a toujours été formidable pour les sites plus dynamiques qui ont beaucoup de contenu non mis en cache.

Mais malheureusement, tout cela étant dit, HHVM a fait son temps lorsqu’il s’agit de WordPress et de PHP. Nous allons plonger ci-dessous dans les raisons.

HHVM n’est plus une option pour WordPress

Voici quelques-unes des nombreuses raisons pour lesquelles HHVM n’est plus une technologie adaptée à WordPress ou aux clients de Kinsta.

Tout d’abord, HHVM ne prend plus du tout en charge PHP depuis la version v3.30.

Ensuite, il est important de noter que HHVM n’a en fait jamais été officiellement pris en charge par WordPress. Elle a été rendue compatible grâce à certains membres de l’équipe du coeur de WordPress qui étaient obsédés par la vitesse (#27881). Certains hébergeurs WordPress, comme Kinsta, l’ont ensuite mis à disposition (nous l’avons lancé en 2016) des clients pour qu’ils puissent profiter des gains de performance supplémentaires.

WordPress a en fait cessé d’inclure HHVM dans son infrastructure de test de base à partir de mai 2017 (il y a plus d’un an). Voici ce que John Blackbourn, un développeur du cœur de WordPress, avait à dire à ce sujet :

Si vous exécutez un site web WordPress sur HHVM, vous devriez envisager de passer à PHP 7+ qui est bien plus largement pris en charge et testé, et qui offre tous les avantages en termes de mémoire et de performances que HHVM a poussés en avant.

Comme HHVM n’est plus testé par les membres de l’équipe du cœur de WordPress, des bogues et des problèmes de compatibilité ont commencé à apparaître. Nous avons été les témoins directs de bon nombre d’entre eux (#8194). Ce qui a commencé comme un mince filet d’échecs il y a près d’un an est devenu un flux constant d’échecs avec la dernière version de HHVM, et ils affectent maintenant la fonctionnalité d’extensions et de thèmes WordPress tiers populaires. Par conséquent, HHVM n’est plus une solution stable ou adaptée aux sites WordPress.

Au-delà de la prise en charge de l’hébergement HHVM, nos benchmarks PHP vs HHVM ont montré que PHP 7.2 est en fait plus rapide que HHVM. Pour la toute première fois, PHP a remporté le trophée dans tous les tests ; qui comprenaient un site WordPress autonome, WooCommerce et Easy Digital Downloads. 🏆

Benchmarks WordPress (PHP vs HHVM)
Benchmarks WordPress (PHP vs HHVM)

Et PHP 7.3 et 7.4 sont encore plus rapides. Consulte nos résultats détaillés des benchmarks PHP.

Benchmarks PHP de WordPress 5.0.
Benchmarks PHP de WordPress 5.0

Nous vous recommandons donc d’utiliser PHP 7.4 pour obtenir les meilleures performances. Nous proposons actuellement PHP 7.2, 7.3 et 7.4 dans le tableau de bord MyKinsta. Vous pouvez facilement passer d’un moteur PHP à l’autre en un seul clic.

Passage à PHP 7.4
Passage à PHP 7.4

Fin de vie de HHVM

Vous trouverez ci-dessous tous les détails et les délais concernant notre retrait progressif de HHVM.

  • Depuis le 15 juin 2018, le passage à HHVM n’est plus disponible depuis le tableau de bord MyKinsta. Important : Si vous êtes parti de HHVM après cette date, vous ne pouvez plus y retourner.
  • Le 20 août 2018, HHVM a été complètement supprimé. Cela signifie que tous les sites HHVM sont passés à PHP 5.6+ et que HHVM a été complètement supprimé du tableau de bord MyKinsta.

Passage de HHVM à PHP

Kinsta met régulièrement à jour les logiciels côté serveur pour que les choses restent à jour, non seulement pour la raison la plus élémentaire de sécurité mais aussi pour les performances.

Comme tout logiciel, PHP a un cycle de vie des versions qu’il doit respecter afin de continuer à faire avancer les choses et à apporter des améliorations. Chaque version majeure de PHP bénéficie généralement d’un support complet pendant deux ans après sa sortie. Pendant cette période, les bogues et les problèmes de sécurité sont corrigés et corrigés régulièrement.

Versions de PHP prises en charge pour WordPress
Versions de PHP prises en charge pour WordPress

Comme vous pouvez le voir ci-dessus, PHP 5.6 et 7.0 ont déjà disparu et la version 7.2 sera supprimée de la même manière vers la fin de 2020. C’est pourquoi nous vous recommandons vivement de passer à une version supérieure de PHP dès que possible, de préférence PHP 7.3 ou 7.4.

Pour vous aider à faire la transition, nous avons créé un tutoriel sur la façon de tester et de déplacer correctement votre site de HHVM à PHP. N’oubliez pas que certaines extensions ou thèmes peuvent avoir des problèmes de compatibilité avec les nouvelles versions de PHP. Vous devez donc suivre les étapes que nous avons décrites pour assurer une transition en douceur et sans temps d’arrêt. C’est aussi une autre raison pour laquelle nous avons prévenu tout le monde ! Pour tester avant la date limite.

Résumé

WordPress a eu un bon parcours avec HHVM et pour beaucoup d’entre vous, il a fourni des vitesses fulgurantes ! Mais ne vous inquiétez pas, vous devriez voir des vitesses encore plus rapides avec PHP 7.4. À long terme, nous sommes ravis de ce changement. D’une part, cela signifie qu’il n’y aura plus de confusion entre le moteur PHP que vous devez utiliser pour votre site. Cela signifie aussi que plus de temps sera consacré à l’amélioration du langage PHP de base en termes de performances sur la plateforme WordPress.

Si vous avez des idées ou des inquiétudes concernant notre retrait progressif de HHVM, n’hésitez pas à contacter notre équipe de support 24/7. Nous aimerions aussi entendre tes commentaires ci-dessous concernant le passage à PHP.

Brian Jackson

Brian a une grande passion pour WordPress, l'utilise depuis plus de dix ans et développe même quelques plugins de qualité. Brian aime les blogs, les films et les randonnées. Connectez avec Brian sur Twitter.