Istruzioni per l’uso: NCache as AppFabric Alternative

Webinar registrato
Di Ron Hussain e Zack Khan

AppFabric ha raggiunto la fine della vita e se stai pensando a dove andare da qui, allora devi guardare questo webinar. Questo webinar mostra diversi modi per migrare le tue applicazioni .NET da AppFabric a NCache.

NCache è un .NET/ estremamente veloce e scalabile.NET Core sistema di cache distribuito e fornisce un wrapper per AppFabric che ti consente di migrare a NCache con modifiche minime o assenti al codice nelle applicazioni. Tuo Appfabric Le API utilizzate nelle tue applicazioni iniziano a funzionare NCache senza soluzione di continuità. Puoi inoltre iniziare a utilizzare molte altre API e funzionalità offerte da NCache per funzionalità avanzate di memorizzazione nella cache che mancano in AppFabric.

Ecco di cosa tratta questo webinar:

  • Panoramica dei AppFabric e i suoi problemi di fine vita
  • Perché NCache è l'opzione migliore e l'alternativa a AppFabric
  • Diversi modi per la migrazione a NCache
    • Tramite wrapper senza modifica del codice
    • Attraverso diretto NCache Chiamate API
    Funzionalità avanzate di cache distribuita che solo NCache offre il
  • Esempi pratici e dimostrazioni di migrazione

L'argomento di oggi sarà: “Come puoi usare NCache come AppFabric alternativa?" Il webinar di oggi tratterà una miriade di argomenti. In particolare una panoramica di AppFabric e i suoi problemi di fine vita. Così come, al perché NCache è la tua migliore alternativa a AppFabric e tutte le funzionalità avanzate di memorizzazione nella cache distribuita che offriamo, che puoi utilizzare al posto di cosa AppFabric usato per offrire e un esempio pratico e una dimostrazione, di come è possibile migrare da AppFabric a NCache?

Ora, tieni presente che questo è un webinar dal vivo, quindi, in qualsiasi momento puoi utilizzare la scheda delle domande per inserire eventuali domande o dubbi che potresti avere e saremo in grado di rivolgerti a te. E, infine, alla fine del webinar avremo anche una sessione di domande e risposte separata, quindi, se qualcuno ha delle domande da salvare fino alla fine, possiamo contattarti anche su quelle. Va bene, senza ulteriori indugi, Ron, hai la parola.

Quindi, l'argomento di oggi è molto specifico. Sai, coprirà AppFabric problemi di fine vita e poiché Microsoft stessa ha raccomandato di eseguire la migrazione da questa tecnologia. Quindi, se stai usando un AppFabric applicazione, se fa ancora parte dell'architettura dell'applicazione, presenteremo alcune opzioni con NCache per migrare da quello e, sai, ti mostrerò quanto può essere agevole quella transizione. Com'è facile migrare AppFabric ed essere in grado di utilizzare NCache così com'è e quindi essere in grado di utilizzare alcune funzionalità estese di NCache quale AppFabric manca completamente. Così, AppFabric è un prodotto molto limitato Funzionava molto bene, ma è alla fine del suo ciclo di vita, giusto, quindi non viene eseguito il backup. Non viene più aggiornato. Quindi, è giunto il momento di migrare fuori da esso.

Quindi, oggi tratteremo tutti i dettagli. Quali sono le diverse opzioni per quanto riguarda l'utilizzo NCache, come prodotto alternativo per App Fabric e quanto sia facile uscirne e quali sono i vantaggi che otterrai se inizi a utilizzare NCache. Quindi, abbiamo alcuni dettagli tecnici di cui occuparci.

Panoramica dei AppFabric

Allora, parliamone AppFabric in generale. Sono abbastanza sicuro che la maggior parte di voi già lo sappia AppFabric e la sua architettura. Se viene utilizzato nel tuo ambiente, quindi, dovresti avere esperienza pratica con AppFabric. È un sistema di memorizzazione nella cache distribuita .NET in memoria. Viene utilizzato principalmente come cache distribuita gratuita, che fa parte di Windows Server. Viene utilizzato principalmente per applicazioni Web, servizi di livello intermedio e qualsiasi altra applicazione .NET che necessita di memorizzazione nella cache per salvare i viaggi nel database. È stato rilasciato e supportato da Microsoft. Nel 2010 è stata rilasciata la 1.0 e la 1.1 nel 2015 e quella era l'ultima versione di AppFabric. L'API di memorizzazione nella cache, come puoi usarla AppFabric? Sarà principalmente un'applicazione .NET, che consuma AppFabric Data Class e quindi esponendo il Wrapper, sai, esponendo le API di AppFabric attraverso quella libreria. Puoi anche utilizzare alcuni provider, che AppFabric avevo. Provider di stato della sessione ASP.NET e provider di cache di output ASP.NET. Quindi, queste non erano opzioni di modifica del codice, che potresti usare, se non desideri utilizzare la memorizzazione nella cache dei dati, se sei più concentrato sulla memorizzazione nella cache specifica per il Web, queste erano due funzionalità, che sono disponibili senza modifiche al codice.

AppFabric Diagramma di architettura

Ecco il crollo architettonico. È molto semplice avere i tuoi server cache, che sono chiamati Cache Hosts AppFabric. Ti consente di formulare un cluster di cache. Con alcune limitazioni, esisteva un concetto di regola della maggioranza. Devi avere almeno 3 Server e se uno qualsiasi dei Server va giù, violi la regola della maggioranza. Quindi, l'elevata disponibilità e l'affidabilità dei dati possono essere compromesse e quindi c'è stato anche un concetto di Lead Host.

AppFabric Diagramma di architettura

Ma l'idea qui è che hai server cache, che ospitano la tua cache. Formulano un repository per la memorizzazione nella cache e quindi la tua applicazione è in grado di connettere questo repository di cache, di cui è stato eseguito il backup da più server e ti consente di eseguire operazioni di memorizzazione nella cache.

Aveva strumenti di amministrazione della cache basati su PowerShell. La configurazione della cache e la configurazione del cluster erano generalmente su una posizione di archiviazione, un file system o un database. Quindi, quella era un'altra dipendenza all'interno AppFabric. Quindi, c'è una panoramica di come, sai, i server delle applicazioni abilitati alla cache oi client della cache possono connettersi a questo server della cache, sai, chi ospiterà effettivamente la cache nel tuo ambiente.

AppFabric è già la fine della vita. Il primo annuncio è arrivato nell'aprile del 2016. Quando, Microsoft ha iniziato a consigliare di eseguire la migrazione da questa tecnologia perché non sarà più supportata. Hanno annunciato la fine del ciclo di vita del supporto per quel prodotto, per questo prodotto nell'aprile 2016 e quindi hanno interrotto il supporto del flusso principale entro un anno. Quindi 2017 è stata la fine del loro supporto mainstream, per quanto AppFabrics è interessato il supporto ufficiale di Microsoft e quindi il supporto esteso. Stanno estendendo il supporto da alcuni anni, ma l'ultima data attuale sarà il 2022.

Quindi, in pratica è quello e ci aspettiamo che questa possa essere l'ultima estensione che Microsoft ha fornito. Quindi, ti consigliano vivamente di migrare fuori da questa tecnologia. Non è Open Source. Quindi, non ha alcuna comunità per eseguirne il backup. Risorse online, per quanto, anche tu sai, quando stavo preparando questo webinar per ottenere un AppFabric la documentazione della guida al di fuori del portale Microsoft è molto difficile, poiché inizi a utilizzarla.

