Sto progettando un'applicazione che farà uso di WebSocket per informare rapidamente i visitatori quando si verificano cambiamenti. Sto progettando di eseguire il proxy delle connessioni con Nginx, in modo che possano condividere lo stesso indirizzo della porzione HTTP normale. Una cosa di cui mi preoccupo è l'esaurimento delle porte effimere. In passato, ho notato problemi quando il numero di connessioni tra Nginx e il backend Node supera 25000. La mia domanda è: la seguente configurazione aumenterebbe il limite a 100K?Proxying connessioni WebSocket ed esaurimento porta temporanea
upstream backends {
server 127.0.0.1:5000;
server 127.0.0.2:5000;
server 127.0.0.3:5000;
server 127.0.0.4:5000;
}
Il limite per i file aperti dovrà essere aumentato di conseguenza, ovviamente.
Supponendo che la tecnica funzioni, può essere utilizzata con server esterni? Quanto è difficile assegnare un intervallo di indirizzi IP a un'interfaccia? Il networking non è il mio forte ...
Per un singolo server: porta combo, il limite teorico superiore delle connessioni dovrebbe essere il numero di possibili client-ip: combo porta-client, che è molto. Non dovresti mai nemmeno avvicinarti ad esaurire le tue porte effimere. O non capisco la domanda? – greim
@greim - Penso che la domanda si riferisca alle porte effimere tra il proxy Nginx locale e il servizio websocket locale - quindi l'IP client è sempre lo stesso. Questo ti darebbe un limite superiore difficile di ~ 65K connessioni (qui si applicano le limitazioni del numero di porte) diviso per due (una porta per il client proxy e una per il servizio) ... ma questa è solo un'ipotesi, sto aspettando qualcuno più esperto a rispondere. – Myst