Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 6864|Odgovoriti: 4

Praktična optimizacija Nginx HTTP zahteve sočasnosti

[Kopiraj povezavo]
Objavljeno na 16. 01. 2022 13:46:40 | | | |
Spletni program razvija asp.net jedro, brskalnik zahteva stran, strežnik pa mora skozi nginx obratni proxy do .NET programa obdelati, in med stresnim testom bo poročal o napaki 503:

Storitev 503 začasno nedosegljiva

503 je HTTP statusna koda zaradiZačasno vzdrževanje strežnika ali preobremenitev, strežnik trenutno ne more obdelovati zahtevkov。 To stanje je začasno in se bo sčasoma obnovilo.

Na splošno je napaka 503 večinoma posledica velikega števila obiskov spletnih strani, ki povzročajo napako zaradi prekomernega prometa ali velikega števila sočasnosti.

Po analizi sodnega principa obstaja veliko dejavnikov, ki povzročajo ozka grla v zmogljivosti, najprej pa je referenca na nastavitev Linuxa naslednja:

Linux (CentOS) omejuje nastavitev zmogljivosti strežnikov
https://www.itsvse.com/thread-10134-1-1.html

S pomočjo strokovnih orodij za testiranje pritiska so rezultati tlakovnih testov naslednji:

.NET/C# Preizkus obremenitve NBomber preprost vodič
https://www.itsvse.com/thread-9993-1-1.html



Nginx uglaševanje

worker_processes Nastavljeno na avtomatsko, kot sledi:

Naj se nginx samodejno prilagodi vašim potrebam.

Nastavitve dogodkov so naslednje:

Uporabite način epoll za povečanje števila sočasnih povezav, povečanje zmogljivosti sočasnih povezav sistema nginx in nastavitev največjega števila povezav, ki jih lahko delavci odprejo hkrati. Uvod v dokument:Prijava do hiperpovezave je vidna.

Po uglaševanju se izvede test tlaka in ni več napake 503, kot je prikazano na spodnji sliki:


Če uporabite nginx obratni proxy za posredovanje na php-fpm, se lahko pojavi naslednja napaka:

2022/01/16 16:08:01 [kritični udarec] 968#0: *12955 open() "/alidata/www/itsvse_web/50x.html" ni uspel (24: Preveč odprtih datotek), odjemalec: 100.116.153.2, strežnik:www.itsvse.com, zahteva: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", gostitelj: "www.itsvse.com"
2022/01/16 16:08:01 [opozorilo] 968#0: *12956 socket() ni uspel (24: Preveč odprtih datotek) med povezovanjem na upstream, odjemalca: 100.116.153.109, strežnik:www.itsvse.com, zahteva: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", gostitelj: "www.itsvse.com"
2022/01/16 16:08:01 [kritični udarec] 968#0: *12956 open() "/alidata/www/itsvse_web/50x.html" ni uspel (24: Preveč odprtih datotek), odjemalec: 100.116.153.109, strežnik:www.itsvse.com, zahteva: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", gostitelj: "www.itsvse.com"



Parametre worker_rlimit_nofile nastavite takole:



Dokumentacija:Prijava do hiperpovezave je vidna.

(Konec)





Prejšnji:Razlika in povezava med Ubuntu, CentOS in RedHat
Naslednji:Prenos orodja za upravljanje podatkovnih baz OceanBase
Objavljeno na 16. 01. 2022 21:02:14 |
Pridi in se spet uči
Objavljeno na 24. 01. 2022 11:18:47 |
Naučil sem se, hvala
 Najemodajalec| Objavljeno na 30. 03. 2023 10:01:36 |
nginx:413 Entiteta zahteve prevelika
https://www.itsvse.com/thread-10545-1-1.html
 Najemodajalec| Objavljeno na 30. 03. 2023 10:01:45 |
Nginx doda omogočen protokol HTTP/2
https://www.itsvse.com/thread-10307-1-1.html
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com