La parole est aux speakers : Kevin Dunglas

Publié le

Jusqu’à l’AFUP Day 2022, 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

Le Prométhée moderne : embarquer PHP dans Go

Go est un langage "compatible C" : on peut appeler du code C depuis Go, et du code Go depuis C. PHP, lui, est écrit en C.

Théoriquement, on pourrait donc embarquer PHP directement dans un programme écrit en Go, au hasard, dans un serveur web.

Est-ce possible ? C'est ce que nous découvrirons au cours de ce talk : nous plongerons dans les entrailles de PHP pour comprendre comment l'interpréteur fonctionne, et comment on peut l'interfacer avec un serveur web. Nous découvrirons ensuite certaines caractéristiques typiques de Go telles que les Goroutines et son serveur HTTP natif, et comment on peut en tirer partie pour améliorer les performances de nos applications PHP.

Nous verrons ensuite que ce syncrétisme, qui peut sembler loufoque au premier abord, offre des opportunités inédites :

  • simplifier vos déploiements en embarquant directement un serveur web, l'interpréteur PHP et votre code source dans un seul binaire
  • conserver les services des applications Symfony ou Laravel chargés dans la mémoire du serveur web, et s'en servir pour traiter plusieurs requêtes HTTP
  • écrire des fonctions en Go (ou en C, voir même en assembleur) et les appeler directement depuis le code PHP
Le Gymnase
20/05/2022
11:45-12:25

Comme toujours, ta conférence semble super intéressante. Faut-il connaître le langage Go pour la suivre ?

Non, ce n’est pas nécessaire ! Je présenterai les grands concepts du langage qui vont nous servir. Ceci dit, c’est un excellent langage, ça ne peut pas faire de mal de l’étudier !

Tu travailles de plus en plus avec des langages comme Go, Rust, etc. Quelle(s) fonctionnalité(s) de ces langages modernes souhaiterais-tu voir intégrer dans les prochaines versions de PHP ?

Il y a bien entendu des choses desquelles la communauté PHP peut s’inspirer dans ces langages et dans leurs écosystèmes. Ce fût par exemple le cas pour les attributs PHP, qui reprennent pour partie la syntaxe des attributs de Rust. Ceci dit, ce sont des langages plus bas niveau que PHP. Ils me semblent surtout complémentaires, et c’est bien le sujet de cette conférence ! Les fonctionnalités “iconiques” de Go et de Rust (les goroutines en Go, l’emprunt “borrowing” en Rust) ne sont pas particulièrement adaptées au modèle de PHP, qui est plutôt fait pour pouvoir développer vite et bien que pour avoir les meilleures performances possibles quitte à introduire une plus grande complexité.

Vous venez de fêter les 10 ans de Les-Tilleuls.coop : sais-tu déjà ce que tu espères pour la scop d’ici 10 ans ?

Plus de coopérateurs, une présence dans plus de villes, et pourquoi pas dans plus de pays : que le modèle essaime le plus largement possible, que ce soit au sein des Tilleuls ou via de nouvelles structures au statut de Scop ou de Scic.

Une conférence présentée par

Kévin DUNGLAS
Kévin DUNGLAS
Kévin est le créateur du framework API Platform ainsi que des projets Mercure et Vulcain. Il est également membre de la Core Team Symfony et a cofondé la société autogérée Les-Tilleuls.coop.

Autres Interviews