Quindi, è molto difficile ottenere risorse di aiuto. Il supporto ufficiale non c'è più. È disponibile un supporto esteso limitato. Non verranno più fornite correzioni di bug. Non verranno aggiunti ulteriori miglioramenti al set di funzionalità. Se stai utilizzando piattaforme più recenti, come .NET Core, la compatibilità della piattaforma, gli aggiornamenti di sicurezza non faranno parte di questo. Quindi, è essenzialmente la fine della vita. È un prodotto di scaffale obsoleto ed è per questo che Microsoft consiglia di migrare fuori da esso e di utilizzare alternative ed è per questo che stiamo facendo anche questo webinar, in modo da avere un'opzione di migrazione facile, come parte di NCache, come opzione di sostituzione.

È molto rischioso utilizzare App Fabric principalmente, perché Microsoft, il principale fornitore, ha fornito consigli per migrare da esso. Le implementazioni di produzione sono a rischio, come si dice, a causa dell'assenza di supporto, correzione di bug, miglioramenti, compatibilità o aggiornamenti di sicurezza. Stai andando. Il costo di qualcosa che va giù è molto alto, perché potresti usarlo in un'applicazione mission-critical e se quell'applicazione è in uso AppFabric e se si verifica un problema o si interrompe, non sai dove andare. Quindi, può avere un impatto sulla tua attività e anche sull'esperienza utente complessiva.

Pertanto, ti consigliamo di eseguire la migrazione. In particolare, quando sono disponibili opzioni di migrazione così semplici che NCache offerte. Pertanto, ti consigliamo vivamente di completare questo progetto in via prioritaria e, di fatto, in questo webinar, verso la fine di questo webinar, saresti completamente attrezzato per utilizzare un AppFabric applicazione e ti mostrerò la guida passo passo per migrare da quella, sai, migrare AppFabric a NCache. Quell'applicazione può essere completamente, sai, smettere di usare AppFabric e inizia a usare NCache e poi ti mostrerò quanto è semplice. È un processo in tre fasi, che tratterò in questo webinar e che dovrebbe darti un'idea molto buona di come iniziare a utilizzare NCache in alternativa. Qualche domanda finora?

Quindi, questo era solo un dettaglio introduttivo. Alcuni dettagli su, come AppFabric è venuto in esistenza? Quali sono i problemi e come migrare effettivamente da esso?

NCache come opzione di migrazione

Così, NCache è un'opzione di migrazione. È una scelta molto naturale. NCache è un prodotto .NET nativo al 100%, presente sul mercato da oltre 15 anni, con un track record di mercato completo, con molta trazione, molte implementazioni personalizzate effettive che utilizzano NCache nelle loro applicazioni e abbiamo clienti ovunque, anche in diversi settori.

  • Quindi, primo vantaggio che ottieni riguardo alla migrazione AppFabric a NCache è che ottieni la piattaforma Windows. Così, AppFabric è un prodotto basato su Windows, NCache è anche un prodotto nativo basato su Windows. Quindi, abbiamo un Caching Server basato su .NET, quindi puoi distribuirlo in modo nativo su Windows. Se stai usando AppFabric, potresti utilizzare scatole 2012 o 2016. Quindi, puoi utilizzare lo stesso set di sistemi operativi ed essere ancora in grado di installare NCache sulle stesse scatole. Quindi, non ci sono requisiti hardware specifici o requisiti del sistema operativo, che devi soddisfare per migrare da un'altra tecnologia. Quindi, è molto compatibile con ciò che stai già avendo nel tuo ambiente.
  • È la cache distribuita .NET più vecchia e stabile. Siamo leader di mercato in questo spazio. Abbiamo una vasta base di clienti, che stanno utilizzando NCache nelle loro applicazioni .NET. Da, AppFabric si basa anche sull'API .NET. Quindi, è una scelta molto naturale, dove inizi a usare NCache API o utilizza il nostro approccio wrapper, che è un'opzione senza modificare il codice e migrare fuori AppFabric e inizia a usare NCache. È completamente supportato. Destra. Quindi, questo è il punto principale che abbiamo sollevato nelle diapositive precedenti AppFabric è la fine della vita. Non è supportato da nessuna comunità. Non è Open Source. Non c'è supporto ufficiale. È disponibile un supporto esteso, ma alla fine verrà interrotto. Quindi sei a rischio.
  • Con NCache, ottieni software completamente supportato dal server, nonché dal punto di vista del client. Se riscontri problemi di prestazioni, problemi di sicurezza, bug, qualsiasi cosa, qualsiasi nuova funzionalità è necessaria, puoi semplicemente metterti in contatto con noi e poi lavoreremo con te.
  • È anche molto più potente e ricco di funzionalità.

Quindi, ho appena elencato alcuni dei fattori più comuni, sai, qui, che dovresti considerare NCache come, in alternativa. Principalmente, a causa del supporto .NET e Windows. In secondo luogo, ha un track record nel settore o all'interno delle applicazioni .NET ed è completamente supportato. Le opzioni ufficiali di supporto regolari e 24x7 sono disponibili dai nostri team. E parleremo di quali sono le diverse funzionalità che puoi estendere. Quindi, puoi estendere il tuo caso d'uso di memorizzazione nella cache esistente. Vediamo i clienti che vengono da noi e hanno un caso d'uso per AppFabric ma quando adottano NCache vogliono estendere il loro caso d'uso e iniziare a utilizzare quelle funzionalità avanzate, che sono disponibili solo in NCache ed AppFabric manca completamente di queste caratteristiche. Quindi, questo è un altro fattore che dovresti considerare NCache è un'opzione di migrazione.

NCache Distribuzione nelle imprese

NCache distribuzione, in un'impresa tipicamente grande, ecco come NCache sembra. Hai di nuovo un set di server, che ospita il cluster di cache e diversamente AppFabric, non è necessario disporre di una regola di maggioranza o di un concetto di host principale. È un cluster Cache con architettura peer-to-peer al 100%. Utilizza il protocollo di clustering basato su TCP/IP. Crei un cluster di cache su un team di server e questi contribuiscono alla capacità di gestione delle richieste dalle applicazioni client, che sono ad esso collegate. Quindi, questi potrebbero essere il tuo ASP.NET o ASP.NET Core App Web. È anche sullo stack più nuovo. .NET o .NET Core Servizi Web o .NET Core Applicazioni server.

Quindi, in generale, qualsiasi .NET, .NET Core o anche applicazioni Java, possono connettersi NCache e approfittare di NCache memorizzazione nella cache. È molto semplice.

Puoi iniziare con 2 NCache Server per formulare un cluster di cache e 2 è il minimo per ottenere funzionalità di alta disponibilità e affidabilità dei dati. Anche un singolo server può funzionare ma consiglio vivamente di utilizzarne almeno 2 NCache Server per sfruttare l'elevata disponibilità e l'affidabilità dei dati. Ed è molto flessibile. Ti consente di creare tutte le cache di cui hai bisogno. Le dimensioni possono aumentare, la memoria e poi ci sono molte funzionalità che ottieni come parte dell'adozione NCache.

Trattiamo questa sezione in modo molto dettagliato nel nostro normale NCache webinar sull'architettura ma questa è più una diapositiva introduttiva qui, quindi per favore fatemi sapere se ci sono domande specifiche in merito NCache distribuzione.

NCache può essere distribuito su server dedicati separati, dove le tue applicazioni sono in scatole separate NCache è su scatole separate o puoi averlo NCache e applicazioni anche sulle stesse scatole. Quindi, box hosting di Windows Server NCache può anche fungere da casella client, una casella server web. È solo che la tua applicazione è distribuita sulla stessa macchina in cui NCache è anche in esecuzione. Quindi, anche questa è una possibilità oppure puoi avere un livello separato di server di memorizzazione nella cache e le tue applicazioni possono essere su scatole separate. Quindi, siamo molto flessibili.

