Programavimas

Geriausia praktika, kaip pagerinti ASP.Net programų našumą

Yra daugybė veiksnių, darančių įtaką žiniatinklio programų taikymo našumui. Programos našumo gerinimo esmė yra užtikrinti, kad kuriate programas, kurios sunaudotų mažiausiai atminties ir reikalautų mažiausiai apdorojimo norimam išėjimui sukurti.

Norėdami tai pasiekti, turite laikytis rekomenduojamų gairių ir metodų, kurie yra naudingi norint pagerinti, optimizuoti ir padidinti jūsų žiniatinklio programos našumą. Šiame pranešime aptarsiu svarbiausias rekomendacijas, kurių turėtumėte laikytis, kad pagerintumėte žiniatinklio programų, sukurtų naudojant ASP.Net, programų našumą ir reagavimą.

Sumažinamas puslapio įkėlimo laikas

Norėdami sutrumpinti tinklalapių įkėlimo laiką, turėtumėte sutrumpinti scenarijus ir CSS failus ir vengti pernelyg didelių vaizdų, nereikalingų žymų ir įdėtų lentelių. Venkite naudoti serverio valdiklius (nebent yra konkrečių priežasčių juos naudoti), kad sumažintumėte savo tinklalapių dydį.

Taip pat turėtumėte vengti nereikalingų kelionių į žiniatinklio serverį, kad būtų lengviau įkelti puslapius. Galite pasinaudoti „Page.IsPostback“ ypatybe, kad išvengtumėte nereikalingo serverio apdorojimo pirmyn ir atgal, taigi sumažintumėte tinklo srautą. Kita technika, kurios galite laikytis, yra išankstinis kompiliavimas - galite iš anksto sukompiliuoti savo programos tinklalapius, kad sumažintumėte darbo rinkinio dydį. Taip pat galite nustatyti „AutoEventWireup“ atributą į „false“ faile machine.config, kad vykdymo metu nereikėtų ieškoti kiekvieno įvykių tvarkytuvo tinklalapyje.

  

    

      

    

  

Nustačius šią ypatybę į „false“, puslapio įvykiai nebus automatiškai prijungti, todėl bus pašalinta galimybė, kad tas pats įvykis bus iškviestas du kartus, kai puslapis vykdomas.

Turėtumėte kiek įmanoma susieti jūsų programos naudojamus scenarijus ir css. Jei įmanoma, pasinaudokite asinchroninių skambučių iš tinklalapio į serverio būdus pranašumais - tai padės jūsų tinklalapiui reaguoti.

Valstybės valdymas

Turėtumėte vengti naudoti „ViewState“, kad būtų lengviau įkelti puslapius. Atminkite, kad kiekvienas baitas, įtrauktas į tinklalapį įgalinant jo „ViewState“, sukeltų du tinklo srauto baitus - vieną baitą kiekviena kryptimi, t. Y. Iš serverio į klientą, o kitą - iš kliento į serverį. Be to, turėtumėte pašalinti „runat =“ server “formos žymą iš savo tinklalapio, jei jums nereikia naudoti„ ViewState “. Tai sutaupytų maždaug 20 baitų puslapio dydžio.

Talpykla yra dar viena jums prieinama būsenos valdymo technika - naudokite ją protingai, kad atmintyje išsaugotumėte palyginti pasenusius duomenis. Jei reikia, galite talpinti žiniatinklio puslapius arba jų dalį. Duomenų talpykla gali būti naudojama siekiant pagerinti programos našumą, nes duomenų skaitymas iš talpyklos atminties yra palyginti greitesnis nei tų pačių duomenų skaitymas iš failo ar duomenų bazės.

Turėtumėte optimizuoti savo kodą, kad įsitikintumėte, jog tinkamai naudojate išteklius (atmintį, procesorių ir pan.) - parašysiu apie tai atskirą įrašą.

Resursu valdymas

Tinkami išteklių valdymo metodai, jei jų bus laikomasi, gali žymiai padidinti jūsų programos našumą. Išteklius (failų rankenas, duomenų bazių jungtis ir kt.) Turėtumėte įsigyti vėlai ir anksti išmesti. Turėtumėte parašyti savo kodą taip, kad objektai nebūtų reklamuojami aukštesnėms kartoms - atminkite, kad šiukšlių surinkėjas dirba daug dažniau žemesnėse kartose nei aukštesnėse. Turėtumėte tinkamai naudoti „Išmesti ir baigti“, kad išvalytumėte savo programoje naudojamus nevaldomus išteklius. Gera praktika yra daug išteklių reikalaujančio kodo apvyniojimas programoje naudojant bloką. Tai užtikrintų, kad ištekliai bus tvarkomi tinkamai, kai jie nebereikalingi. Atkreipkite dėmesį, kad kompiliacijos sakinys „using“ išsivysto į „try-pagaliau“ derinį ir gali būti naudojamas tik tiems objektams, kurie įdiegia IDisposable sąsają.

Taip pat turėtumėte pasinaudoti rekomenduojamomis prieigos prie duomenų strategijomis ir užtikrinti, kad jūsų programa ilgai nelaikytų duomenų bazės ryšių, kad būtų lengviau geriau kaupti ryšius. Turėtumėte parašyti kodą taip, kad jame būtų naudojamas minimalus duomenų bazių ryšių skaičius. Jei jūsų programa palaiko duomenų bazės ryšius, yra tikimybė, kad duomenų bazės ryšių telkinyje gali trūkti galimų ryšių, todėl pablogės našumas, jei ryšių poreikis viršys tam tikrą ribą. Daugeliu atvejų galite pasinaudoti saugomų procedūrų pranašumais, kad sumažintumėte duomenų bazės serverio apdorojimo pridėtines išlaidas dažnai naudojamoms užklausoms - tai padės žymiai pagerinti duomenų prieigos našumą.

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