Hello,
HAproxy pourrais te permettre tout cela je pense. On l’utilise pas mal chez nous et il fait le café (je ne sais pas pour le chocolat par contre .. )
Par contre, je crois que Nginx permet de faire du sticky session via cookie (je l’ai déjà mis en place mais sans le tester en production je dois l’avouer). Avec un configuration de ce genre : upstream critiques { # Tente de se connecter 3 fois, en cas d’échec down 30sec avant le nouveau test server 192.168.0.132:80 max_fails=3 fail_timeout=30s; server 192.168.0.133:80 max_fails=3 fail_timeout=30s; keepalive 30; } map $cookie_backend $sticky_critiques { # Test la variable cookie_backend et modifie sticky_backend suivant sa valeur pweb2 192.168.0.132:80; pweb3 192.168.0.133:80; # Par defaut renvoie sur le cluster default critiques; }
-- Thomas Cheronneau On 10 June 2016 at 10:27:16, Artur (frsag@pydo.org) wrote:
Bonjour les gens,
J'aurais besoin de vos conseils pour mettre en place un reverse proxy applicatif devant une application node.js qui utilise des websockets.
J'ai déjà un nginx qui fait ça, mais il y a quelques détails qui me posent problème (sticky sessions pas en natif, paramétrage incomplet) et j'aimerais savoir quelles sont les alternatives.
Le proxy doit pouvoir gérer les connexions http et https (terminateur tls) avec des backends en http et ws, savoir gérer les sticky sessions avec des cookies (pas par adresse IP d'origine).
Et être tolérant avec ses backends. Par exemple, pouvoir réessayer si jamais il y a un souci de connexion, ne pas basculer sur d'autres backends sans qu'on lui demande dans la config (sticky sessions !), supporter un nombre de connexions ouvertes importantes (dizaine de milliers de websockets), ne pas être trop gourmand en ressources. Il peut aussi faire le chocolat chaud... je bois pas de café. :p
Merci pour votre retour d'expériences.
-- Cordialement, Artur.
_______________________________________________ Liste de diffusion du FRsAG http://www.frsag.org/