Programmēšana

Kā izmantot NCache ASP.Net Core

Kaut arī ASP.Net Core trūkst kešatmiņas objekta, tas nodrošina atbalstu vairākiem dažādiem kešatmiņas veidiem, ieskaitot atmiņā ievietoto kešatmiņu, izplatīto kešatmiņu un atbildes kešatmiņu. Atvērtā koda produkts, ko nodrošina Alachisoft, NCache ir ārkārtīgi ātrs, atmiņā ievietots, izplatīts, mērogojams kešatmiņas ietvars, kas paredzēts izmantošanai .Net lietojumprogrammās.

NCache ir 100% dzimtā .Net. Tas ir ne tikai ātrāks par Redis, bet arī nodrošina vairākas izplatītās kešatmiņas funkcijas, kuras Redis neatbalsta. Šeit varat uzzināt vairāk par NCache un Redis atšķirībām. Šajā rakstā tiks apspriests, kā mēs varam strādāt ar NCache ASP.Net Core lietojumprogrammās.

Izplatītā kešatmiņa, piemēram, NCache, var uzlabot gan lietojumprogrammu veiktspēju, gan mērogojamību. Izplatītajā kešatmiņā kešatmiņā saglabātie dati neatrodas atsevišķa tīmekļa servera atmiņā. Serveri var pievienot vai noņemt, neietekmējot kešatmiņu vai kešatmiņā saglabātos datus. Un, ja kāds no serveriem nedarbosies vai vairs nereaģēs, citi serveri joprojām varēs izgūt kešatmiņā saglabātos datus. Tas izskaidro, kāpēc kešatmiņā saglabātie dati izplatītajā kešatmiņā var izdzīvot servera restartēšanas laikā.

Izveidojiet ASP.Net Core projektu Visual Studio

Vispirms izveidosim ASP.Net Core projektu. Ja jūsu sistēmā darbojas un darbojas Visual Studio 2017, veiciet tālāk norādītās darbības, lai izveidotu jaunu ASP.Net Core projektu Visual Studio.

  1. Palaidiet Visual Studio 2017 IDE.
  2. Noklikšķiniet uz Fails> Jauns> Projekts.
  3. Parādīto veidņu sarakstā atlasiet “ASP.Net Core Web Application (.Net Core)”.
  4. Norādiet projekta nosaukumu.
  5. Noklikšķiniet uz Labi, lai saglabātu projektu.
  6. Nākamais tiek parādīts jauns logs “New .Net Core Web Application…”.
  7. Augšdaļā esošajā nolaižamajā sarakstā atlasiet .Net Core kā izpildlaiku un ASP.Net Core 2.2 (vai jaunāku).
  8. Kā projekta veidni atlasiet API
  9. Pārliecinieties, vai nav atzīmētas izvēles rūtiņas “Iespējot Docker atbalstu” un “Konfigurēt HTTPS”, jo mēs šeit neizmantosim šīs funkcijas.
  10. Pārliecinieties, vai ir atlasīta opcija “Nav autentifikācijas”, jo mēs arī neizmantosim autentifikāciju.
  11. Noklikšķiniet uz Labi.

Tagad jums ir jābūt gatavam darbam Visual Studio jauns ASP.Net Core projekts. Pēc tam jums būs jāinstalē nepieciešamā NuGet pakete NCache lietošanai. Instalējiet šo NuGet pakotni, izmantojot logu NuGet Package Manager vai no konsoles NuGet Package Manager:

Alachisoft.NCache.SessionServices

Kad šī NuGet pakotne ir instalēta jūsu projektā, jūs visi esat iestatījis izmantot NCache.

Izmantojiet ASP.Net Core saskarni IDistributedCache

Lai ASP.Net Core lietojumprogrammās izmantotu izplatītu kešatmiņu, jums jāizmanto IDistributedCache saskarne. IDistributedCache interfeiss tika ieviests ASP.Net Core, lai ļautu ērti pievienot trešo pušu kešatmiņas ietvarus. Lūk, kā izskatās IDistributedCache.

nosaukumvieta Microsoft.Extensions.Caching.Distributed

{

publiskā saskarne IDistributedCache

    {

baits [] Get (virknes atslēga);

void Refresh (virknes atslēga);

void Noņemt (virknes atslēga);

void Set (virknes atslēga, baits [] vērtība,

DistributedCacheEntryOptions opcijas);

    }

}

Konfigurējiet NCache kā IDistributedCache nodrošinātāju ASP.Net Core

Lai strādātu ar sadalīto kešatmiņu, izmantojot NCache, jums jāizsauc metode AddNCacheDistributedCache faila Startup.cs ConfigureServices metodē, kā parādīts zemāk esošajā koda fragmentā. Ņemiet vērā, ka metode AddNCacheDistributedCache () ir ASP.Net Core metodes AddNDistributedCache () paplašinājums.

public void ConfigureServices (IServiceCollection pakalpojumi)

        {

services.AddNCacheDistributedCache (konfigurācija =>

            {

configuration.CacheName = "Izplatītā kešatmiņa";

configuration.EnableLogs = true;

konfigurācija.ExceptionsEnabled = true;

            });          

services.AddMvc (). SetCompatibilityVersion

(CompatibilityVersion.Version_2_2);

        }

Un tas ir viss, kas jums jādara. Tagad jūs varat sākt izmantot NCache savā projektā.

Izmantojiet NCache, lai saglabātu un izgūtu kešatmiņā saglabātus objektus ASP.Net Core

Šis koda fragments parāda, kā jūs varat strādāt ar NCache. Zemāk parādītā metode GetAuthor izgūst objektu Autors no kešatmiņas, ja tas ir pieejams. Ja objekts Autors kešatmiņā nav pieejams, metode GetAuthor to ienes no datu bāzes un pēc tam objektu saglabā kešatmiņā.

 publiskais asinhronais uzdevums GetAuthor (int id)

        {

_cache = NCache.InitializeCache ("CacheName");

var cacheKey = "Atslēga";

Autors autors = null;

ja (_ kešatmiņa! = null)

            {

autors = _cache.Get (cacheKey) kā autors;

            }

if (autors == null) // Dati nav pieejami kešatmiņā

            {

// Uzrakstiet kodu šeit, lai ielādētu autoru

// objekts no datu bāzes

ja (autors! = null)

                {

ja (_ kešatmiņa! = null)

                    {

_cache.Insert (cacheKey, autors, null,

Kešatmiņa. NoAbsoluteExpiration,

TimeSpan.FromMinutes (10),

Alachisoft.NCache.Runtime.

CacheItemPriority.Default);

                    }

                }

            }

atgriešanās autors;

        }

Un šeit ir Autoru klase.

 sabiedrības klase Autors

    {

public int AuthorId {get; komplekts; }

publiskā virkne FirstName {get; komplekts; }

publiskā virkne Uzvārds {get; komplekts; }

    }

NCache no Alachisoft ir izplatīts kešatmiņas risinājums .Net. Interfeiss IDistributedCache nodrošina standarta API darbam ar izplatītu kešatmiņu ASP.Net Core. Jūs varat to izmantot, lai ātri un viegli pievienotu trešo pušu kešatmiņas, piemēram, NCache.

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