17-06-2012, 09:33 AM
Le plus simple est de pas utiliser directement Websocket, qui est de toute façon trop incompatible pour être très fiable (mais selon les besoins, ça peut ne pas être problématique). Il existe plusieurs solutions qui embarquent un serveur et un ou plusieurs clients.
Pourquoi plusieurs clients ? Parce que quand on utilise un serveur de push, les navigateurs ne sont pas les seuls clients, l'application Web en est un aussi.
De nombreux serveurs de push existent. Certains sont basés sur Node, d'autres non. Certains utilisent une technologie tierce en guise de message broker, d'autres non. C'est notamment le cas de ma solution préférée, Juggernaut qui utilise le mécanisme de publish/subscribe de Redis. Du coup, tous les langages sont compatibles avec ce serveur dès lors qu'ils disposent d'un client Redis (même si on utilise souvent un wrapper, la gem Juggernaut pour Ruby, la classe Juggernaut for PHP pour PHP, etc.).
D'un point de vue fonctionnel, ça se met en place en quelques étapes. On installe Node et NPM, on installe Redis, on lance le serveur Juggernaut, on ajoute la lib Javascript dans le navigateur.
Après, au niveau du développement c'est assez simple, il suffit de suivre la documentation du client qu'on utilise (aussi bien côté navigateur que côté application Web).
Pourquoi plusieurs clients ? Parce que quand on utilise un serveur de push, les navigateurs ne sont pas les seuls clients, l'application Web en est un aussi.
De nombreux serveurs de push existent. Certains sont basés sur Node, d'autres non. Certains utilisent une technologie tierce en guise de message broker, d'autres non. C'est notamment le cas de ma solution préférée, Juggernaut qui utilise le mécanisme de publish/subscribe de Redis. Du coup, tous les langages sont compatibles avec ce serveur dès lors qu'ils disposent d'un client Redis (même si on utilise souvent un wrapper, la gem Juggernaut pour Ruby, la classe Juggernaut for PHP pour PHP, etc.).
D'un point de vue fonctionnel, ça se met en place en quelques étapes. On installe Node et NPM, on installe Redis, on lance le serveur Juggernaut, on ajoute la lib Javascript dans le navigateur.
Après, au niveau du développement c'est assez simple, il suffit de suivre la documentation du client qu'on utilise (aussi bien côté navigateur que côté application Web).