|
|
Postat pe 14.06.2020 11:50:26
|
|
|
|

Folosesc load balancing de la Alibaba Cloud de mai bine de 6 ani și folosesc nginx de mai bine de 6 ani.
Echilibrarea sarcinii se bazează pe structurile rețelei existente și oferă o modalitate ieftină, eficientă și transparentă de a scala echipamentele de rețea și lățimea de bandă a serverelor, de a crește debitul, de a îmbunătăți capacitățile de procesare a datelor în rețea și de a spori flexibilitatea și disponibilitatea rețelei. Echilibrul de încărcare înseamnă că este distribuit către mai multe unități de operare, cum ar fi servere web, servere FTP, servere de aplicații critice pentru întreprinderi și alte servere critice pentru misiune, pentru a îndeplini împreună sarcinile de lucru. Pe scurt, distribuie mai multe cereri către servere diferite în backend pentru a reduce presiunea asupra fiecărui server și a asigura o disponibilitate ridicată, chiar dacă un server se blochează, nu are niciun impact.
În primul rând
Am instalat node.js nativ și am instalat http-server pentru a emula două containere web. (Folosește IIS sau implementează protocolul HTTP cu propriul tău cod)
După instalarea node.js, rulează următoarea comandă:
Simularea a două site-uri backend
Am creat două foldere noi, site1 și site2, sub directorul E:\wwwroot, fiecare cu un fișier index.html în el.
Conținutul este: index 1 by:itsvse.com și index 2 by:itsvse.com
Apoi, ascultă cele două porturi HTTP cu următoarea comandă pentru a deschide cele două site-uri.
Încearcă să accesezi ambele stații separat:Autentificarea cu hyperlink este vizibilă. Autentificarea cu hyperlink este vizibilă.Randările sunt următoarele:
Configurația echilibrării încărcării NGINX
Descarcă versiunea pentru Windows a nginx la următoarea adresă:Autentificarea cu hyperlink este vizibilă.
Odată descărcat, extrage-l în directorul E:\wwwroot\nginx-1.18.0. Modifică fișierul E:\wwwroot\nginx-1.18.0\conf\nginx.conf astfel:
Pornește programul nginx cu următoarea comandă:
nginx -s oprește oprirea rapidă nginx -s a renunțat la oprirea grațioasă Nginx -S reîncărcare schimbând configurația, inițierea proceselor noi de lucru cu o configurație nouă, oprire grațioasă a proceselor vechi de lucru nginx -s redeschide redeschiderea fișierelor de jurnal Accesarea site-ului de echilibrare a încărcării nginx printr-un browser:Autentificarea cu hyperlink este vizibilă.
Reîmprospătăm și revizităm de multe ori și constatăm că conținutul returnat este diferit de fiecare dată, iar puteți vedea că nginx distribuie cereri diferite către diferite servicii http pe backend,Încercând să oprim site-ul site1, vedem că nu afectează accesul nostru normal, iar nginx redirecționează toate cererile către site2。
Starea configurației echilibrării încărcării Nginx
| stat | Prezentare generală | | Jos | Serverul actual nu participă momentan la echilibrarea încărcării | | Rezervă | Serverele de backup rezervate sunt activate atunci când toate celelalte servere sunt blocate | | max_fails | Numărul de cereri eșuate permise, dacă numărul cererilor eșuate depășește limita, oprește serverul din pool-ul de servicii virtuale după fail_timeout timp | | fail_timeout | După o eșec max_fails, serviciul pune timp pe pauză, max_fails valoarea fail_timeout trebuie setată | | max_conns | Limitează numărul maxim de conexiuni pentru diferite configurații hardware de server |
Politica de programare a echilibrării încărcării Nginx
| Algoritmi de programare | Prezentare generală | | Pollot | Interogați unul câte unul, metoda implicită | | Greutate | Sondajul ponderat, cu cât greutatea este mai mare, cu atât șansa de distribuție este mai mare | | ip_hash | Alocarea rezultatelor hash-ului din accesul la adresa IP va determina solicitări de la aceeași adresă IP pentru accesarea unui server fix în fundal | | url_hash | Atribuiți în funcție de rezultatul hash al URL-ului vizitat | | least_conn | Numărul minim de linkuri, serverul cu mai puține linkuri va fi atribuit | | Valoarea cheii hash | Cheia personalizată hash |
Pentru mai multe informații despre configurațiile nginx, vezi:Autentificarea cu hyperlink este vizibilă.
|
Precedent:Divizarea logarimului Nginx și ștergereaUrmător:Conceptul și diferența dintre ITO, BPO, KPO și cele trei
|