Programmering

Hvordan stille inn machine.config-innstillinger for forbedret ytelse

Å justere innstillingene i konfigurasjonsfilene dine i ASP.Net kan gi en fin ytelsesforbedring. Disse filene inkluderer machine.config og web.config.

Web.config-filen er applikasjonsspesifikk og opprettes som standard når du oppretter et webapplikasjon eller et nettsted i Visual Studio. Merk at det er en annen konfigurasjonsfil som heter aspnet.config - den er tilgjengelig fra ASP.Net 2.0 og utover. Denne filen er tilgjengelig i roten til .Net Framework-mappen i systemet ditt. Maskinkonfigurasjonsfilen heter i mellomtiden machine.config og ligger i% runtime installasjonsstien% \ Config-katalogen.

Mens innstillingene i web.config-filen bare gjelder for applikasjonen, gjelder innstillingene i filen machine.config hele maskinen. Merk at filen machine.config installeres når du installerer .Net Framework i systemet. Du kan bare ha én machine.config-fil i systemet ditt (en per system), og den ligger i katalogen \ WINDOWS \ Microsoft.Net \ Framework \ vXXXX \ CONFIG.

Det bør bemerkes at innstillingene som er definert i filen machine.config overstyres av de som er definert i web.config-filen i applikasjonen din. Et program kan ha flere web.config-filer. Forresten arver web.config-filen innstillingene som er definert i machine.config.

Anbefalte innstillinger for maskin.konfig

I denne delen vil vi utforske innstillingene som kan brukes på filen machine.config for ytelsesgevinster. Merk at standardverdiene og anbefalte verdier er spesifisert mot hver innstilling.

maksforbindelse

Du kan tilpasse system.Net-innstillingene i machine.config-filen din for å tillate at flere samtidige forespørsler blir servert av applikasjonen din. Standardverdien er 2 mens den anbefalte verdien er 12 per CPU.

   

       

   

Her er de anbefalte innstillingene for prosessmodellen i maskinen.config-filen for ytelsesfordeler. Du kan tilpasse innstillingene i prosessmodellen i maskinen.config-filen for å kontrollere arbeidertråder, I / O-tråder, etc. Merk at en tråd er den minste utførelsesenheten i en prosess.

memoryLimit

Denne innstillingen brukes til å spesifisere prosentandelen av det totale systemminnet som prosessen vil bruke. Standardverdien er 40. Den anbefalte verdien for denne innstillingen avhenger av mange faktorer. Slike hensyn inkluderer (men er ikke begrenset til) følgende:

  • Hvis applikasjonen er installert i en isolert boks
  • Forekomst av minnelekkasjer i applikasjonen

maxWorkerThreads

Denne innstillingen brukes til å definere det maksimale antall arbeidertråder som er tilgjengelig i trådgruppen til et gitt tidspunkt. Et trådbasseng består av et antall tråder, eller en samling tråder for å være presis, og den kan brukes til å utføre flere aktiviteter i bakgrunnen. MSDN sier: "En trådgruppe er en samling arbeidstakertråder som effektivt utfører asynkrone tilbakeringinger på vegne av applikasjonen. Trådgruppen brukes primært for å redusere antall applikasjonstråder og sørge for styring av arbeidertrådene."

Standardverdien på maxWorkerThreads er 20 per prosessor, og den anbefalte verdien er 100.

minWorkerThreads

Denne innstillingen bestemmer minimum antall arbeidertråder som er tilgjengelige i trådgruppen for å tilfredsstille en innkommende forespørsel. Standardverdien er 1 mens den anbefalte verdien er maxWorkerThreads / 2. Så hvis du har definert maxWorkerThreads som 100 i filen machine.config, bør du angi 50 som minWorkerThreads.

maxIOThreads

Denne innstillingen brukes til å definere maksimalt antall tråder som er tildelt for å utføre inngangsutgang (I / O) -operasjoner. Slike operasjoner inkluderer databaseoperasjoner, samtaler til webtjenester, tilgang til filsystemet, etc. Standardverdien er 20 per CPU, mens en verdi på 100 anbefales.

minIOTråder

Dette brukes til å definere minimum antall I / O-tråder som er tilgjengelige i trådgruppen på et bestemt tidspunkt. Standardverdien er 1 mens den anbefalte verdien er maxIOThreads / 2. Hvis du har definert maxIOThreads som 100 i filen machine.config, bør du nevne 50 som minIOThreads.

Sett det hele sammen

La oss nå sette alle disse innstillingene i bruk. Følgende kodeliste illustrerer de typiske innstillingene i en machine.config-fil basert på de anbefalte innstillingene beskrevet tidligere i artikkelen.

 

        

            

        

    

    

        

maxWorkerThreads = "100"

maxIoThreads = "100"

minWorkerThreads = "50"

minIoThreads = "50"

         />

    

$config[zx-auto] not found$config[zx-overlay] not found