Node.js è un ambiente di runtime JavaScript back-end open source, multipiattaforma che esegue codice JavaScript al di fuori di un browser Web per creare facilmente applicazioni di rete veloci e scalabili.
NCache, come sappiamo, una cache in memoria, distribuita e scalabile linearmente, archivia i dati per prestazioni migliori e un'elevata scalabilità. NCache, una cache .NET nativa che fa miracoli quando si tratta di un rapido accesso ai dati per migliorare le prestazioni dell'applicazione, ora ne sta espandendo l'utilizzo supportando il client Node.js. Node.js ora può essere utilizzato con NCache API lato client che include operazioni di base, tecniche di scadenza dei dati, ed bloccaggio, ecc. insieme a Cache di sessione.
NCache Dettagli NCache Docs Documenti sulle funzionalità lato client
Perché usare Node.js con NCache?
NCache con il supporto di Node.js insieme alle sue vaste funzionalità e capacità di memorizzazione nella cache avanzate offre opzioni flessibili per utilizzare Node.js il più facilmente possibile. Se desideri che la tua applicazione Node.js venga eseguita in un ambiente con bilanciamento del carico con prestazioni migliori, NCache presenta i seguenti vantaggi:
- Migliore prestazione: I dati vengono archiviati in una cache in memoria più vicina all'applicazione Node.js, offrendo prestazioni massime e tempi di risposta più rapidi.
- Affidabilità: Se un server delle applicazioni si interrompe o in qualche modo i dati vengono persi, NCache fornisce affidabilità laddove i dati rimangono disponibili.
- Scalabilità: NCache fornisce scalabilità lineare consentendo di aggiungere più server cache quando il carico delle transazioni aumenta. Ad esempio, durante l'utilizzo dell'applicazione Node.js, è possibile aggiungere istantaneamente un nuovo server cache a seconda della situazione e continuare a soddisfare più richieste senza dover interrompere l'applicazione.
- Disponibilità e tolleranza ai guasti: Durante l'utilizzo NCache con l'applicazione Node.js in una web farm, NCache fornisce una migliore tolleranza agli errori mantenendo il dati disponibili in tutti i nodi del server in una cache in cluster senza un singolo punto di errore.
- Topologie a grappolo: NCache offre diverse topologie di memorizzazione nella cache per rendere la tua applicazione Node.js più affidabile e scalabile. Per esempio, Topologia replicata fornisce il bilanciamento del carico in modo che l'applicazione non subisca traffico intenso e Topologia della replica partizionata fornisce maggiore affidabilità e scalabilità per transazioni più veloci.
NCache Dettagli Topologie di memorizzazione nella cache NCache Architettura
Node.js Funzionalità lato client di NCache
NCache ha una varietà di Funzionalità lato client fatto apposta per te. Node.js può essere utilizzato con queste funzionalità insieme alle loro API e ad altri metodi. In questo blog, discuterò alcune delle funzionalità insieme alla loro implementazione per una migliore comprensione della memorizzazione nella cache dei dati con Node.js.
Prima di utilizzare le funzionalità seguenti, è necessario installare il pacchetto npm denominato ncache-client
necessario per l'utilizzo NCache client con Node.js. Questo pacchetto installa tutte le librerie client richieste per la tua applicazione Node.js. Digitare il comando seguente nella sezione terminale di Visual Studio Code:
1 |
npm install ncache-client |
Quindi, includi il modulo seguente nell'applicazione Node.js per iniziare.
1 |
const ncache = require('ncache-client') |
Operazioni di base per la memorizzazione nella cache dei dati
NCache fornisce vari API CRUD per la memorizzazione nella cache dei dati utilizzando Node.js. I dati possono essere un singolo elemento o un blocco e possono essere utilizzati in modo sincrono per aggiungere, aggiornare o rimuovere dalla cache. Di seguito è riportata l'implementazione per aggiungere dati nella cache con un oggetto personalizzato utilizzando l'API Node.js Inserisci().
1 2 3 4 5 6 7 8 9 10 |
async function main(){ product = await this.fetchProductFromDB(); // Generate a unique cache key for this product and then create a CacheItem var key = "Product:" + product.getProductID(); var cacheItem = new ncache.CacheItem(product); // Add Product object to cache var version = await this.cache.add(key, cacheItem); } |
Tag dei dati della cache
NCache fornisce Tag, con i quali puoi associare parole chiave ai tuoi elementi della cache per eseguire varie operazioni sui dati per risultati efficienti. Di seguito è riportata l'implementazione per aggiungere dati con tag utilizzando il setTag() proprietà.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
async function main(){ var customer = this.fetchCustomerFromDB("ALFKI"); var key = "Customers:" + customer.getCustomerID(); // Specify tags and create a CacheItem var tags = new ncache.Tag[2]; tags[0] = new ncache.Tag("East Coast Customers"); tags[1] = new ncache.Tag("Important Customers"); var cacheItem = new ncache.CacheItem(customer); // Setting the tag property of the cacheItem cacheItem.setTags(tags); // add customer object in cache var version = await this.cache.add(key, cacheItem); } |
Strategie di scadenza dei dati
NCache supporta strategie di scadenza dei dati basate sul tempo, che sono Scadenza assoluta ed Scadenza scorrevole, dove si specifica l'intervallo di tempo per la scadenza dei dati memorizzati nella cache. Di seguito è riportata l'implementazione per aggiunta/aggiornamento di elementi della cache con scadenza assoluta.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
async function main(){ var product = this.fetchProductFromDB(1001); var key = "Product:" + product.getProductID(); // Create a CacheItem var cacheItem = new ncache.CacheItem(product,"FQN.Product"); // Set Expiration type and TimeSpan var expiration = new ncache.Expiration(ncache.ExpirationType.Absolute, ncache.TimeSpan.FromMinutes(5)); cacheItem.setExpiration(expiration); // add/update product with expiration in cache await this.cache.insert(key, cacheItem); } |
Chiusura NCache Pub/Sub con NCache Query SQL nella cache
Memorizzazione nella cache della sessione di Node.js con NCache
NCache fornisce un archivio per l'archiviazione dei dati di sessione in Node.js che utilizza il middleware di sessione rapida per gestire le sessioni. Se la tua applicazione è in esecuzione in una server farm Web e hai bisogno di uno storage affidabile e scalabile per la persistenza della tua sessione, la risposta è NCache! Quindi, discuterò come configurare NCache per le sessioni di Node.js.
Passaggio: 1 Configura NCache in Config.json
In primo luogo, NCache deve essere configurato nell'applicazione Node.js config.json
file fornendo il nome della cache e altre proprietà correlate come mostrato di seguito.
1 2 3 4 5 6 7 8 |
{ "ncacheStore": { "ttl" : 3600, "cacheName" : "demoCache", "disableTouch" : false, "sessionTag" : "sess" } } |
Passaggio: 2 Configura NCache Memorizzare e Session Middleware in Express.js
Successivamente, le configurazioni devono essere eseguite in express.js
file in cui viene creato il middleware di sessione insieme a NCache come archivio personalizzato da utilizzare per l'archiviazione dei dati.
1 |
const store = await NCacheStore.CreateStore(config.ncacheStore); |
Dopo la configurazione NCache come archivio dati, ora sei pronto per utilizzare le sessioni di Node.js con NCache come archivio di persistenza della sessione. Per una comprensione approfondita, fare riferimento a Documenti di memorizzazione nella cache della sessione di Node.js.
Concludo il blog!
NCache, essendo una soluzione di memorizzazione nella cache distribuita, supporta Node.js per essere utilizzato senza problemi insieme alle sue API lato client e ai relativi metodi. NCache aumenta la velocità, migliora le prestazioni e offre affidabilità insieme alla scalabilità. Quindi, sii pronto e usa NCache adesso!
Grazie per aver fornito le informazioni su Node.js in NCache è stato molto utile per me. Molte informazioni possono essere utili per gli sviluppatori node.js. Il mio apprezzamento per te! Continua a pubblicare più contenuti.
Il tuo blog è stato assolutamente fantastico! Una grande quantità di ottime informazioni e questo può essere utile in qualche modo o forse nell'altro modo. Continua ad aggiornare le tue informazioni.