|
|
Zveřejněno 14.06.2020 11:50:26
|
|
|
|

Používám load balancing v Alibaba Cloud už více než 6 let a nginx používám už více než 6 let.
Load balancing navazuje na stávající síťové struktury a poskytuje levný, efektivní a transparentní způsob, jak škálovat šířku pásma síťového vybavení a serverů, zvyšovat propustnost, zlepšovat schopnosti zpracování síťových dat a zlepšovat flexibilitu a dostupnost sítí. Load balance znamená, že je distribuován mezi více operačních jednotek, jako jsou webové servery, FTP servery, podnikové kritické aplikační servery a další kritické servery, aby společně plnily pracovní úkoly. Jednoduše řečeno, distribuuje více požadavků na různé servery na pozadí, aby snížil tlak na každý server a dosáhl vysoké dostupnosti, i když jeden server zavěsí, nemá to žádný dopad.
Nejdřív ze všeho
Nainstaloval jsem node.js nativně a nainstaloval http-server, abych emuloval dva webové kontejnery. (Použijte IIS, nebo implementujte HTTP protokol vlastním kódem)
Po instalaci node.js spusťte následující příkaz:
Simulujte dvě backendové stránky
Vytvořil jsem dvě nové složky, site1 a site2, pod adresářem E:\wwwroot, každá s index.html souborem.
Obsah je: index 1 by:itsvse.com a index 2 by:itsvse.com
Poté poslouchejte oba HTTP porty následujícím příkazem k otevření obou webů.
Zkuste přistupovat k oběma stanicím zvlášť:Přihlášení k hypertextovému odkazu je viditelné. Přihlášení k hypertextovému odkazu je viditelné.Vizualizace jsou následující:
Konfigurace vyvažování zátěže NGINX
Stáhněte si verzi nginx pro Windows na následující adresu:Přihlášení k hypertextovému odkazu je viditelné.
Po stažení ji rozbalte do adresáře E:\wwwroot\nginx-1.18.0. Upravte soubor E:\wwwroot\nginx-1.18.0\conf\nginx.conf následovně:
Spusťte program nginx následujícím příkazem:
nginx -s zastavit rychlé vypnutí nginx-s ukončí elegantní vypnutí nginx -s znovu načítání změny konfigurace, spuštění nových pracovních procesů s novou konfigurací, elegantní vypnutí starých pracovních procesů nginx -s znovu otevřít logovací soubory Přístup na stránku nginx pro vyvažování zátěže přes prohlížeč:Přihlášení k hypertextovému odkazu je viditelné.
Obnovujeme a znovu procházíme mnohokrát a zjistíme, že vrácený obsah je pokaždé jiný, a můžete vidět, že nginx distribuuje různé požadavky na různé http služby na backendu,Když se snažíme stránku site1 zastavit, vidíme, že to neovlivňuje náš běžný přístup, a nginx přeposílá všechny požadavky na stránku site2。
Stav konfigurace Nginx load balancing
| stát | Přehled | | dolů | Současný server se prozatím neúčastní load balancing | | Záloha | Rezervované záložní servery jsou aktivovány, když jsou všechny ostatní servery zavěšené | | max_fails | Pokud počet neúspěšných požadavků překročí limit, pokud počet neúspěšných požadavků překročí limit, po fail_timeout čase server z virtuálního servisního poolu zruší | | fail_timeout | Po selhání max_fails služba pozastaví čas max_fails musí být nastavena hodnota fail_timeout | | max_conns | Omezit maximální počet připojení pro různé konfigurace serverového hardwaru |
Politika plánování zátěže Nginx
| Plánovací algoritmy | Přehled | | Pollot | Průzkum jeden po druhém, výchozí metoda | | Hmotnost | Vážené průzkumy: čím vyšší váha, tím větší šance na rozdělení | | ip_hash | Přidělení výsledků hashu z přístupové IP adresy způsobí, že požadavky ze stejné IP adresy přistupují k pevnému serveru na pozadí | | url_hash | Přiřadit podle hash výsledku navštívené URL | | least_conn | Minimální počet odkazů znamená přiřazení serveru s menším počtem odkazů | | hash klíč hodnota | Hash vlastní klíč |
Pro více informací o konfiguracích nginx viz:Přihlášení k hypertextovému odkazu je viditelné.
|
Předchozí:Nginx dělení a smazání logůDalší:Koncept a rozdíl mezi ITO, BPO, KPO a těmito třemi
|