Facebook muscle une nouvelle fois PHP
Afin de gagner en souplesse et accélérer toujours plus les performances de son imposante infrastructure Web, Facebook a initié des travaux autour d’une machine virtuelle, taillée sur mesure pour PHP, accompagné d’un compilateur à la volée (Jit - Just-In-Time).
Afin de gagner en souplesse et accélérer toujours plus les performances de son imposante infrastructure Web, Facebook a initié des travaux autour d’une machine virtuelle, taillée sur mesure pour PHP, accompagné d’un compilateur à la volée (Jit - Just-In-Time).
Ces travaux en cours d’élaboration, que l’on peut retrouver sur GitHub, visent bien sûr à compléter les développements entrepris en 2010 par le réseau social, pour muscler les performances de PHP - le langage sur lequel s’adosse la puissance artillerie du site. Ainsi naquit HipHop for PHP, un «transformateur» - comme le baptisait à l’époque l’équipe de Facebook - de code PHP en C++, qui intervenait avant la compilation. Si le gain en matière de performances était déjà présent - on parlait de 50% de réduction de l’usage des CPU -, celui en matière de processus de développement et de souplesse laissait à désirer. Un point que souligne d’ailleurs Jason Evans, ingénieur chez Facebook, sur le site.
L’idée a ainsi été de s’attaquer à la compilation dynamique du langage, mais à partir d’une machine virtuelle PHP, qui génère du code intermédiaire (bycode), interprété ensuite par un compilateur Jit, pour accélérer les développements.