PHPStreamServer est un serveur d'applications et un gestionnaire de processus écrit entièrement en PHP. Il réunit le service HTTP, la supervision de workers, les tâches planifiées, les logs et les métriques dans un runtime unique. Les applications restent chargées entre les requêtes, avec une exécution asynchrone via la boucle d'événements Revolt et AMPHP.
La version 0.9 est la plus importante du projet. Sur le plan architectural, PHPStreamServer exige désormais FFI pour appeler directement les API natives du système. Cela permet la vérification des identifiants pairs sur socket Unix, le parent-death signaling et la surveillance native des fichiers.
Les workers et les tâches planifiées peuvent maintenant être enregistrés et supprimés à l'exécution. Les commandes du bus de messages deviennent une API publique : les workers peuvent envoyer des requêtes directement au processus maître, par exemple pour démarrer ou arrêter des workers à la demande.
Le bus de messages sur socket Unix a été repensé avec la sécurité comme priorité. Il valide les identifiants pairs et applique une autorisation de source, ce qui empêche des utilisateurs locaux non privilégiés de gérer un serveur tournant sous un compte privilégié. La désérialisation est restreinte pour rejeter les payloads dangereux.
La surveillance des fichiers s'appuie désormais sur inotify sous Linux et FSEvents sous macOS, avec le polling en repli. Sous Linux et FreeBSD, les workers utilisent le parent-death signaling du système et se terminent au lieu de survivre en orphelins si le maître plante. Le démarrage du démon attend l'initialisation du maître avant de signaler le succès.
Le démarrage, l'arrêt, le rapport de crash et la livraison des logs des workers sont plus fiables, et le superviseur signale les sorties non nulles et les terminaisons par signaux. Le planificateur accepte les noms de jours et de mois, des presets comme @daily et des délais en fractions de seconde. La surveillance du trafic réseau par processus n'envoie plus que des deltas groupés via le bus, réduisant la surcharge IPC.
Le site de documentation phpstreamserver.dev a été refondu et les notes de version sont sur le dépôt GitHub. L'auteur souligne que PHPStreamServer reste expérimental et déconseillé en production, et sollicite les retours des utilisateurs de PHP longue durée, FrankenPHP, RoadRunner ou OpenSwoole.




Commentaires
Pas encore de commentaire — écris le premier.
Lance la discussion
Pas de compte ni de mot de passe — saisis simplement ton adresse e-mail et nous t’envoyons un lien de connexion à usage unique. Première visite ? Tout se met en place automatiquement.
Ton évaluation sera appliquée automatiquement après ta connexion.
Vérifie ta boîte mail
Nous avons envoyé un lien de connexion à …. Ouvre-le sur cet appareil — cet onglet te connectera automatiquement.
Rien reçu ? Vérifiez le dossier spam — et marquez le message « Non spam » pour qu'il arrive directement la prochaine fois.