È disponibile in Microsoft Azure, nonché AWS e in qualsiasi cloud pubblico o privato. Hai solo bisogno di quello .NET Framework come prerequisito per NCache ed è tutto ciò di cui ha bisogno. Come ho detto, è un prodotto molto flessibile e molto facile da usare. Rispetto ad App Fabric, sarebbe una transizione naturale da AppFabric a NCache se hai intenzione di adottarlo.

Opzioni di migrazione

Quindi, dopo parlerò delle opzioni di migrazione e ti mostrerò esempi pratici per raggiungere questo obiettivo.

Memorizzazione nella cache dei dati dell'app

Quindi, per la memorizzazione nella cache dei dati, anche se abbiamo discusso di avere l'API .NET e quindi abbiamo sessioni e funzionalità di memorizzazione nella cache di output con AppFabric, quindi questo deve essere il tuo caso d'uso generale con AppFabric. Se al momento è in esecuzione un'applicazione live, è probabile che la memorizzazione nella cache dei dati sia il caso d'uso più comune, che devi aver utilizzato nelle tue applicazioni, durante l'utilizzo di App Fabric.

  • utilizzando AppFabric Involucro

    Quindi, parliamo di come migrare un'applicazione utilizzando AppFabric e inizi a usare NCache in sostituzione. Quindi, ci sono due opzioni. Abbiamo progettato il nostro wrapper, lo abbiamo implementato e senza alcuna modifica al codice dell'applicazione. Non è necessario modificare alcun codice. Puoi iniziare a usare NCache in sostituzione di AppFabric. Devi solo usare il nostro NuGet e aggiorna lo spazio dei nomi. Quindi, quello che abbiamo fatto è che abbiamo implementato il nostro wrapper AppFabric API, quindi, nella tua applicazione ogni volta che lo fai AppFabric Chiamate API, dietro le quinte che l'implementazione del wrapper prende quella chiamata e inizia a chiamare NCache ed è un'opzione molto semplice e facile da usare, dove la tua applicazione esistente, che ti mostrerei, come gestire effettivamente. Correrò questo fianco a fianco e tutto il tuo AppFabric Le API inizierebbero a funzionare con NCache senza soluzione di continuità. Non sono necessarie modifiche al codice. Solo una libreria, una modifica dello spazio dei nomi, avrebbe portato a termine il lavoro.

  • Fare Diretto NCache Chiamate API

    La seconda opzione è fare una diretta NCache API chiamata. In questo, apporti modifiche al codice e introduci NCache L'API chiama te stesso. Puoi iniziare a sostituire AppFabric API o puoi iniziare a estendere l'esistente AppFabric API e inizia a utilizzare anche le funzionalità estese.

Puoi anche usare questi due approcci fianco a fianco. Ad esempio, quello che hai già con AppFabric, puoi usare il nostro involucro per coprire quella base e quindi puoi usare il nostro esteso Caratteristiche. Caratteristiche che mancano AppFabric, puoi iniziare a utilizzarlo tramite le nostre API native.

NCache Approccio avvolgente

Quindi, ho intenzione di dimostrare questi due aspetti di NCache con l'aiuto di un'applicazione di esempio. Quindi, questo è il nostro approccio wrapper.

Prima di iniziare, lasciami configurare l'ambiente e mostrarti come fare NCache viene configurato e quanto è facile da configurare NCache ambiente a grappolo. Quindi, per questo, accederò al nostro ambiente demo.

NCache Approccio avvolgente

  • Scaricare NCache Wrapper per AppFarbric
  • Aggiungi NCache Pacchetto Nuget Wrapper
    AppFabric.Wrapper.NCache
  • sostituire AppFabric Spazio dei nomi con NCache Involucro
    /*Replace*/
    using Microsoft.ApplicationServer.Caching; 
    /*with */
    using Alachisoft.NCache.Data.Caching;
  • Esegui e testa l'applicazione

Configurazione dell'ambiente e creazione di un cluster di cache

Questa è la nostra strumento di gestione web. È possibile accedervi da qualsiasi punto del proprio ambiente. Potrebbero essere le caselle dei clienti, le caselle dell'applicazione. Potrebbe essere la tua corrente AppFabric Scatole server. Hai solo bisogno di installare NCache su una o due scatole e poi una volta NCache l'installazione è completata, è possibile avviare il processo di gestione web e configurare un cluster di cache.

Quindi ho NCache installato su due scatole qui, che userei come server del cluster di cache. Quindi, tutto ciò che devi fare è venire qui nella Clustered Cache. Puoi, a proposito, creare una Clustered Cache, una Local Cache, una Clustered Cache. Puoi accedervi dall'indirizzo IP stesso.

Quindi, fai clic su Nuovo e poi puoi nominarlo, diciamo, democache. Puoi nominare qualsiasi cosa. NCache si basa sulla serializzazione binaria e JSON, quindi puoi scegliere uno di questi formati. Andrò con Binary e sceglierò Next.

Sai, con NCache ne abbiamo molti topologie di memorizzazione nella cache e vi esorto a rivedere il nostro NCache webinar sull'architettura, che copre tutte queste topologie in grande dettaglio.

Così, Partizionato della topologia di replica, se devo darti una rapida panoramica di questo, si basa sulle partizioni di cui viene eseguito il backup. Quindi, questa è la nostra topologia di partizione di replica. Ogni server ha una partizione di dati a cui sono connessi i client. Quindi Server 1 e 2 ospitano le partizioni attive. Gli elementi numero 1, 2 sono sul server 1 e gli elementi numero 3 e 4 sul server 2 e quindi abbiamo anche una partizione di backup in cui il server 1 ha il backup su 2 e il server 2 ha il backup sul server 1.

Topologie di memorizzazione nella cache: cache partizionata e cache di replica partizione

Quindi, nel caso in cui un server si interrompa, il backup viene attivato e non perdi alcun dato. Quindi, viene eseguito il backup di ogni server su altri server nel cluster Cache e puoi avere tutti i server di cui hai bisogno, in questa configurazione e allo stesso modo, abbiamo altre topologie, che ti consiglio di rivedere tramite il nostro webinar architettonico. Quindi, Partitioned of Replica è quello che sceglierò. Mantieni tutto semplice.

La modalità di replica tra la partizione attiva e il suo backup sull'altro server può essere Sincronizzata o Asincrona. Andrò con Async perché è più veloce. La sincronizzazione è più affidabile ma anche Async è piuttosto veloce.

E qui specificherò i server che ospiteranno il mio cluster di cache. Quindi, ho due scatole 107 e 108.

Vediamo se è possibile attivare quella cache, parametri basati su TCP/IP, per la comunicazione tra i nodi server e l'eliminazione. Poiché, hai specificato una dimensione della cache qui. In questa schermata, specifichi anche una dimensione della cache. Quindi, puoi anche scegliere lo sfratto da eseguire se la tua cache si riempie. Quindi, in tal caso, Cache può rimuovere alcuni elementi più vecchi e fare spazio agli elementi più recenti.

Se stai usando NCache per Session Caching, come migrazione da AppFabric a NCache, AppFabric Le sessioni memorizzano il modulo in NCache Modulo archivio sessioni, ti consigliamo di disattivare Eviction, perché sono i tuoi dati utente e anche i tuoi dati sensibili, anche se stai utilizzando API di Object Caching, puoi attivare Eviction solo se puoi permetterti di perdere dati, se la tua Cache diventa pieno. Quindi, a proposito, puoi sempre dare anche una dimensione della cache più grande, per mitigare questo problema. Avvia questa cache al termine. Avvia automaticamente questa cache all'avvio del servizio. Pertanto, ogni volta che il server si riavvia, dovrebbe rientrare automaticamente nel cluster della cache, quindi non si verificano tempi di inattività o perdita di dati. Un cluster funziona completamente, se ha tutti i membri attivi e funzionanti, quindi al riavvio dovrebbe rientrare automaticamente. Non dovresti farlo manualmente e basta.

