Puncte:0

IIS 8.5 și 10, valoare maximă care poate fi setată pentru solicitări/reciclare IIS?

drapel id

Conform DISA, ni se cere să setăm opțiunea de reciclare pentru solicitări. Se pare că nu pot urmări care ar trebui să fie valoarea maximă pentru aceasta sau când contorul este repornit? Dacă grupurile de aplicații sunt configurate să recicleze la miezul nopții, contorul de solicitări nu ar trebui să se reseteze la 0? Am stabilit ceea ce credeam că este o limită ridicată la 99.999, dar aceasta pare să fie lovită în fiecare zi în jurul prânzului pe toate cele 3 servere echilibrate. Uneori, la scurt timp după atingerea limitei de octeți privați (de asemenea, trebuie setat pe STIG, dar reprezintă aproximativ 70% din memoria totală a sistemului de operare), emiterea unei alte solicitări de reciclare, în care cred că fie sunt prea multe solicitări în coadă, fie colectarea gunoiului are probleme (deci cpu/mem spikes) pentru a emite o colectare completă a gunoiului în timpul volumului maxim de lucru. Am văzut că IIS 6.5 a avut 35.000 de solicitări, dar nu poate găsi o îndrumare bună cu privire la valoarea maximă pentru IIS 8.5 și IIS 10 (pentru când migrăm). Nu am observat că atingem limita de solicitări din cauza că înregistrarea în jurnal nu este activată implicit în IIS 8.5, dar este în IIS 10. De asemenea, am observat că pool-ul implicit de aplicații părinte este legat de site-ul implicit, unde certificatul ssl este obligat să se declanșeze un eveniment complet de colectare a gunoiului împotriva grupului de aplicații copil (probabil din cauza setărilor de configurare partajate pentru securitate). Dacă cineva are nevoie de un script la îndemână pentru a vă seta toate piscinele să recicleze la miezul nopții/activați înregistrarea pentru iis 8.5, acesta este mai jos.

Import-Module WebAdministration
Get-ChildItem âPath IIS:\AppPools | Pentru fiecare obiect{

$appPoolName = $_.name
$appPool = Obțineți elementul „IIS:\AppPools\$appPoolName”
$appPool.recycling.logEventOnRecycle = "Timp, Solicitări, Program, Memorie, IsapiNesănătos, La cerere, ConfigChange, PrivateMemory"
$appPool.Recycling.periodicRestart.time = „0”
clear-ItemProperty „IIS:\AppPools\$appPoolName” -Name Recycling.periodicRestart.schedule #clear values
set-ItemProperty „IIS:\AppPools\$appPoolName” -Name Recycling.periodicRestart.schedule -Value @{value="00:00:00"}
$appPool | Element stabilit

}
Lex Li avatar
drapel vn
La ce setare(e) te referi? `time` sub `periodicRestart`? Datele adecvate pe care ar trebui să le furnizați sunt de tip „timeSpan”, nu un număr întreg, https://docs.microsoft.com/en-us/iis/configuration/system.applicationhost/applicationpools/add/recycling/periodicrestirt/
Nicholas McQuillen avatar
drapel id
Nu, reciclați setarea din grupul de aplicații pentru solicitări. Scuze, am crezut că a fost clar. Este, de asemenea, în curs de repornire periodică, în măsura în care aplicația găzduiește fișierul xml
Nicholas McQuillen avatar
drapel id
Aceasta este o aplicație de formulare web care utilizează .net 4.8 ca cadru țintă și în prezent doar la EF 6.1 cu actualizări la 6.4 în proces (în principal pentru a folosi d functions.like pentru evaluări de șir mai bune decât .contains()). Nu sunt multe operațiuni care saturează, dar gc1 crește vertiginos în timpul complet gc până la contoarele de perfmon. Nu văd obiecte fixate substanțiale care să cred că compactele de la gcsever ar trebui să ușureze, așa că puțin confuz.
Lex Li avatar
drapel vn
Deci v-ați referit la „cereri” în https://docs.microsoft.com/en-us/iis/configuration/system.applicationhost/applicationpools/add/recycling/periodicrestirt/#attributes. Această setare nu are o limită superioară, cel puțin din schemă. Puteți seta orice valoare atâta timp cât este un „uint” valid.
Lex Li avatar
drapel vn
Vă rugăm să tratați reciclarea pool-ului de aplicații IIS separat de procesarea .NET GC, deoarece reciclarea pool-ului are loc chiar și pentru aplicațiile web non-.NET (ASP clasic, PHP și altele). Dacă încercați să analizați în continuare aplicațiile dvs. web cu ASP.NET/.NET ETW activat, puteți vedea ce face CLR/GC sub capotă, https://docs.microsoft.com/en-us/dotnet/framework/ performance/garbage-collection-etw-events și nu este nevoie să ghiciți ce se întâmplă.
Nicholas McQuillen avatar
drapel id
Lex Li, răspunsul tău la unitate era ceea ce căutam. Dacă îl adăugați ca răspuns, voi nota ca răspunsul dvs. Vă mulțumim pentru îndrumarea GC, am observat că GC complet are loc în același timp cu reciclarea piscinei, așa că va trebui să mă aprofundez puțin mai departe.
Puncte:0
drapel vn

Copiat din comentariu.

Dacă limităm sfera discuției la o anumită setare (alias cereri în Configurarea pool-ului de aplicații IIS), atunci acea setare nu are o limită superioară (cel puțin concluzionată din schema XML IIS).

Puteți seta orice valoare atâta timp cât este validă uint.

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.