Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 13999|Svar: 0

[ASP.NET] ASP.NET Cache

[Kopiera länk]
Publicerad på 2015-06-17 11:27:42 | | |
ASP.NET tillhandahåller programmeringsmöjligheter som i princip cachar information i en ASP.NET applikation. Funktionen liknar applikationsobjektet, men har förmågan att dynamiskt lagra cacvad information under ASP.NET applikations livslängd. Caching av data i en applikation kan avsevärt förbättra prestandan eftersom datan är lokal för servern och kan hämtas snabbt. Istället för att behöva fråga om den ursprungliga datakällan. Särskilt den största flaskhalsen i det nuvarande systemet är databasen, och rationell användning av cache kan minska mycket onödig databasåtkomst för att optimera systemets prestanda.

      Cacheobjekt förbättrar möjligheten att implementera relevansbaserade utgångs- och callback-notifikationer som tillåter åtgärder på cachade objekt i cachen av andra användare av hanteringsapplikationen eller av själva ASP.NET. Använd cacheobjektet för att lagra vilken typ som helst (värdetyp eller applikationstyp) innan du uppdaterar eller tar bort dem. Cache är ett mer flexibelt objekt än ett applikationsobjekt. Den stödjer:

      1. Relevansbaserad utgångs- och borttagningstid – Cacheobjekt ger möjlighet att binda automatisk utgång och radering av cachevärden till en filhändelse, ett specifikt eller relativt datum/tid eller en annan cachenyckel.

      2. Automatisk låshantering – Cacheobjekt inkluderar intern låshantering, som ger synkronisering för atomära uppdateringar (uppdateringar som kan placeras i en beräkningsoperation).

      3. Callback-mekanism – Cache-objektet ger möjlighet att ställa in callback-funktionen som anropas när cache-objekt tas bort.



      Cacheadditionsmetoden inkluderar Add() eller Insert(), och Insert-metoden kan använda valfria parametrar för att lägga till cachen med båda standardparametrarna:

      Cache.Add(KeyName, KeyValue,Beroenden,AbsoluteExiration,SlidingExpiration,Priority,CacheItemRemoveCallback);

      Parametrarna är: cachenamn, cachade objekt, beroende, absolut utgångstid, relativ utgångstid, prioritet och händelser orsakade av cacheutgång.



      Cacheberoenden: filberoenden, andra cacheberoenden, databasberoenden och utgångstidsmetoder sätts, och när beroendena ändras är cachen ogiltig och kan leda till vissa händelser.

      1. Filberoenden: cacheberoenden på xml-filer:


  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>
Kopiera koden


      2. Andra cache-beroenden:

  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>
Kopiera koden


         3. Utgångstidsinställning:

         AbsoluteExpiration kan ställa in cachens absoluta utgångstid, till exempel att den ska gå ut efter 30 minuter:


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

          NoSlidingExpiration kan sätta en relativ utgångstid, om cachen inte nås inom den tid som NoSlidingExpiration angår, om cachen går ut och inte nås under en viss tid, kommer cachen inte att gå ut. Om du får tillgång till cachen inom 30 minuter kommer den inte att gå ut:


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






Föregående:Kan inte komma åt medlemmen "System.Web.Caching.Cache.NoAbsoluteExpiration" med hjälp av instansreferenser; ...
Nästa:Ett sms eller QQ-meddelande får din lokala tyranns väns iPhone att krascha direkt, stänga av och frysa!
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com