È così facile configurare il nostro cluster di cache. Come puoi vedere, abbiamo 107 e 108, democache è completamente attivo e funzionante.

Monitoraggio delle statistiche della cache

E ora posso mostrarti alcune statistiche. Questi sono i nostri contatori delle prestazioni di Windows. Quindi, ancora una volta è una scelta molto naturale, dove abbiamo il sistema di monitoraggio integrato di Windows attraverso i monitor delle prestazioni di Windows.

Inoltre, disponiamo anche del nostro strumento di monitoraggio, che utilizza i contatori delle prestazioni di Windows, nonché alcuni parametri di monitoraggio, all'interno del NCache applicazione. Ad esempio, un numero di connessioni client, un po' di utilizzo, alcune statistiche all'interno dell'host della cache. Quindi, abbiamo completamente connesso Cluster, Richieste/secondo, Microsecondo medio/cache per mostrarti latenza, aggiunte, recuperi, aggiornamenti, eliminazioni/sec Dimensioni della cache, grafico CPU, grafico memoria, dati totali nel conteggio cache, tempo CPU speso da NCache, Memoria di sistema proprio qui e poi anche i processi client che sono collegati.

Quindi, è molto elaborato e per di più ha dashboard client, visualizzazione report di Server e Client e quindi puoi anche aggiungere le tue dashboard. Diciamo che se creo una nuova dashboard, dovrebbe essere denominata, diciamo, Api Logs, posso semplicemente andare avanti e creare e quindi posso trascinare e rilasciare i contatori da qui.

Ad esempio, posso vedere le operazioni del cluster, posso vedere le aggiunte al secondo. Quindi, posso semplicemente aggiungere i contatori di cui ho bisogno, in particolare per monitorare NCache Grappolo. Quindi, al momento non ci sono applicazioni client in esecuzione, quindi ne eseguirò una rapidamente e per questo dirò semplicemente democache test-stress. Quindi, non appena questa applicazione viene eseguita, ci vuole del tempo per la prima volta. La finestra di PowerShell su questa casella è leggermente ritardata, ma non appena viene eseguita, ecco qua, simulerebbe un'attività fittizia sulla mia cache, ecco qua e puoi vedere le richieste al secondo in arrivo.

Se, lo riporto qui, il microsecondo medio per operazione di cache è poco meno di 100 microsecondi per operazione e abbiamo un bel mix di aggiunte al secondo, recuperi e aggiornamenti in corso. La dimensione della cache sta crescendo, pochi Megabyte. In media è solo una dimensione dell'oggetto di un kilobyte. La CPU è inferiore al 5%, 4% al momento. La memoria è ciò che aggiungi e puoi vedere che tutti i set di contatori mostrano attività qui.

Abbiamo un Client Processes, mostrato anche qui e se ti mostro il Client Dashboard, stiamo vedendo anche tutti questi rapporti.

Quindi, questo era solo per darti un'idea di quanto sia facile da configurare. Quindi, questo è uno dei test, quindi, se lo hai già fatto AppFabric Server, tutto ciò che devi fare è scaricare NCache software dal nostro sito Web, installalo sugli stessi server. Due server sono il requisito minimo consigliato per la disponibilità elevata e l'affidabilità dei dati. Puoi iniziare anche con uno, solo per il test, ma ti consigliamo di utilizzare almeno due server in produzione e, una volta eseguito, puoi passare alla tua applicazione e iniziare a utilizzare lo stesso cluster di cache.

E, dopo l'installazione ovviamente devi creare anche un cluster di cache che abbiamo appena fatto e poi puoi iniziare a usare la tua applicazione e, quindi venire alla tua applicazione e iniziare a usare NCache come opzione di migrazione e che ti mostrerei con l'aiuto di un'applicazione di esempio.

Esecuzione di un campione AppFabric Applicazioni

Quindi, ho questa applicazione di esempio. In effetti, è la stessa applicazione di esempio, con native AppFabric console UI e la seconda che ho convertito da questa NCache AppFabric interfaccia utente della console. Quindi, se apro questi due, si tratta esattamente delle stesse applicazioni ma con piccole modifiche apportate, in modo da renderlo compatibile con NCache. Quindi, e ti guiderò attraverso questi cambiamenti. Ho una copia separata di questo che dimostrerò. Quindi, l'ho impostato come progetto di avvio, giusto e sto pianificando di eseguirlo e comunque prima di eseguirlo, ho un AppFabric Server attivo e funzionante anche qui. Quindi, abbiamo AppFabric Server. Se ti mostro solo le statistiche attuali, ne ho alcune, sai, fammi riavviare e mentre questo viene riavviato, fammi tornare qui e questo sta usando un tipico AppFabric, sai, chiamate con memorizzazione nella cache dei dati. Fammi vedere, se ti mostro da qui, Program.cs.

C'è una domanda? Volevo lanciarne uno a modo tuo. Sì. Uno dei nostri partecipanti ha menzionato, nella diapositiva sei, che ha menzionato che il cluster Cache è in esecuzione su Windows e Linux, quindi, il server può essere ospitato su Linux e, in tal caso, come funziona la funzionalità del dashboard.

Ottima domanda. Questo è un strumento di gestione basato sul web, che è implementato in ASP.NET Core, giusto e ha tutti gli strumenti disponibili anche per l'ambiente Linux. Quindi, se il tuo NCache Il server è ospitato su Linux. Prima di tutto, puoi comunque accedere alla gestione web, che sarebbe come parte di Linux. Puoi accedervi da qualsiasi box Windows o da qualsiasi browser all'interno del tuo ambiente e per il monitoraggio di Linux, non abbiamo ancora contatori PerfMon in Linux, giusto.

I .NET Core è ancora in fase di evoluzione, quindi i contatori PerfMon non sono ancora presenti. Quindi, abbiamo fornito i nostri contatori personalizzati per l'ambiente Linux. Otterresti una visione quasi simile del monitoraggio del server Linux da NCache. Quindi, l'unica differenza sarebbe che sarebbe Linux box invece di Windows e puoi avere un .NET Core installazione su quelle scatole Linux.

Quindi, la vista sarebbe la stessa. È solo che abbiamo scelto un percorso diverso, per superare un limite di .NET Core. I contatori PerfMon non sono presenti, quindi abbiamo implementato il nostro monitoraggio personalizzato per quel particolare caso d'uso. Spero che risponda alla tua domanda.

Quindi, lascia che lo chiarisca e ti mostri la statistica corrente. Quindi, questa è una "democache", con lo stesso nome, puoi persino usare la cache con lo stesso nome NCache anche. Non devi nemmeno cambiare il nome della cache. È così che l'abbiamo progettato. Bene, quindi, lascia che ti mostri le statistiche di questa cache. Quindi, niente al momento è nel AppFabric cluster di cache. Quindi, ho intenzione di avviare questa applicazione.

Quindi, il mio obiettivo qui è eseguire un'applicazione con AppFabric, mostrarti che funziona e poi migreremo da questo, migrare questo verso NCache e smetti di usare AppFabric e inizia a usare NCache. Quindi, ho intenzione di eseguire questo.

