J'ai une application qui s'exécute sur deux instances AWS différentes et j'aimerais activer des sessions "persistantes" ou "persistantes" basées sur IP afin de pouvoir tirer parti des technologies de socket Web d'une manière particulière.
J'ai deux configurations différentes qui impliquent toutes deux ip_hash
d'activer ces sessions persistantes.
Dans la première configuration, les processus d'application s'exécutent sur la même instance que la configuration Nginx. Cela fonctionne , les sessions sont persistantes comme prévu.
upstream my_app {
ip_hash;
# local servers
server 127.0.0.1:3001 weight=100 max_fails=5 fail_timeout=300;
server 127.0.0.1:3002 weight=100 max_fails=5 fail_timeout=300;
keepalive 8;
}
Dans la deuxième configuration, je pointe vers des instances externes et j'essaie d'obtenir le même effet. Cette configuration ne fonctionne pas . En d'autres termes, les sessions sont toujours équilibrées en charge.
upstream my_app {
ip_hash;
# external servers
server 111.11.11.11:3001 weight=100 max_fails=5 fail_timeout=300;
server 222.22.22.22:3002 weight=100 max_fails=5 fail_timeout=300;
keepalive 8;
}
Suis-je en ip_hash
train d' utiliser correctement? Comment puis-je activer des sessions IP «persistantes» pour les serveurs externes?