Sponsorisé par le Ministère de l'Éducation Nationale depuis 2020, le développement de l'application DiViM-S a représenté un défi technique : contrôler un pool de 150 serveurs de visio-conférence BigBlueButton pour adapter automatiquement le nombre de serveurs actifs au nombre de participants et de salles. Afin d'atteindre une efficacité maximale de l'application et de rendre possibles des temps de réactivité de quelques secondes le programme fait appel massivement au parallélisme disponible nativement dans PHP depuis la version 7.2 avec l'extension PHP/Parallel.

Sont ainsi parallélisés aussi bien les appels à l'API de l'hébergeur (Scaleway) que les sondages des serveurs BigBlueButton.

La conférence présentera tout d'abord les attentes fonctionnelles et les réalisations pratiques du projet, puis l'architecture de l'application utilisant le moteur PHP sous Docker, ensuite définira ce que l'on entend par "parallélisme" et décrira enfin, en détail, comment ont été implémentées les fonctionnalités de parallélisme natives de PHP.

Lien de l'application sur GitHub : https://github.com/arawa/divims
Documentation de PHP/Parallel : https://www.php.net/manual/fr/book.parallel.php

Comments

Comments are closed.