Tutto bene. Quindi, questo è il mio caso di prova personale, un'applicazione di esempio, che l'ho progettata. Sta esaminando tutte le API, possibilmente tutte le API di AppFabric. Ecco perché a questo punto vengono eseguite molte API. Quindi, eseguirò questo con AppFabric e quindi eseguire lo stesso campione che avrebbe e avrebbe anche il test di notifica. Quindi, mentre questo viene fatto, lasciami semplicemente agganciare qui e poi portare questo qui. In realtà, lasciami aprire questo esempio proprio qui. Ok, quindi, praticamente la stessa applicazione di esempio, peccato. Tutto bene. Quindi, questo è con, sai, AppFabric e lascia che ti mostri che questo campione ha fatto alcune aggiunte, quindi, se ti mostro le statistiche. Abbiamo il conteggio degli articoli pari a 48, il conteggio delle regioni 60, il conteggio delle richieste 154.

Quindi, abbiamo un sacco di parametri e se ti mostro le chiavi nella cache, puoi vedere, sai, alcune statistiche all'interno della cache. Quindi, ha alcuni oggetti. Uno dei principali, sai e ha un solo server al momento, ma abbiamo anche regioni aggiunte nella cache.

Quindi, è un'applicazione di esempio completamente funzionante e ora eseguirò lo stesso esempio e poi ti mostrerò come apportare, anche come abbiamo apportato le modifiche, a proposito. Quindi, verrò a questo campione, che è una copia del primo, con cui abbiamo eseguito AppFabric e ha apportato modifiche per equipaggiarlo NCache. Avvia una nuova istanza e dovrebbe essere eseguita qui. Quindi, puoi vedere che lo stesso campione viene eseguito NCache e ti mostrerò tutte le modifiche tra un po'.

Quindi, il confronto fianco a fianco ti aiuterebbe davvero, perché abbiamo quello che ci aspettiamo dal campione uno da AppFabric e da cosa otteniamo NCache sarà esattamente lo stesso e non apporterebbe alcuna modifica al codice, al fine di raggiungere questo obiettivo. Ti guiderò attraverso tutti i passaggi che abbiamo fatto. Quindi, è quasi completato. Quindi, lasciatemi arrivare in cima. A proposito, sta ancora funzionando. Quindi, puoi vedere che l'indicatore giallo è fondamentalmente, è il compito che stiamo facendo e se è completato ti mostrerebbe in verde e se vedi un errore dal lato server vedresti, sai, il rosso più scuro , più chiaro a destra e poi rosso più scuro, se è sul lato di analisi, sul lato client. Quindi, ho appena dato loro una vista con codice colore. Quindi, puoi vedere che tutti gli output sono esattamente gli stessi, inclusi i codici di errore e le eventuali eccezioni che potrebbero essersi verificate. Quindi, partendo da qui, aggiungendo il valore della chiave, aggiungendo una chiave non esistente, lo stesso output qui. Quindi, aggiungi l'elemento al test, anche questo è lo stesso output, ottieni l'elemento, l'elemento sei, sai, successo anche su questo, errore. Quindi, puoi vedere una vista affiancata e questo corrisponde esattamente a NCache, Giusto.

Quindi, verso la fine, ti mostrerei solo alcuni eventi. Quindi, sta usando anche le regioni, giusto. Quindi, i casi d'uso della regione proprio qui e vedresti lo stesso output di NCache anche. Quindi, la cancellazione della regione, l'aggiunta della regione, la rimozione del test della regione stanno effettivamente funzionando esattamente come dovrebbe essere. Quindi, questa è una rapida dimostrazione che siamo stati in grado di raggiungere questo obiettivo.

Lascia che ti mostri quali sono i passaggi coinvolti. Ora chiuderò questo e comunque hai tutto il monitoraggio, che avrei dovuto mostrarti ma lascia che ti mostri solo i passaggi che abbiamo eseguito. Tutto quello che abbiamo fatto è che abbiamo aggiunto un pacchetto NuGet e per questo in realtà mi permetta di seguire questo passo dopo passo. Quindi, quello che devi davvero fare è, questa è l'interfaccia utente della console di App Fabric. Quindi, sta usando AppFabric in questo momento.

Quindi, la prima cosa che devi fare è aggiungere un pacchetto NuGet. Quindi, se vai a gestire i pacchetti NuGet, puoi vedere alcuni pacchetti NuGet installati o puoi sfogliare e vederne alcuni, vediamo AppFabric NCache. Se clicco su questo, installa questo. Quindi, questo è il nostro primo passo.

Quindi, se torno qui, all'interno dell'opzione di migrazione, senza alcuna opzione di modifica del codice, la prima cosa che devi fare è introdurre il nostro pacchetto NuGet che è AppFabric.Incarto.NCache e quindi questo passaggio successivo è quello di sostituire Microsoft.ApplicationServer.Caching; spazio dei nomi con il Alachisoft.NCache.cache.dati; Questo è l'assemblaggio dell'involucro e NCache avrebbe preso in carico tutte le chiamate da quel momento in poi.

NCache Approccio avvolgente

  • Scaricare NCache Wrapper per AppFarbric
  • Aggiungi NCache Pacchetto Nuget Wrapper
    AppFabric.Wrapper.NCache
  • sostituire AppFabric Spazio dei nomi con NCache Involucro
    /*Replace*/
    using Microsoft.ApplicationServer.Caching; 
    /*with */
    using Alachisoft.NCache.Data.Caching;
  • Esegui e testa l'applicazione

Lascia che lo faccia davanti a te. Quindi, questo è il campione, che è nativo AppFabric campione. Abbiamo installato NuGet. È ancora in corso.

Domanda veloce, ti faccio strada con questo. La domanda era che l'acquisizione di articoli tramite tag è supportata dal wrapper?

Sì. Ottenere, sai, il AppFabric ha regioni, giusto. Quindi, se stai usando le regioni all'interno AppFabric, quindi utilizzeremo tag e quindi gruppi per supportarlo, ma se desideri utilizzarlo NCache tag, giusto. Quindi, vuoi estendere il tuo utilizzo della cache e anche questo è un argomento all'interno del webinar, in tal caso puoi utilizzare direttamente le nostre API. Quindi, usa il wrapper, per supportare ciò che hai già attraverso le regioni, il tag viene utilizzato dietro le quinte e quindi se desideri utilizzare i tag offerti specificamente da NCache, NCache API. Quindi, puoi usarlo direttamente NCache Anche le API. Quindi, spero che risponda alla tua domanda.

Quindi, lo esaminerò uno per uno, giusto, e userò semplicemente questa diapositiva proprio qui, quindi dobbiamo usare Alachisoft.NCache.cache.dati; giusto, quindi, questa è l'idea qui. Quindi, analizzerò questo, aggiungerò la cache. Non ha alcun riferimento di AppFabric ma questo ce l'ha. Quindi, tutto ciò che devi fare è includere questo spazio dei nomi Alachisoft.NCache.cache.dati; e basta.

Quindi, il pacchetto NuGet ha aggiunto un sacco di risorse proprio qui NCache, sai, Data.Caching che è il wrapper e poi NCache assemblee regolari e tutto questo è ciò di cui hai bisogno. Il NuGet sta aggiungendo NCache risorse client nella tua applicazione e poi vai uno per uno e quindi inizi a sostituirlo.

