Programmēšana

Labākā prakse kešatmiņā ASP.Net

Kešatmiņa ir valsts pārvaldības stratēģija, kuru bieži pieņem ASP.Net, lai uzlabotu lietojumprogrammas veiktspēju, samazinot resursu patēriņu jūsu sistēmā. Pareizi lietojot, tas var ievērojami uzlabot jūsu lietojumprogrammas veiktspēju, pilnībā vai daļēji saglabājot wWb lapu vai pat saglabājot lietojumprogrammas datus HTTP pieprasījumos. Kešatmiņa ļauj Web lapu ātrāk atveidot, un pareiza kešatmiņas izmantošana samazina vai samazina datu bāzes trāpījumus vai servera resursu patēriņu.

Kešatmiņa ASP.Net ir šāda veida:

  1. lappuses izvades kešatmiņa
  2. lapu fragmentu kešatmiņa
  3. datu kešatmiņa

Lapas izvades kešatmiņa

Šī ir kešatmiņas forma ASP.Net, kas jūsu tīmekļa lapas kopiju saglabā atmiņas kešatmiņā, lai turpmākos pieprasījumus tai pašai tīmekļa lapai varētu ielādēt tieši no kešatmiņas - kešatmiņā saglabāto izvadi nosūta lietojumprogrammai. Tas ievērojami uzlabo lietojumprogrammas veiktspēju. Šis koda fragments parāda, kā jūs varat ieviest lapas izvades kešatmiņu.

Opcija VaryByParam palīdz jums norādīt Http pieprasījumā mainīgos, kuriem būtu nepieciešams jauns kešatmiņas ieraksts. Citas iespējamās iespējas ir: VaryByHeader un VaryByCustom. OutputCache direktīvā varat norādīt arī atrašanās vietu un ilgumu - tos varat izmantot, lai norādītu kešatmiņas atrašanās vietu un arī laiku, līdz kuram Web lapa būtu attiecīgi jānodrošina kešatmiņā.

Lapas fragmenta kešatmiņa

Lapu fragmentu kešdarbe ir kešdarbes stratēģija, kurā Web lapa tiek kešatmiņā daļēji - tiek saglabāti tikai Web lapas fragmenti, nevis visa Web lapa. Varat izmantot to pašu sintaksi kā lapas izvades kešatmiņa. Tomēr Web lapas vietā ir jāpielieto atribūts OutputCache lietotāja vadībai. Fragmentu kešatmiņa ir noderīga, ja kešatmiņā ir jānorāda tikai jūsu tīmekļa lapas daļas - parasti situācijās, kad jūsu vietne satur kopīgu un dinamisku sadaļu kombināciju. Piemēram, jums var būt tīmekļa lapa, kurā ir izvēlnes vienumu kombinācija, kā arī noteiktas dinamiskās sadaļas, kuras bieži jāapilda un jāatjaunina no datu bāzes.

Datu kešatmiņa

ASP.Net atklāj kešatmiņas API, lai jūs datus glabātu kešatmiņā, lai vēlāk tos izgūtu. Sintakse datu glabāšanai kešatmiņā, izmantojot kešatmiņas API, ir sniegta zemāk.

Kešatmiņa ["key"] = "vērtība";

Varat arī izmantot pievienošanas vai ievietošanas metodes. Lai attālinātu ierakstu no kešatmiņas, varat izmantot klases Kešatmiņa metodi Noņemt (). Kešatmiņas klases metode Insert () ļauj norādīt atkarību no kešatmiņas. Kešatmiņas atkarība ir stratēģija, kas nodrošina, ka, mainoties datiem datu krātuvē (no kuras ir aizpildīta kešatmiņa), kešatmiņa nekavējoties tiktu atkārtoti aizpildīta. Mainoties datu krātuves datiem, kešatmiņas derīguma termiņš beigsies, kā rezultātā kešatmiņa tiks atkārtoti aizpildīta ar jaunākajiem datiem. Vairāk par to varat lasīt šajā MSDN rakstā.

Labākā pieredze

Kešatmiņa jāveic tik bieži, cik vien iespējams, un pareizi jānodrošina datu kešatmiņa katrā lietojumprogrammas slānī. Izmantojot datu kešatmiņu, jums jāievieš pareiza stratēģija, lai nodrošinātu, ka kešatmiņā esošie dati ir sinhronizēti ar datu krātuves datiem. Varat izmantot izplatīto kešatmiņas pārvaldnieku, piemēram, Memcached, priekšrocības, lai kešatmiņas stratēģija varētu arī labi mērogot un nodrošināt ievērojamu veiktspējas pieaugumu - lielu datu glabāšanai varat izmantot Memcached. Jums jānodrošina, lai kešatmiņā saglabātu tikai samērā novecojušus datus - nav jēgas kešatmiņā saglabāt datus, kas laika gaitā bieži mainītos. Tāpat datus, kurus, visticamāk, neizmantos atkārtoti, nevajadzētu glabāt kešatmiņā. Jums nevajadzētu pārmērīgi izmantot SqlDependency vai SqlCacheDependency.

Un tagad zināsim arī kešatmiņas trūkumus. Kešatmiņas objekts ir pieejams tikai pašreizējam lietojumprogrammas domēnam. Tātad, ja vēlaties saglabāt datus kešatmiņā un padarīt tos pieejamus tīmekļa fermā, tā nav iespēja. Jums būtu jāizmanto izplatītā kešatmiņa, piemēram, Windows Server AppFabric kešatmiņa vai citi izplatīti kešatmiņas ietvari, lai kešatmiņā esošie dati būtu globāli pieejami tīmekļa saimniecībā.

Kešatmiņa ir spēcīgs mehānisms, kas uzlabo lietojumprogrammas veiktspēju, atmiņā saglabājot samērā novecojušus datus, lai tos vēlāk varētu izgūt no kešatmiņas. Es apspriedīšu vairāk par šo tēmu ar reālās dzīves kodu piemēriem savos turpmākajos ierakstos šeit.

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