Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 13999|Antwoord: 0

[ASP.NET] ASP.NET Cache

[Link kopiëren]
Geplaatst op 17-06-2015 11:27:42 | | |
ASP.NET biedt programmeermogelijkheden die informatie in feite cachen in een ASP.NET applicatie. De functionaliteit lijkt op het applicatieobject, maar het kan dynamisch gecachete informatie behouden gedurende de levensduur van ASP.NET applicatie. Het cachen van data in een applicatie kan de prestaties aanzienlijk verbeteren omdat de data lokaal is voor de server en snel kan worden opgehaald. In plaats van de oorspronkelijke databron opnieuw te moeten navragen. Vooral de grootste bottleneck van het huidige systeem is de database, en het rationeel gebruik van cache kan veel onnodige database-toegang verminderen, om zo de prestaties van het systeem te optimaliseren.

      Cacheobjecten verbeteren de mogelijkheid om relevantie-gebaseerde verval- en callback-meldingen te implementeren die acties op gecachte items in de cache mogelijk maken door andere gebruikers van de beheerapplicatie of door de ASP.NET zelf. Gebruik het cache-object om elk type (waardetype of applicatietype) op te slaan voordat je ze bijwerkt of verwijdert. Cache is een flexibeler object dan een applicatieobject. Het ondersteunt:

      1. Relevantie-gebaseerde verval- en verwijderingsdatum - Cache-objecten bieden de mogelijkheid om automatische verval- en verwijderingswaarden van cachewaarden te koppelen aan een bestandsgebeurtenis, een specifieke of relatieve datum/tijd, of een andere cachesleutel.

      2. Automatisch slotbeheer - Cacheobjecten bevatten intern vergrendelingsbeheer, dat synchronisatie biedt voor atomaire updates (updates die in een berekeningsoperatie kunnen worden geplaatst).

      3. Callback-mechanisme - Het cacheobject biedt de mogelijkheid om de callback-functie aan te roepen bij het verwijderen van cache-items.



      De cache-optelmethode bevat Add() of Insert(), en de Insert-methode kan optionele parameters gebruiken om de cache toe te voegen met beide standaardparameters:

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

      De parameters zijn: cachenaam, gecachet object, afhankelijkheid, absolute vervaltijd, relatieve vervaltijd, prioriteit en gebeurtenissen veroorzaakt door cachevervaldatum.



      Cache-afhankelijkheden: bestandsafhankelijkheden, andere cache-afhankelijkheden, databaseafhankelijkheden en vervaltijdmethoden worden ingesteld, en wanneer de afhankelijkheden veranderen, is de cache ongeldig en kan het bepaalde gebeurtenissen veroorzaken.

      1. Bestandsafhankelijkheden: cacheafhankelijkheden op xml-bestanden:


  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>
Code kopiëren


      2. Andere afhankelijkheden van cache-items:

  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>
Code kopiëren


         3. Instelling van de vervaltijd:

         AbsoluteExpiration kan de absolute vervaldatum van de cache instellen, bijvoorbeeld door deze na 30 minuten te laten verlopen:


  1. Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
Code kopiëren

          NoSlidingExpiration kan een relatieve vervaldatum instellen; als de cache niet binnen de door NoSlidingExpiration gestelde tijd wordt benaderd; als de cache verloopt en gedurende een bepaalde periode niet wordt benaderd, verloopt de cache niet. Als je binnen 30 minuten toegang hebt tot de cache, verloopt deze niet:


  1. Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
Code kopiëren






Vorig:Kan geen toegang krijgen tot lid "System.Web.Caching.Cache.NoAbsoluteExpiration" via instantiereferenties; ...
Volgend:Een sms of QQ-bericht zorgt ervoor dat de iPhone van de vriend van je lokale tiran onmiddellijk crasht, uitschakelt en bevriest!
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com