Johdanto välimuistiin ASP.NET: ssä

Välimuisti välityksellä ASP.NET: ssä on mahdollisuus tallentaa verkkosivusto tai tietoja muistiin nopeaa käyttöä varten. ASP.NET-sovelluksessa sinun ei tarvitse lyödä palvelinta uudestaan ​​ja uudestaan. Tallenna se tietokoneen muistiin ja nouta se nopeammin. Tämä toimii tietysti vain staattisten tietojen kanssa, koska dynaaminen data vaihtelee jokaiselle palvelimelle esitetylle pyynnölle.

Mikä on välimuisti ASP.Netissä?

.Net-kehys tarjoaa myös välimuistin, jotta sovelluksesi suorituskykyä voidaan parantaa. Nyt kysyt, miten ASP .Netiä luodaan käyttäjäriippuvaisten dynaamisten verkkosivujen luomiseen, miten se välimuistion sisältöä?

Ymmärtäkäämme se kahdella tapauksella - ensin missä sivu on käyttäjän kojelauta ja toisessa missä sillä on tuoteluettelot. Vaihe 2 on käyttäjästä riippumaton, tuotteet ovat samat jokaiselle palvelimelle esitetylle pyynnölle ja siten koko sivu voidaan välimuistiin. Jälleen tuotteiden hinta ja saatavuus vaihtelevat, mikä voidaan hoitaa päivittämällä välimuisti ajoissa. Ensimmäinen skenaario riippuu käyttäjästä, yhden käyttäjän kojetaulu ei välttämättä ole samanlainen toisen käyttäjän kanssa. Mutta edelleen on olemassa muutamia komponentteja, kuten kuvia, legendoja, otsikoita ja alatunnisteita, jotka voidaan tallentaa välimuistiin suorituskyvyn parantamiseksi.ASP.Net antaa kehittäjille mahdollisuuden käsitellä molempia skenaarioita tehokkaasti sovelluksissaan.

Kuinka välimuisti toimii ASP.Netissä?

On erittäin tärkeää ymmärtää ASP.Net-välimuistiin liittyvien verkkosivujen tai tietojen välitysprosessi. Tämän ymmärtämiseksi meidän on ymmärrettävä .Net-kokoamisprosessi, jotta saamme oikeudenmukaisen käsityksen siitä, milloin ja mihin sivut välimuistiin tulee optimaalisen suorituskyvyn saavuttamiseksi. ASP.Net-sivukoodi kootaan kahteen vaiheeseen, MSIL-vaiheeseen ja JIT-vaiheeseen. MSIL-vaiheessa korkean tason kielillä kirjoitettu sivukoodi käännetään Microsoftin keskikieleksi. Näin tapahtuu aina, kun rakennamme projektiamme. Koko verkkosivusto tai projekti kootaan MSIL: ään joka kerta, kun rakennamme. JIT-vaiheessa Just In Time -kääntäjä muuntaa MSIL-koodin natiiviksi konekoodiksi. Tämä tapahtuu sivun suorittamisen aikana. Koko projektia ei kuitenkaan muunneta alkuperäiseen koodiin koko ajan. Vain käyttäjän pyytämät sivut muunnetaan MSIL: stä natiiviksi koodiksi suorituksen aikana. Tämä säästää paljon verkon kaistanleveyttä ja parantaa suorituskykyä.

Nyt, minkä koodin meidän pitäisi välimuisti, milloin meidän pitää välimuisti ja missä?

ASP.Netissä on täydellinen moottori, joka on omistettu välimuistiin. Siinä on ominaisuuksia, kuten riippuvuus ajasta, tiedosto- ja avainriippuvuus, vanheneminen, tietojen poisto jne. Emme syventäisi näitä yksityiskohtia tässä artikkelissa. Meidän on ymmärrettävä, että voimme välimuistiin sivuillemme ja tietoihimme kahdessa paikassa parantaaksemme ASP.Net-sovelluksemme suorituskykyä. Ensimmäinen sijainti on ASP.Net-palvelimessa oleva Sivun välimuisti -osa. Tämä myymäläsivun välimuisti ja sivuosien välimuistit, pohjimmiltaan ASPX-sivut. Aina, kun pyydetään enimmäkseen staattista sivua, kopio luodusta natiivikoodista tallennetaan Sivun välimuisti -osaan. Tämä säästää JIT-kokoamisajan seuraavien sivupyyntöjen aikana. Toinen sijainti on Data Cache. Tämä tallentaa datapalvelimilta tai muilta palvelimilta noutaman tiedon. Näiden tietojen kopion tallentaminen auttaa tallentamaan tulevat verkkopuhelut tietokantapalvelimille tai muille kolmansien osapuolien palvelimille. Muutamia esimerkkejä välimuistiin tallennetuista tiedoista ovat SQL Server-tiedot, XML-tiedot, JSON-tiedot, kolmannen osapuolen API-vastaukset jne.

Välimuistin tyypit ASP.Netissä

1. Sivun tulostuksen välimuisti

