Je connais pas l'exclusion mutuelle mais ça m'a l'air un peu relou à mettre en place. Avec erlang, j'ai un process qui représente un vaisseau par exemple. Si deux joueurs tirent en même temps sur mon vaisseau, les deux appels vont être traités chacun leur tour donc à la fin du premier, mon vaisseau aura sa vie diminuée (et éventuellement enregistré en base de données) avant de traiter le second appel.
Pour php ce que tu demande n'existe simplement pas. à la limite tu peux stocker des variables dans APC mais ça ne protège pas des race conditions.
Ou alors avoir un script PHP qui tourne en boucle et qui écoute sur un port mais la c'est nul car quitte à communiquer entre plusieurs processus, autant oublier PHP pour des long-running-process. Le seul avantage de PHP dans ce cas là c'est de pouvoir réutiliser le code de ton appli. Mais rien n'empêche ton long-running-process de lancer des scripts PHP.
Check celluloid à mon avis c'est le mieux.
Ah, et tu devrais aussi regarder Erlang juste pour ta culture perso, ça vaut le coup
Pour php ce que tu demande n'existe simplement pas. à la limite tu peux stocker des variables dans APC mais ça ne protège pas des race conditions.
Ou alors avoir un script PHP qui tourne en boucle et qui écoute sur un port mais la c'est nul car quitte à communiquer entre plusieurs processus, autant oublier PHP pour des long-running-process. Le seul avantage de PHP dans ce cas là c'est de pouvoir réutiliser le code de ton appli. Mais rien n'empêche ton long-running-process de lancer des scripts PHP.
Check celluloid à mon avis c'est le mieux.
Ah, et tu devrais aussi regarder Erlang juste pour ta culture perso, ça vaut le coup