Ich versuche einfach, das Lastenausgleichs-Verfahren von Nginx zu erlernen, und verfüge über einen sehr einfachen Node.JS-Hello-World-Server, von dem 4 Instanzen auf den Ports 3001–3004 laufen.
Ich möchte die Last zwischen ihnen verteilen, aber proxy_pass funktioniert nicht. Kann mir bitte jemand helfen?
Unten ist meine nginx.conf-Datei. Nginx läuft in WSL Ubuntu
events {
}
http {
upstream allbackend {
server 127.0.0.1:3001;
server 127.0.0.1:3002;
server 127.0.0.1:3003;
server 127.0.0.1:3004;
}
access_log /path/to/log/nginx/access.log;
error_log /path/to/log/nginx/error.log;
server {
listen 8888;
location / {
# return 200 "hello from nginx"; # only this works
proxy_pass http://allbackend; # this fails
}
}
}
Antwort1
Fest.
Das Problem bestand darin, dass ich Node-Server in meinem lokalen (nicht WSL-)Windows ausführte, während Nginx in WSL lief.
Nachdem ich die Knotenserver in WSL gestartet hatte, funktionierte alles reibungslos.