Fammi solo tornare qui e copiare questo in modo che ovunque lo trovi AppFabric riferimento, ad esempio, qui, sostituirlo con NCache e lo sto facendo davanti a te in modo che tu veda quanto è facile. Quindi, continuiamo. Mi dispiace mio male, usando Alachisoft.NCache.cache.dati; e ripetiamo questo. C'è stato un errore di battitura, quindi penso di averlo eliminato anche io. Tutto bene. Quindi, passerò ad altri test. Questo va bene. Cancella regione va bene, crea regione va bene. Quindi, tutti i test regionali non utilizzano riferimenti diretti, ma poi abbiamo il test dei tag. Quindi, posterò questo esempio anche su GitHub. A proposito, il nostro NuGet è già attivo, con le ultime informazioni sul service pack, ma lo posterò nel file. Quindi, spero di aver completato tutto. Lasciami ricostruire questo. Se ci sono errori, andrò e affronterò specificamente quelli. Quindi, in questo penso. Tutto bene. Quindi, fammi solo confermare che sto usando il wrapper giusto da esso.

Tutto bene. Quindi, una volta che hai fatto questo, fammi sapere, penso di aver perso alcuni ma una volta che hai fatto questo, devi tornare qui e aggiungere le tue impostazioni di connessione lato client. Ad esempio, nel mio caso, è questa casella proprio qui, 101, che è la mia casella e la configurazione deve avere il nome della cache.

Ad esempio, abbiamo avuto 'democache'. Quindi, ti mostrerò solo un test locale con la mia cache locale, ma puoi sempre usare anche la cache remota. Ad esempio, per questo posso usare questa cache proprio qui. Fammi aggiungere la mia casella come client, a destra e quindi aggiungere questo, la mia casella ha un nodo client, ad esempio, 101 è una macchina client.

Tutto bene. Quindi, ora ho tutte le impostazioni. Quindi, posso usare il client.nc conf o posso semplicemente puntare verso 107 come casella client da qui.

Destra. Quindi, questa è una cosa e quindi la configurazione dell'app deve puntare verso il nome della cache. Quindi, non ho intenzione di cambiare nulla qui. Ora fammi eseguire questo esempio con la mia cache effettiva. Ha costruito bene. Dopodiché, lo eseguirò. Lo farò solo come progetto di avvio non appena sarà completato. Avvia un progetto e poi eseguiamolo.

Quindi, è essenzialmente un processo in tre fasi. Puoi includere il nostro NuGet, sostituire il tuo AppFabric libreria, ApplicationServer.Caching con il Alachisoft. NCache.Memorizzazione.Dati. Ricompila l'applicazione. Assicurati che non ci siano errori. Usa il nostro ultimo pacchetto NuGet e aggiorna client.nc conf per puntare verso il server che hai appena scelto e, in questo caso, abbiamo un file client.nc conf che viene aggiunto tra l'altro dal server. Ora che hai configurato un cluster. Punta solo verso quel server e se torno qui ora, lasciami monitorare e lasciami chiudere lo strumento di stress test. Destra. Quindi, dovremmo avere le statistiche mostrate dall'applicazione stessa, giusto.

Quindi, in generale, questo è il ciclo di vita di come migrare e utilizzare il nostro approccio wrapper.

Direct NCache Chiamate API

Lascia che ti mostri anche l'utilizzo diretto delle chiamate API. Ora il secondo approccio in cui c'era anche una domanda su cosa succede se usiamo NCache tag o NCache caratteristiche? Quindi, abbiamo molte funzionalità avanzate disponibili. Quindi, puoi fare direttamente NCache Chiamate API in aggiunta al tuo AppFabric applicazione. Quindi, per questo, ti consiglio di utilizzare la nostra documentazione di aiuto come guida e questa è la nostra API diretta. Quindi, tutto ciò che devi fare è Cache ICache = CacheManager.GetCache e ottieni l'handle della cache e quindi inizia a usare NCache API e, per questo, tutto ciò che devi fare è utilizzare il nostro SDK e abbiamo un'applicazione di esempio che ti dà la possibilità di aggiungere tutto questo in qualsiasi applicazione generica di cui disponi.

Dai un'occhiata NCache API

  • Connetti e disconnetti dalla cache
    ICache cache = CacheManager.GetCache("myDistributedCache");
    cache.Dispose();
    
  • Leggi dalla cache
    Employee employee = cache.Get<Employee>("Employee:1000"); 
    bool isPresent = cache.Contains("Employee:1000");
  • Aggiungi alla cache
    cache.Add("Employee:1000", employee);
    cache.AddAsync("Employee:1000", employee);
    
    cache.Insert("Employee:1000", employee);
    cache.InsertAsync("Employee:1000", employee);
  • Rimuovi dalla cache
    Employee employee = (Employee) cache.Remove("Employee:1000");
    cache.RemoveAsync("Employee:1000");

Quindi anche l'applicazione che utilizza un approccio wrapper può estendere tale utilizzo e inizi a utilizzare NCache Anche le API in una fase successiva.

Quindi, se apro i campioni e per questo te lo mostrerò NCache campioni. Operazioni di base è un'applicazione di esempio molto semplice, che porta a termine il lavoro. Quindi, questo esempio di operazione di base è pronto. Ha un approccio molto semplice, operazioni di base, quindi tutto ciò che devi fare è aggiungere Alachisoft.NCache.Cliente biblioteca.

Quindi, come ho detto, puoi usarlo come riferimento e ovunque tu abbia AppFabric, ad esempio, se apro i Bulk Get Tests, puoi includere questo spazio dei nomi qui, a destra, e all'interno di esso, all'interno di questo, lasciami semplicemente prenderlo nel modulo, dove ne abbiamo effettivamente bisogno. Quindi, per favore abbiate pazienza con me. Fammi trovare dove dovrei aggiungerlo, perché non voglio cambiare nulla nel campione. Giusto, penso che stia solo usando AppFabric test del wrapper su di esso. Quindi, penso, dovrei attenermi a questo esempio di operazione di base. Destra. Quindi, questa è la nostra cache di classe ICache e quindi puoi usare Crea nuovo cliente, che è il tuo oggetto e quindi puoi dire Aggiungi oggetto alla cache, che è la tua implementazione, implementazione personalizzata ma è così che useresti NCache API.

Potresti costruire un elemento della cache e poi chiamare Cache.Add e questo rappresenta NCache, sai, le API Alachisoft Oggetto cache. Quindi, è il Alachisoft.NCache.Client.ICache.

Quindi, restituisce un handle di cache e ti consente di utilizzare NCache API su di esso. Quindi, come ho detto, puoi iniziare con la migrazione tramite wrapper e poi puoi usare le nostre API estese su di esso e poi ci sono molte, sai, risorse di documentazione disponibili, dove puoi vedere come AppFabric Le API guardano e come NCache API. Quindi, se vuoi davvero smettere di usare AppFabric e inizia a usare NCache API, puoi iniziare dall'inizio e quindi utilizzare questo approccio, oppure puoi utilizzare un approccio affiancato, in cui usi il wrapper per una facile migrazione e poi ti estendi su di esso usando NCache API.

Direct NCache Chiamate API

Alcune modifiche API tra NCache ed AppFabric

Memorizzazione nella cache di ASP.NET con NCache

L'abbiamo già fatto. Così Memorizzazione nella cache della sessione ASP.NET, devi semplicemente cambiare il provider in modo tale da poter fornire modifiche alla configurazione web a cui puntare NCache come archivio di sessione e output a cui puoi semplicemente puntare NCache come fornitore di cache di output. Disponiamo di documenti di aiuto dettagliati anche su questo fronte. Ad esempio, se dici NCache Session Caching, punterà al nostro provider di stato della sessione e allo stesso modo puoi anche cercare la cache di output. Bene, quindi, questo è ciò che devi modificare all'interno della configurazione web.

