See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 13999|Vastuse: 0

[ASP.NET] ASP.NET Cache

[Kopeeri link]
Postitatud 17.06.2015 11:27:42 | | |
ASP.NET pakub programmeerimisvõimalusi, mis sisuliselt salvestavad infot ASP.NET rakenduses. Funktsionaalsus on sarnane rakenduse objektile, kuid suudab dünaamiliselt säilitada vahemällu salvestatud infot kogu ASP.NET rakenduse eluea jooksul. Andmete vahemällu salvestamine rakenduses võib oluliselt parandada jõudlust, kuna andmed on serveri lähedal lokaalsed ja neid saab kiiresti kätte saada. Selle asemel, et uuesti pärida algset andmeallikat. Eriti suurim kitsaskoht praeguses süsteemis on andmebaas ning vahemälu ratsionaalne kasutamine võib vähendada palju tarbetut andmebaasi ligipääsu, et optimeerida süsteemi jõudlust.

      Vahemäluobjektid parandavad võimet rakendada asjakohasuse põhiseid aegumis- ja tagasikutsumise teavitusi, mis võimaldavad vahemällu salvestatud elementide peal tegutseda haldusrakenduse teistel kasutajatel või ASP.NET enda poolt. Kasuta Cache objekti, et salvestada mis tahes tüüpi (väärtustüüp või rakenduse tüüp) enne nende uuendamist või kustutamist. Vahemälu on paindlikum objekt kui rakenduse objekt. See toetab:

      1. Asjakohasuse põhine aegumine ja kustutamine – vahemäluobjektid võimaldavad siduda vahemälu väärtuste automaatse aegumise ja kustutamise failisündmuse, konkreetse või suhtelise kuupäeva/kellaaja või mõne teise vahemäluvõtmega.

      2. Automaatne lukuhaldus – vahemälu objektid sisaldavad sisemist lukuhaldust, mis võimaldab sünkroniseerimist aatomiliste uuenduste jaoks (uuendused, mida saab paigutada arvutusoperatsiooni).

      3. Tagasikõne mehhanism – Vahemäluobjekt võimaldab seadistada tagasikutsumise funktsiooni vahemälu esemete kustutamisel.



      Vahemälu lisamise meetod sisaldab Add() või Insert(), ning Insert-meetod võib kasutada valikulisi parameetreid vahemälu lisamiseks mõlema vaikimisi parameetri abil:

      Cache.Add(KeyName, KeyValue,Dependencies,AbsoluteExpiration,SlidingExpiration,Priority,CacheItemRemoveCallback);

      Parameetrid on: vahemälu nimi, vahemällu salvestatud objekt, sõltuvus, absoluutne aegumisaeg, suhteline aegumisaeg, prioriteet ja vahemälu aegumisest tingitud sündmused.



      Vahemälu sõltuvused: failisõltuvused, muud vahemälu sõltuvused, andmebaasi sõltuvused ja aegumisaja meetodid on seatud ning kui sõltuvused muutuvad, on vahemälu kehtetu ja võib tekitada teatud sündmusi.

      1. Failisõltuvused: vahemälu sõltuvused xml-failidel:


  1. <p>DataSet dsProducts = new DataSet();</p><p>//...dsProducts数y据Y</p><p>CacheDependency fileDepends = new CacheDependency(Server.MapPath("Northwind.xml"));</p><p>Cache.Insert("dsProducts", dsProducts, fileDepends);</p>
Kopeeri kood


      2. Muud vahemälu esemete sõltuvused:

  1. <p>object cacheData;</p><p>string[] fileDependsArray = { Server.MapPath("Northwind.xml") };</p><p>string[] cacheDependsArray = { "Depend0", "Depend1", "Depend2" };</p><p>CacheDependency cacheDepends = new CacheDependency(fileDependsArray, cacheDependsArray);</p><p>Cache.Insert("cacheName", cacheData, cacheDepends);</p>
Kopeeri kood


         3. Aegumisaja seadistus:

         AbsoluteExpiration saab määrata vahemälu absoluutse aegumisaja, näiteks seaddes selle aegumise 30 minuti pärast:


  1. Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
Kopeeri kood

          NoSlidingExpiration saab määrata suhtelise aegumisaja, kui vahemälule ei pääse ligi NoSlidingExpirationi määratud aja jooksul, kui vahemälu aegub ja sellele ei pääse ligi teatud aja jooksul, siis vahemälu ei aegu. Kui pääsete vahemälule ligi 30 minuti jooksul, ei aegu see ise:


  1. Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
Kopeeri kood






Eelmine:Ei pääse ligi liikmele "System.Web.Caching.Cache.NoAbsoluteExpiration" eksemplariviidete abil; ...
Järgmine:Tekstisõnum või QQ sõnum paneb su kohaliku türanni sõbra iPhone'i koheselt kokku jooksma, välja lülituma ja külmuma!
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com