Sivun tulostusvälimuisti tarkoittaa välimuistin tallentamista pyydetyn sivun koko tulosteen. Aina kun käyttäjä pyytää ASP.Net-sivua, JIT-kääntäjä kääntää asiaankuuluvan MSIL-koodin ja luo alkuperäisen koodilähdön, joka lähetetään vastauksena asiakkaalle. Tämä tarkoittaa, että joka kerta, kun sivua pyydetään, JIT-kääntäjän on luotava alkuperäinen koodi. Entä jos sivu on luonteeltaan staattista? Entä jos sivulähtö on sama jokaisen kokoamisen jälkeen? Voimme säästää paljon kokoamisaikaa ja resursseja, jos tallennamme luodun natiivikoodin sivuvälimuistiin. Saman sivun myöhemmät pyynnöt voidaan noutaa välimuistista. Tätä kutsutaan sivulähtövälimuistiksi. Sivutulosvälimuistin saavuttamiseksi meidän on määritettävä OuputCache-direktiivi ASP.Net -koodissa kestolla sekunnissa.





2. Sivun fragmenttien välimuisti

Olemme nähneet kuinka tallentaa staattinen sivu välimuistiin. Entä jos sivu on dynaaminen ja vaihtelee käyttäjien mukaan? Täältä tulee sivufragmentin välimuisti. Sen avulla kehittäjä voi tallentaa välimuistiin tietyt sivun osiot. Tämä auttaa, kun haluat välimuistiin otsikon ja alatunnisteen, joka on enimmäkseen staattinen jokaiselle käyttäjälle. Sivun fragmenttien välimuistin saavuttamiseksi ASP.Netissä, sinun on kapseloitava fragmenttikoodi erilliseen käyttäjän hallintalaitteeseen. Lisää sitten sama OuputCache-direktiivi käyttäjän ohjaukseen. Kun käyttäjän ohjauslaite ladataan sivun mukana, kopio siitä säilytetään välimuistissa. Siten kaikki myöhemmät viittaukset samaan käyttäjän ohjaukseen samalla sivulla tai eri sivulla noudetaan välimuistista.





3. Tietojen välimuisti

Tietojen välimuisti on mekanismi, jolla tarvittavat tiedot, joita usein käytetään, tallennetaan välimuistiin. Tämä voi parantaa dramaattisesti sovelluksen suorituskykyä. Tämä johtuu siitä, että tietojen välimuisti tallentaa tietokannan edestakaiset puhelut, jotka ovat tunnettuja viettämään eniten aikaa. Kun välimuistiin tallennetaan usein käytettyjä ja harvoin muutettuja tietoja, palvelin noutaa tiedot välimuistista tietokantapuhelujen sijasta. Tämä voi myös säästää rahaa, koska tietokantapuhelut pilvipalvelimen ylläpitämiin datapalvelimiin veloittavat pyyntöä kohden. Tietojen välimuisti on ASP.Netissä itsessään täysimittainen moottori. Tietojen välimuistin saavuttamiseksi ASP-verkkosivustolla on käytettävä välimuistiobjektia.

Cache("ProductName")="My Product";
Label1.Text= Cache("ProductName").ToString();

Miksi tarvitsemme välimuistia ASP.Netissä?

Ymmärtänyt välimuistin tallennusprosessin ASP.Netissä, katsotaanpa joitain käytännön esimerkkejä, joissa välimuisti on toteutettu reaaliaikaisissa tilanteissa.

  • Siellä on informatiivinen sivu, joka tuottaa raportteja tietokannan tietojen perusteella. Tietokantataulut päivitetään muutaman tunnin välein.
    Sivulähtövälimuistia voidaan käyttää tällaisessa tilanteessa välimuistin keston ollessa asetettu vastaamaan datan päivitystyön taajuutta.
  • Siellä on sivu, joka näyttää useita taulukoita ja tietoja, jotka muuttuvat jatkuvasti. Legendat ja tietojen selitys ovat kuitenkin samat.
    Sivun fragmenttien välimuistia voidaan käyttää vain staattisen selityksen ja selitystietojen välimuistiin tallentamiseen.
  • On käyttäjän kojetaulu, joka on käyttäjän räätälöity ja tuottaa kaavioita ja kaavioita käyttäjän pyyntöihin. Kaavioiden ja kaavioiden tuottamiseen käytetty tieto muuttuu harvoin.
    Tietojen välimuistiin voidaan tallentaa tietoja välimuistiin ja luoda käyttäjän pyytämiä kaavioita ja kuvaajia dynaamisesti.

johtopäätös

Siksi olemme oppineet, että välimuistiin tallentaminen on pitkä tapa parantaa ASP.Net-sovelluksemme suorituskykyä. Tämä oli alustava tason artikkeli välimuistista ASP.Netissä. Siellä on enemmän tutkittavaa. On suositeltavaa oppia lisää välimuistista sovelluksen suorituskyvyn parantamiseksi edelleen.

Suositeltava artikkeli

Tämä on opas välimuistista ASP.NET: ssä. Tässä keskustellaan ASP.NET: n välimuistin johdannosta ja sen toiminnasta sekä välimuistityypeistä. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -

  1. ASP.NET-kehys
  2. ASP.Net-validointiohjaimet
  3. Ura ASP.NET: ssä
  4. .NET-haastattelukysymykset