<configuration>
  ...
  <sessionState cookieless="false"
                regenerateExpiredSessionId="true"
                mode="Custom"
                customProvider="NCacheSessionProvider"
                timeout="20">
    <providers>
      <add name="NCacheSessionProvider"
          type="Alachisoft.NCache.Web.SessionState.NSessionStoreProvider"
           cacheName="demoClusteredCache"
           sessionAppId="demoApp"
           exceptionsEnabled="true"
           writeExceptionsToEventLog="false"
           enableLogs="false"
           enableSessionLocking="true"
           sessionLockingRetry="-1"
           emptySessionWhenLocked="false" />       
    </providers>

  </sessionState>
...
</configuration>

Lo stesso vale per la memorizzazione nella cache di output, che è proprio qui. Quindi, se fornisco una panoramica del provider, questo è ciò che devi aggiungere all'interno della tua applicazione per aumentare la cache di output di App Fabric NCache memorizzazione nella cache di output.

<!-- caching section group -->
<caching>
  <outputCache defaultProvider ="NOutputCacheProvider">
    <providers>
    <add name="NOutputCacheProvider" 
         type= "Alachisoft.NCache.OutputCacheProvider.NOutputCacheProvider, Alachisoft.NCache.OutputCacheProvider, 
         Version=x.x.x.x, Culture=neutral, PublicKeyToken=cff5926ed6a53769" 
         cacheName="demoClusteredCache" 
         exceptionsEnabled="false"enableDetailLogs="false" 
         enableLogs="true" 
         writeExceptionsToEventLog="false"/>"
    </providers>
  </outputCache>
</caching>

E, sul lato sinistro puoi vedere l'elenco con NCache è enorme. Sessioni multisito sono supportati, stato di visualizzazione provider è supportato, che manca in AppFabric. Cache di output con ganci personalizzati è una caratteristica unica NCache. Allo stesso modo, abbiamo SignalR Backplane, ASP.NET Core Memorizzazione nella cache delle risposte, ASP.NET Core SignalR Backplane. Quindi, questo elenco è qualcosa di molto ampio, perché stiamo aggiornando attivamente il nostro set di funzionalità rispetto a AppFabric.

Replica WAN

E poi, in generale, sai, NCache è al 100% con architettura peer-to-peer rispetto a AppFabric. Molte topologie di memorizzazione nella cache a confronto, che puoi rivedere. È disponibile la replica WAN. Il supporto Multi Datacenter è disponibile, fuori NCache, dove sono disponibili Datacenter Attivo-Passivo, Attivo-Attivo o 3+ Attivo-Attivo.

Supporto multi-datacenter: replica WAN

Abbiamo una vasta gamma di clienti, di cui abbiamo già discusso per eseguire il backup, dove NCache viene distribuito attivamente in ambienti Windows e .NET Quindi, penso che si concluda praticamente la sessione di oggi. Fammi sapere se ci sono domande.

Allora, ho una domanda qui su Ron per te. La domanda è formulata nel ns AppFabric Cache Client Wrapper che abbiamo. Forniamo tutti i nodi del cluster, le porte, le impostazioni di timeout, ecc. tramite API rispetto a app.config. Ora, usando il wrapper, possiamo fornire lo stesso tramite API e configurazioni?

Sì, puoi, perché in generale abbiamo anche parametri inline, giusto. Quindi, il wrapper è progettato in modo tale da consentirti di connetterti alla cache con modifiche minime al codice e anche modifiche alla configurazione. Quindi, è progettato in questo modo, giusto. Quindi, questo è il motivo per cui volevo far sembrare che fosse un'opzione molto semplice da migrare. Quindi, ti abbiamo mostrato solo le modifiche al livello di configurazione, ma se sei interessato a fornire qualcosa in linea abbiamo i parametri init. Quindi, abbiamo parametri di inizializzazione, che ti consentono di fornire l'elenco delle porte Server, Server 1, Server 2, Server 3. Quindi, tutte quelle impostazioni lato client che hai visto come parte di client.ncconf che, fammi aprire proprio qui. Quindi, queste sono impostazioni di configurazione che puoi specificare anche all'interno del codice dell'applicazione. Quindi, questa è una possibilità.

Quindi, uno dei nostri partecipanti chiede alcune informazioni sulla performance. Come, larghezza di banda.

NCache è molto scalabile, ha la capacità di equipaggiare la tua applicazione per ottenere, sai, una scalabilità lineare del 100%, giusto. Quindi, puoi aggiungere sempre più server e aumenterebbe semplicemente la capacità di gestione delle richieste. Quindi, se vuoi solo un'idea generica, ti consiglio vivamente di rivedere il nostro benchmark. Lascia che ti mostri questo. Abbiamo i nostri benchmark pubblicati, con le nostre e sai, Operazioni di throughput al secondo con solo 5 NCache Server, siamo stati in grado di raggiungere 2 milioni di richieste al secondo. Giusto, quindi, è qualcosa che puoi rivedere e puoi vedere anche da qui, abbiamo appena usato 5 NCache server. C'è un dimostrazione video anche di questo. Quindi, se vuoi rivedere questo, c'è a whitepaper e poi c'è un video dimostrativo dal vivo di questo test, in cui abbiamo iniziato con 2 server e poi siamo stati in grado di ottenere un certo throughput e capacità di gestione delle richieste e quindi siamo stati in grado di aumentare il numero di server caricando sempre più. Con un cluster di soli 5 nodi siamo stati in grado di raggiungere 2 milioni di operazioni al secondo.

Quindi, per quanto riguarda le risorse del server, se la tua domanda è più focalizzata su quale larghezza di banda o risorse del server sono richieste, questi erano server AWS, server piuttosto di fascia alta, perché volevamo davvero dimostrare la capacità o l'estensione che hai può ottenere con NCache. Quindi, siamo stati in grado di estendere i server ai limiti e quindi siamo stati in grado di ottenere 2 milioni di richieste al secondo. Ma puoi anche utilizzare un tipo di configurazione di server web con un massimo di 8 core, con 1 scheda di interfaccia di rete Gigabit con requisiti di memoria fino a 16 giga o più. Quindi, anche 8 Giga vanno bene, ma 16 Giga è quello che consigliamo. In modo che tu abbia memoria adeguata, per ospitare i tuoi dati.

Perché è NCache una soluzione migliore di Redis?

Quindi, in pratica, se devo fornire i primi cinque motivi, prima di tutto è .NET rispetto a .NET non nativo. Redis non è molto compatibile con Windows. Ha una versione trasferita, supportata da Microsoft Open Tech, una terza parte. Redis laboratori o Redis Lo stesso Open Source consiglia di non usarlo Redis su piattaforma Windows. Quindi, rispetto a AppFabric NCache è una misura migliore. Principalmente, a causa del fatto di essere sullo stesso stack di AppFabric & Redis non è. Redis in generale, è più un prodotto basato su Linux. Invece NCache è un prodotto basato su Windows e Linux.

Ci sono molti problemi di alta disponibilità con Redis. Redis il cluster non è al 100% con architettura peer-to-peer, rispetto a NCache. NCache è un cluster di cache con architettura completamente peer-to-peer, in cui è possibile portare offline qualsiasi server. Non avrebbe alcun impatto sui tuoi client cache, che sono collegati ad esso e non ti darebbe alcuna perdita di dati. Quindi mancano molte funzionalità Redis. Ad esempio, la cache del client non è presente. L'hanno introdotto di recente, ma è molto semplice. Abbiamo la cache client dal 2008, giusto. Quindi, è una funzionalità molto vecchia, che è molto migliorata come parte di NCache. Bridge, codice lato server SQL Come la ricerca, il read-through, i gestori di write-through, il caricatore della cache, tutte queste funzionalità sono mancanti in Redis e vorrei che leggeste velocemente un documento comparativo, che è pubblicato sul ns pagina di confronto. Quindi, puoi vedere azzurro Redis vs NCache, Redis vs NCache differenze sommarie, Redis vs NCache (Piano scorrevole) e poi ci sono alcune informazioni generali su NCache.

