10-08-2010, 11:05 AM
(Modification du message : 10-08-2010, 11:40 AM par Sephi-Chan.)
Oui, tu peux utiliser une requête XMLHTTPRequest (décompose l'acronyme pour le mémoriser XML HTTP Request) ou une iframe, peu importe, l'idée est de charger de manière asynchrone une page qui va mettre du temps à répondre afin de faire durer la connexion : dès que le serveur aura des données à envoyer au client, il enverra la réponse que le client recevra avant de lancer une nouvelle connexion qui dure, etc.
Voici un petit article pour implémenter cette technique (nommée Comet) avec PHP : Zeitoun.net - How to implement COMET with PHP.
Le truc, c'est que c'est une mauvaise idée d'utiliser Apache dans le rôle du serveur qui met du temps à répondre : il n'est pas fait pour ça. C'est pour ça que des serveurs comme APE ont été crées, mais il en existe d'autres (qui sont scalable mais pas forcément dédiés à implémenter Comet) comme NodeJS.
Il y a plusieurs difficultés à surmonter avec ce genre de serveurs : il faut réussir à faire communiquer le serveur Comet avec le serveur de jeu, par exemple.
Sephi-Chan
Voici un petit article pour implémenter cette technique (nommée Comet) avec PHP : Zeitoun.net - How to implement COMET with PHP.
Le truc, c'est que c'est une mauvaise idée d'utiliser Apache dans le rôle du serveur qui met du temps à répondre : il n'est pas fait pour ça. C'est pour ça que des serveurs comme APE ont été crées, mais il en existe d'autres (qui sont scalable mais pas forcément dédiés à implémenter Comet) comme NodeJS.
Il y a plusieurs difficultés à surmonter avec ce genre de serveurs : il faut réussir à faire communiquer le serveur Comet avec le serveur de jeu, par exemple.
Sephi-Chan