Puncte:3

Limita Nginx max_conns pe mai multe servere

drapel br

Dacă am două blocuri de server într-un Nginx și ambele folosesc aceleași definiții în amonte. Cum ar funcționa limita max_conns în acest caz?

Presupun că ambele blocuri de server vor avea o limită de maximum 100 de conexiuni și 90 de menținere. Deci, în total, următoarele blocuri de server pot avea un total de 200 max_conns?

exemplu în amonte {
    server example.com:443 max_conns=100;
    keepalive 90;
}

 Server {

            asculta 1.1.1.1:80;
            nume_server proxy.site.net;
            proxy_pass https://exemplu
            proxy_bind 1.1.1.1 transparent;
 }
 
  Server {

            asculta 1.1.1.2:80;
            nume_server proxy.site.net;
            proxy_pass https://exemplu
            proxy_bind 1.1.1.2 transparent;
 }

Originea mea are o restricție de 100 de conexiuni simultane pe IP. Deci, împart traficul folosind IP-uri diferite pentru fiecare bloc de server.Deci, vreau să obțin 100 de conexiuni simultane pe bloc de server (sau pe IP public). Cum ar trebui să fac asta?

Scopul de a avea două blocuri de server este acela de a putea gestiona o cantitate dublă de cereri.

ACTUALIZAȚI:

Originea este un furnizor de cloud care a impus niște limite stricte pentru „conexiunile pe IP” pentru a evita supraîncărcarea. Originea spune că fiecare adresă IP poate avea până la 100 de conexiuni HTTP simultane. Dacă același IP încearcă să stabilească numărul de conexiune 101, originea ar arunca o eroare. Deci, vreau să folosesc două IP-uri pentru a avea capacitatea de a stabili 200 de conexiuni simultane la origine la un moment dat. Vă rugăm să ajutați dacă știți ce ar trebui schimbat în codul meu pentru a-l realiza. â

UPDATE 2:

Mai jos este cel mai recent cod pe care îl folosesc pentru a realiza 200 de solicitări pe secundă utilizând DNS round robin pe IP-urile publice ale serverului meu.

Am două IP-uri diferite care ascultă în două blocuri de server și două nume diferite în amonte pentru acele blocuri de server.

Presupun acum că, dacă 100 de persoane folosesc primul IP în DNS round-robin și următorii 100 folosesc al doilea IP, atunci voi putea deservi 200 de persoane simultan. Chiar dacă originea mea are o restricție de 100 de conexiuni pe IP.

Vă rog să-mi spuneți dacă acest cod arată corect?

exemplu în amonte {
    server example.com:443 max_conns=100;
    keepalive 90;
}

exemplu în amonte2 {
    server example.com:443 max_conns=100;
    keepalive 90;
}

 Server {

            asculta 1.1.1.1:80;
            nume_server proxy.site.net;
            proxy_pass https://exemplu
            proxy_bind 1.1.1.1 transparent;
 }
 
  Server {

            asculta 1.1.1.2:80;
            nume_server proxy.site.net;
            proxy_pass https://example2
            proxy_bind 1.1.1.2 transparent;
 }
djdomi avatar
drapel za
nu, vor avea 100 așa cum se stabilește mai sus, dar de ce vrei să-l folosești în acest moment?
drapel br
Tocmai am actualizat întrebarea, vă rugăm să citiți explicația de mai jos exemplu de cod.
djdomi avatar
drapel za
tot la fel, deoarece limita țintă este setată la 100. IMHO, nu ați schimbat nimic și o limită de 100 pe un singur IP nu ar fi un caz de utilizare obișnuit, un singur ip vă poate consuma toate conexiunile în acest caz, cred că tot aici este o problemă x și y și poate fi necesar să ne spuneți despre backend, în plus, cred că doriți să citiți [manualul](https://docs.nginx.com/nginx/admin-guide/security-controls/ control-access-proxied-http/)
drapel br
Originea este un furnizor de cloud care a impus niște limite stricte pentru „conexiunile pe IP” pentru a evita supraîncărcarea. Originea spune că fiecare adresă IP poate avea până la 100 de conexiuni HTTP simultane. Dacă același IP încearcă să stabilească numărul de conexiune 101, originea ar arunca o eroare. Deci, vreau să folosesc două IP-uri pentru a avea capacitatea de a stabili 200 de conexiuni simultane la origine la un moment dat. Vă rugăm să ajutați dacă știți ce ar trebui schimbat în codul meu pentru a-l realiza.
djdomi avatar
drapel za
adăugați asta ca actualizare, nu ca comentariu
drapel br
Vă rugăm să vă uitați la „actualizarea 2” din întrebare și să vedeți dacă mă poate ajuta să realizez mai mult de 100 de conexiuni simultan.
djdomi avatar
drapel za
ar putea funcționa, faceți încărcarea de test și verificați, nu trebuie să specificați un port implicit dacă este utilizat https pe 443, porturile sunt necesare numai în cazul în care nu este 80 pentru http sau 443 pentru jttos

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.