Programavimas

Kaip naudoti „NCache“ ASP.Net Core

Nors ASP.Net Core trūksta talpyklos objekto, jis teikia paramą keliems skirtingiems talpyklų tipams, įskaitant atminties talpyklą, paskirstytą talpyklą ir atsakymo talpyklą. „Alachisoft“ teikiamas atvirojo kodo produktas „NCache“ yra ypač greita, atmintyje paskirstyta, keičiamo mastelio talpyklos sistema, skirta naudoti .Net programose.

„NCache“ yra 100 proc. Gimtoji. Tai ne tik greitesnė nei „Redis“, bet ir suteikia keletą paskirstytų talpyklų funkcijų, kurių „Redis“ nepalaiko. Čia galite sužinoti daugiau apie „NCache“ ir „Redis“ skirtumus. Šiame straipsnyje bus aptarta, kaip mes galime dirbti su „NCache“ ASP.Net Core programose.

Paskirstyta talpykla, pvz., „NCache“, gali pagerinti programų našumą ir mastelį. Išplatintoje talpykloje talpyklos duomenys nėra atskiro žiniatinklio serverio atmintyje. Galite pridėti arba pašalinti serverį, nepaveikdami talpyklos ar talpyklos duomenų. Ir jei kuris nors iš serverių neveikia arba nustoja atsakyti, kiti serveriai vis tiek galės nuskaityti talpyklos duomenis. Tai paaiškina, kodėl paskirstytos talpyklos talpykloje saugomi duomenys gali išlikti iš naujo paleidus serverį.

„Visual Studio“ sukurkite pagrindinį ASP.Net projektą

Pirmiausia sukurkime ASP.Net Core projektą. Jei jūsų sistemoje veikia ir veikia „Visual Studio 2017“, atlikite toliau nurodytus veiksmus, kad sukurtumėte naują „ASP.Net Core“ projektą „Visual Studio“.

  1. Paleiskite „Visual Studio 2017 IDE“.
  2. Spustelėkite Failas> Naujas> Projektas.
  3. Rodomų šablonų sąraše pasirinkite „ASP.Net Core Web Application (.Net Core)“.
  4. Nurodykite projekto pavadinimą.
  5. Spustelėkite Gerai, kad išsaugotumėte projektą.
  6. Toliau rodomas naujas langas „Nauja .Net Core Web Application…“.
  7. Viršuje esančiame išskleidžiamajame sąraše pasirinkite .Net Core kaip vykdymo laiką ir ASP.Net Core 2.2 (arba naujesnę).
  8. Pasirinkite API kaip projekto šabloną
  9. Įsitikinkite, kad nepažymėti žymės langeliai „Įgalinti„ Docker “palaikymą“ ir „Konfigūruoti HTTPS“, nes čia nenaudosime tų funkcijų.
  10. Įsitikinkite, kad pasirinkta „Nėra autentifikavimo“, nes mes taip pat nenaudosime autentifikavimo.
  11. Spustelėkite Gerai.

Dabar „Visual Studio“ turėtumėte turėti naują „ASP.Net Core“ projektą. Tada turėsite įdiegti reikiamą „NuGet“ paketą, kad galėtumėte naudoti „NCache“. Įdiekite šį „NuGet“ paketą per „NuGet Package Manager“ langą arba iš „NuGet Package Manager“ konsolės:

„Alachisoft.NCache.SessionServices“

Kai šis „NuGet“ paketas bus įdiegtas jūsų projekte, visi būsite pasirengę naudoti „NCache“.

ASP.Net Core naudokite sąsają „IDistributedCache“

Norėdami naudoti paskirstytą talpyklą ASP.Net Core programose, turėtumėte naudoti IDistributedCache sąsają. „IDistributedCache“ sąsaja buvo pristatyta „ASP.Net Core“, kad galėtumėte lengvai prijungti trečiųjų šalių talpyklų sistemas. Štai kaip atrodo „IDistributedCache“.

vardų sritis „Microsoft.Extensions.Cache“. Paskirstyta

{

viešoji sąsaja IDistributedCache

    {

baitas [] Get (eilutės raktas);

void Atnaujinti (eilutės raktas);

void Pašalinti (eilutės raktas);

void Set (eilutės rakto, baito [] reikšmė,

Parinktys DistributedCacheEntryOptions);

    }

}

Konfigūruokite „NCache“ kaip „IDistributedCache“ teikėją ASP.Net Core

Norėdami naudoti paskirstytą talpyklą naudodami „NCache“, turėtumėte iškviesti „AddNCacheDistributedCache“ metodą „Startup.cs“ failo „ConfigureServices“ metodu, kaip parodyta žemiau esančiame kodo fragmente. Atkreipkite dėmesį, kad metodas AddNCacheDistributedCache () yra ASP.Net Core metodo AddNDistributedCache () pratęsimas.

public void „ConfigureServices“ („IServiceCollection“ paslaugos)

        {

services.AddNCacheDistributedCache (konfigūracija =>

            {

configuration.CacheName = "Paskirstyta talpykla";

konfigūracija.EnableLogs = true;

konfigūracija.ExceptionsEnabled = true;

            });          

paslaugos. „AddMvc“ (). „SetCompatibilityVersion“

(CompatibilityVersion.Version_2_2);

        }

Ir tai viskas, ką jums reikia padaryti. Dabar galite pradėti naudoti „NCache“ savo projekte.

Naudokite „NCache“, jei norite išsaugoti ir nuskaityti talpykloje esančius objektus ASP.Net Core

Šis kodo fragmentas parodo, kaip galite dirbti su „NCache“. Žemiau pateiktas „GetAuthor“ metodas nuskaito objektą Autorius iš talpyklos, jei jis yra. Jei talpykloje nėra objekto Autorius, metodas „GetAuthor“ jį nuskaito iš duomenų bazės ir tada saugo objektą talpykloje.

 viešoji asinchroninė užduotis „GetAuthor“ (int id)

        {

_cache = NCache.InitializeCache („CacheName“);

var cacheKey = "Raktas";

Autorius autorius = null;

jei (_cache! = null)

            {

author = _cache.Get (cacheKey) kaip Autorius;

            }

if (author == null) // Duomenų nėra talpykloje

            {

// Parašykite kodą čia, kad gautumėte autorių

// objektas iš duomenų bazės

jei (autorius! = null)

                {

jei (_cache! = null)

                    {

_cache.Insert (cacheKey, autorius, null,

Talpykla. NoAbsoluteExpiration,

„TimeSpan.FromMinutes“ (10),

„Alachisoft.NCache.Runtime“.

CacheItemPriority.Default);

                    }

                }

            }

grįžęs autorius;

        }

Ir čia yra Autorių klasė.

 visuomenės klasės Autorius

    {

public int AuthorId {get; rinkinys; }

public string FirstName {get; rinkinys; }

vieša eilutė Pavardė {get; rinkinys; }

    }

„NCache“ iš „Alachisoft“ yra .Net paskirstytasis talpyklos sprendimas. „IDistributedCache“ sąsaja suteikia standartinę API, skirtą darbui su ASP.Net Core paskirstyta talpykla. Galite greitai ir lengvai prijungti trečiųjų šalių talpyklas, pvz., „NCache“.