Programmering

Bedste fremgangsmåder til forbedring af applikationsydelse i ASP.Net

Der er mange faktorer, der påvirker applikationsydelsen for webapplikationer. Essensen for at forbedre applikationsydelsen er at sikre, at du bygger applikationer, der bruger den mindste mængde hukommelse og kræver den mindste mængde behandling for at producere den ønskede output.

For at opnå dette skal du overholde de anbefalede retningslinjer og teknikker, der er med til at forbedre, optimere og øge ydeevnen for din webapplikation. I dette indlæg vil jeg diskutere de vigtigste anbefalinger, som du skal følge for at forbedre applikationsydelsen og lydhørheden af ​​webapplikationer, der er bygget ved hjælp af ASP.Net.

Reducerer sideindlæsningstid

For at reducere sidens indlæsningstid på dine websider skal du minimere scripts og CSS-filer og undgå for store billeder, overflødige tags og indlejrede tabeller. Undgå at bruge serverkontroller (medmindre der er en specifik grund til at bruge dem) for at minimere størrelsen på dine websider.

Du bør også undgå unødvendige rundrejser til webserveren for at lette hurtigere sideindlæsninger. Du kan drage fordel af Page.IsPostback-ejendommen for at undgå unødvendig serverbehandling på en rundtur og dermed reducere netværkstrafikken. En anden teknik, du kan følge, er præ-kompilering - du kan pre-kompilere websiderne i din applikation for at reducere arbejdssættets størrelse. Du kan også indstille AutoEventWireup-attribut til "falsk" i filen machine.config, så runtime ikke behøver at søge efter hver af begivenhedshåndtererne på en webside.

  

    

      

    

  

Når du indstiller denne egenskab til falsk, kobles sidehændelserne ikke automatisk, hvilket eliminerer muligheden for, at den samme begivenhed bliver kaldt to gange, når siden udføres.

Du skal samle de scripts og css, der bruges af dit program, så meget som muligt. Udnyt asynkrone opkald fra websiden til serversidemetoderne, når det er muligt - dette hjælper din webside med at være lydhør.

Statsledelse

Du bør undgå at bruge ViewState for at lette hurtigere sideindlæsninger. Husk, at hver byte, der føjes til en webside ved at aktivere dens ViewState, vil medføre to byte netværkstrafik - en byte i hver retning, dvs. fra serveren til klienten og den anden fra klienten til serveren. Du bør også fjerne format-koden runat = "server" fra din webside, hvis du ikke har brug for at bruge ViewState. Dette sparer dig omkring 20 byte af sidestørrelsen.

Caching er en anden tilstandsstyringsteknik, der er tilgængelig for dig - brug den med omhu til at gemme relativt uaktuelle data i hukommelsen. Du kan cache websiderne eller en del af dine websider i cache, hvis det er nødvendigt. Datacaching kan bruges til at øge applikationens ydeevne, da læsning af data fra cachehukommelsen er relativt hurtigere end at læse de samme data fra en fil eller database.

Du bør optimere din kode for at sikre, at du bruger ressourcer (hukommelse og processor osv.) Med omtanke - jeg skriver et separat indlæg om dette.

Ressourcestyring

Korrekt ressourcehåndteringsteknik, hvis den følges, kan i høj grad øge din applikations ydeevne. Du skal erhverve ressourcer (filhåndtag, databaseforbindelser osv.) Sent og bortskaffe dem tidligt. Du skal skrive din kode på en sådan måde, at objekterne ikke promoveres til højere generationer - husk, at affaldssamleren arbejder meget oftere i de lavere generationer end i de højere. Du skal bruge Bortskaff og færdiggør passende for at rydde op i de ikke-administrerede ressourcer, du bruger i din applikation. Det er en god praksis at pakke den ressourcekrævende kode ind i din applikation i en brugsblok. Dette ville sikre, at ressourcerne bortskaffes ordentligt, når de ikke længere er nødvendige. Bemærk, at "brug" -erklæringen om kompilering degenererer i en "prøv endelig" -kombination og kun kan bruges til de objekter, der implementerer ID-enheden.

Du bør også udnytte de anbefalede dataadgangsstrategier og sikre, at din applikation ikke holder på databaseforbindelserne i lang tid for at gøre det lettere at samle forbindelser. Du skal skrive din kode på en sådan måde, at den bruger et minimalt antal databaseforbindelser. Hvis din applikation holder fast i databaseforbindelserne, er der en chance for, at databaseforbindelsespuljen måske løber tør for tilgængelige forbindelser, hvorved ydelsen forringes, hvis kravet om forbindelser overstiger en bestemt grænse. Du kan i de fleste tilfælde drage fordel af lagrede procedurer til at reducere behandlingsomkostningerne på din databaseserver til hyppigt anvendte forespørgsler - dette hjælper med at forbedre ydeevnen til dataadgang i betydelig grad.