Olen kasutanud Alibaba Cloud SLB koormuse tasakaalustajat üle 5 aasta ning alates esialgsest Alibaba Cloudi sisemisest beetaversioonist ning pärast juurutust tekkis järgmine viga:
Vead esinevad aeg-ajalt, pärast esmast käivitamist ei teki 502 gateway viga, pärast minuti ootamist ilmub viga, Windows Server IIS konteiner ASP.NET veebileht.
Klõpsa serverist IIS-i, et avada brauser, saad tavaliselt sirvida, SLB koormuse tasakaalustamine kaudseid probleeme, see on esimene kord, kui nendega kokku puutun.
Lahus:
Probleem ilmneb peamiselt "Tervisekontrolli meetodi" seadetes, vaikimisi seaded on järgmised:
Tausta tervisekontroll on nõutud peamises osas ning kui vastav olekukood tagastab 2xx või 3xx, loetakse tagapõhja server normaalseks.
Proovisime päise päringut teha kolmel viisil: esiteks juhtisin otse kohalikku projekti ja testisin seda kohapeal.
Test 1:
Kasuta postiljoni testi, nagu allpool näidatud:
Tagasi 404 Not Found seisundi juurde, tegelikult teame siin, mis selle põhjustas.
Test 2:
Kasuta curl-testi, nagu allpool näidatud:
C:\Users\itsvse>curl -i -X HEAD http://localhost:60155/
Warning: Setting custom HTTP method to HEAD with -X/--request may not work the
Warning: way you want. Consider using -I/--head instead. HTTP/1.1 404 ei leitud
Cache-Control: private
Content-Length: 4432
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/10.0
X-SourceFiles: =?UTF-8?B?QzpccHJvamVjdFxteVxDb2RlU2hhcmluZ1xDb2RlU2hhcmluZy5XZWJVSVxIb21lXEVycm9yNDA0?=
X-Powered-By: ASP.NET
Date: Tue, 13 Aug 2019 03:53:04 GMT
curl: (56) Recv failure: Connection was reset
Samuti tagastati 404 staatuskood.
Test 3:
Seekord testisime otse ametlikul serveril, PowerShelli all curl-testi kaudu, nagu alloleval joonisel näidatud:
Näed, et sama lehekülg on nõutud läbi pea,Mõnikord naasevad404staatuskood, mõnikord tagastatud200Staatuskood, kinnitades seega alguses esinenud vahelduvaid 502 viga.
Mis põhjustab asp.net aeg-ajalt 404 ja 200 olekukoodide tagastamist?
Kuna meie avalehel on vahemälu, siis kui kasutaja kasutab get meetodit avalehe pärimiseks, salvestatakse leht edukalt vahemällu ning siis head ja get tagastavad alati vahemällu salvestatud lehe ning tagastavad ka 200 vastuse koodi, kui pärast vahemälu aegumist ei tee ükski kasutaja get meetodi päringut, vaid ainult pea meetodi päringu käsu kaudu, tekib 404 viga. Arvatakse, et vähesed inimesed puutuvad sellise probleemiga kokku.
Lahendus on kontrollida kõiki vastuse olekukoode tervisekontrolli režiimis, nagu alloleval joonisel näidatud:
Kuidas lahendada 7. kihi kuulamise (HTTP/HTTPS) tervisekontrolli kõrvalekaldeid:Hüperlingi sisselogimine on nähtav.
(Lõpp)
|