Quindi, lascia che ti mostri questo molto velocemente e fammi sapere se ci sono domande. Sono registrato su questo, quindi fammi accedere. Certo. Una domanda di follow-up su questa è una domanda era su Async Replication.

Possono presumere che il comportamento delle repliche asincrone sia sicuro, è garantito?

È, è…., quindi, lo sai. Se fallisce nel mezzo, che è uno scenario molto raro, puoi perdere quell'aggiornamento ma è piuttosto veloce. Abbiamo un thread dedicato. Lascia che ti mostri il diagramma e poi torno alla prima domanda. Quindi, affrontiamo prima questa domanda. Quindi, partizione attiva del Server 1, non appena la tua applicazione aggiunge qualcosa qui, ritorna NCache è responsabile dell'aggiornamento nel backup e lì hai opzioni di sincronizzazione e asincrono.

Topologie di memorizzazione nella cache: cache partizionata e partizione-replica

Quindi, async, è abbastanza veloce. È in meno di un millisecondo e sarò molto felice se riesci a riprodurre uno scenario in cui viene attivata una chiamata sul server 1 e durante la replica questo server si interrompe e quindi non riesci a ottenere l'aggiornamento. È uno scenario molto raro all'interno NCache. Anche i nostri team di controllo qualità lavorano duramente per riprodurlo e non sono in grado di farlo. Quindi, con un leggero ritardo, con meno di millisecondi, il thread dedicato aggiorna il backup e mentre quel server si interrompe, c'è una leggera possibilità che tu perda l'aggiornamento, ma come ho detto, è uno scenario molto raro da riprodurre e abbiamo l'opzione di sincronizzazione disponibile anche a, per far fronte a questa situazione. Se sei molto preoccupato di dover aggiornare continuamente i backup, puoi utilizzare gli aggiornamenti di sincronizzazione, in cui un client aggiorna l'attivo e il backup in una volta sola. È un'operazione transazionale. Se non riesce nel mezzo, annullerebbe l'intera operazione. Quindi, è molto sicuro, se la tua domanda è focalizzata su questo.

Quindi tornando a Redis, Questo è azzurro Redis vs NCache. Quindi, puoi vedere il confronto del livello di funzionalità e puoi vedere l'elenco in cui Azure Redis hanno un ruolo parziale, un supporto limitato su tutti questi fronti. Quindi, l'alta disponibilità è parzialmente supportata, le topologie della cache sono limitate, Replica WAN è molto limitato, Cache ASP.NET Caratteristiche, memorizzazione nella cache degli oggetti Caratteristiche, dati le caratteristiche sono completamente mancanti Redis e se stai usando NCache per la memorizzazione nella cache degli oggetti, ha molto senso avere queste funzionalità di sincronizzazione disponibili.

SQL Come la ricerca manca, raggruppamento di dati manca, il codice lato server è completamente mancante e non è nemmeno .NET perché il Redis non è scritto in .NET. Quindi, poi l'elenco continua.

La domanda è: quindi, lo so NCache è nativo di Windows e confrontato con Linux Redis è meglio, tuttavia, come funziona NCache su Linux confronta con Redis su Linux?

Stesso set di funzionalità, stesso supporto, supportato tramite .NET Core è disponibile su Linux. Così, NCache è, non è solo un prodotto Windows, rispetto a Redis. Dove Redis è principalmente un prodotto orientato a Linux. NCache è Windows e Linux. Quindi, qualsiasi set di funzionalità che stai vedendo qui è completamente supportato in ambiente Linux. Tutti i .NET Core versioni su Windows, tutti i Linux sono alla pari tra loro. Abbiamo il nostro monitoraggio personalizzato, per soddisfare il problema del contatore PerfMon di Linux, ma a parte questo, tutte le funzionalità che stai vedendo, questo confronto è praticamente valido, tutto è valido anche per l'ambiente Linux. Sono più concentrato su Windows, perché Redis in generale manca completamente, si sa, il supporto a Windows. Ma, per quanto NCache è interessato, la nostra offerta Windows e l'offerta Linux è esattamente la stessa. Quindi, tutte le caratteristiche di cui abbiamo discusso, discusso NCache è un chiaro vincitore anche in ambiente Linux e, di fatto, con le nuove implementazioni, con l'adozione di più clienti .NET Core all'interno delle loro applicazioni, preferiscono utilizzare NCache su ambienti Linux. Perché, sai, è più compatibile e più facile da usare, dal punto di vista delle licenze, dal punto di vista dell'Open Source, Linux è piuttosto più facile in confronto. Quindi, il nostro NCache server, seduti su server Linux, attraverso .NET Core è una pratica molto comune in questi giorni.

Abbiamo il supporto Docker?

Sì, certo. Come non avere Supporto Docker con NCache. Se vai alla nostra pagina di download, troverai una sezione su Docker. abbiamo .NET Core Docker Images, che sono disponibili su Linux e poi abbiamo .NET Framework Windows e poi abbiamo anche i file Docker disponibili per entrambi. Quindi, per Enterprise, Professional, Open Source, puoi usare il nostro, tra l'altro, che abbiamo intenzionalmente mantenuto .NET Core Immagini solo per Linux perché è quello più comune e infatti puoi usare il nostro Immagini Docker anche in qualsiasi piattaforma Kubernetes. Come OpenShift, come Servizio Azure Kubernetes, Servizio Elastic Kubernetes offerto anche da AWS e Google Kubernetes Service. Quindi, è molto comune. È molto popolare nella distribuzione di applicazioni. Quindi, è qualcosa che puoi scaricare direttamente dal nostro sito Web o andare su Hub Docker per questo motivo.

Per favore conferma, se risponde alla tua domanda. Fammi sapere se ci sono altre domande. Chiunque altro? Anche se non riesci a ricevere tutte le tue domande ora, che sono sicuro che ne stiamo già ricevendo molte, ma sei sempre libero di inviare un'e-mail support@alachisoft.com. In caso di domande tecniche o domande sulle funzionalità, inviare un'e-mail support@alachisoft.com. Il nostro team di supporto risponderà a tutte le tue domande, a qualsiasi tuo pensiero, domande sui casi d'uso, ecc.

E, se sei interessato a ottenere NCache iniziato, beh, abbiamo due mesi gratis NCache Enterprise prova gratuita disponibile per il download e quindi l'utilizzo nel tuo ambiente e se lo desideri puoi contattarci all'indirizzo support@alachisoft.com or sales@alachisoft.com. Ti aiuteremo a configurarli e anche a farci sapere su quali casi d'uso stai lavorando? Quali caratteristiche ti interessano? Faremo in modo che tu possa ottenere una soddisfazione dal punto di vista tecnico, assolutamente.

Avevamo anche una domanda in arrivo, possiamo ottenere le diapositive della presentazione?

Certo, non solo questa registrazione del webinar uscirà, quindi aspettati sicuramente che nella tua e-mail, ma possiamo anche far uscire le diapositive, a te in particolare. Se vuoi o se qualcun altro vuole le diapositive vai avanti e richiedile ora. Mi assicurerò che tutti ricevano le diapositive.

Se non ci sono altre domande, tieni presente che puoi contattarci in qualsiasi momento. Scaricare NCache Enterprise, se non l'hai già fatto e sicuramente giocaci. Se desideri assistenza per installarlo nel tuo ambiente, contattaci sicuramente.

Cosa fare dopo?

 
© Copyright Alachisoft 2002 - . Tutti i diritti riservati. NCache è un marchio registrato di Diyatech Corp.