Aggiornamenti dal vivo in NCache con il 100% di disponibilità

NCache è una cache distribuita in memoria estremamente veloce e scalabile per .NET/.Net Core applicazioni. Soprattutto, NCache viene utilizzato negli ambienti di produzione per applicazioni mission-critical che spesso sono anche interattive con il cliente. In tali applicazioni, l'elevata disponibilità e il 100% di uptime sono requisiti estremamente vitali NCache ha bisogno di soddisfare. E NCache soddisfa questi requisiti in modo molto efficace e attraverso molte funzionalità.

Tra queste funzionalità c'è Live Upgrade che ti consente di aggiornare NCache a una versione più recente senza causare tempi di inattività dell'applicazione.

Come funziona l'aggiornamento in tempo reale di un cluster di cache?

Il notevole ritardo dell'aggiornamento manuale dei server viene notevolmente ridotto grazie alla funzione di aggiornamento in tempo reale. NCache consente di aggiornare tutti i server di un cluster di cache con un lag minimo. NCache, in base alla progettazione, richiede che tutti i server eseguano la stessa versione di NCache. Questo viene fatto per prevenire eventuali problemi di incompatibilità della versione.

Per mantenere aggiornata la versione del tuo cluster, NCache offre una topologia Bridge per la replica WAN che funge da ponte tra due cluster di cache. In questo modo, puoi replicare in modo incrementale i dati della cache attualmente in esecuzione all'ultimo NCache cache utilizzando quel bridge nel frattempo mentre le cache continuano a essere eseguite.

Segui i passaggi forniti qui per aggiornare le cache del tuo cluster tramite Live Upgrade.

Passaggio 1: rimuovere il sottoinsieme di server per l'aggiornamento

Nel tuo cluster, se hai 2 o più server cache, prendine un sottoinsieme per aggiornare il NCache software server su quei server.

Quando si elimina un sottoinsieme, è meglio avere un totale di 4 o più server cache in modo che almeno 2 server rimangano nel cluster di origine. Ma, nel caso in cui il tuo cluster non comprenda 4 o più server, va bene lo stesso. Tuttavia, in tal caso, l'applicazione può affrontare tempi di inattività se l'unico server che aiuta l'applicazione si interrompe.

Passaggio 2: crea un cluster di server di versione più recente

Dopo aver aggiornato NCache su 2 o più server cache, crea un cluster di tutti e avvia la cache su questi server. È necessario disporre di almeno 2 server in ogni sottocluster per garantire un'elevata disponibilità: se è presente un solo server e si interrompe, potrebbero verificarsi tempi di inattività.

Passaggio 3: crea un ponte attivo-passivo tra vecchio e nuovo

Dopo aver creato correttamente un cluster che comprende tutti i server cache che eseguono una versione più recente di NCache, crea un ponte tra il nuovo cluster (comunemente noto come bersaglio) e il cluster della versione precedente (source).

Per creare questo bridge, puoi utilizzare due server dedicati con la versione precedente di NCache oppure eseguire la topologia bridge su due dei server con una versione precedente di NCache. Utilizzare la configurazione attivo-passivo della topologia del bridge e attendere che il cluster di destinazione sia completamente sincronizzato con il cluster di origine.

Sul nodo bridge, è necessario aggiungere gli IP della cache di destinazione per popolare i server bridge. Puoi farlo tramite bridge.ncconf come segue:

<configuration>
  <bridge-config … >
      <cache … servers-list="20.200.20.38, 20.200.20.29" … />
   </bridge-config>
</configuration>

Passaggio 4: migra alcuni client alla nuova versione

Dopo che entrambi i cluster sono stati completamente sincronizzati, è necessario prendere un sottoinsieme dei client e migrarli tutti al cluster di cache della nuova versione. Una volta eseguita la migrazione, è necessario arrestare immediatamente tutti i client collegati alle vecchie versioni. Questa migrazione del client cache tramite bridge attivo-passivo garantisce che non vi siano perdite di dati e interruzioni nelle operazioni dell'applicazione client.

Passaggio 5: aggiorna i server di versioni precedenti rimanenti

Dopo che le connessioni client sono state trasferite correttamente al cluster di destinazione, è necessario arrestare e aggiornare il cluster di origine. Dopo l'aggiornamento NCache software su tutti i suoi server, aggiungere questi server al cluster di cache della versione più recente.

Questo dovrebbe essere il tuo ultimo passaggio nell'utilizzo della funzione Live Upgrade di NCache per aggiornare il tuo cluster di cache esistente.

Passaggio 6: migrare tutti i client cache nel nuovo cluster

Ora è necessario migrare i restanti client connessi alla vecchia versione al cluster di cache della nuova versione. Dopo che tutti i tuoi client sono stati migrati con successo, puoi iniziare a eseguire la tua applicazione su di essi.

Usa i vecchi client con il nuovo cluster di cache

Nel caso in cui non desideri aggiornare i tuoi client cache, NCache consente ai client di versioni precedenti di funzionare senza problemi con il cluster di cache di versioni più recenti. Quindi, sta a te decidere se aggiornare i tuoi client o mantenere la versione precedente NCache client sui server delle applicazioni o sui server Web (NCache remote clientS). La tua applicazione funzionerà perfettamente anche se tutti i tuoi server cache sono stati aggiornati alla versione più recente. Tutto questo è possibile perché NCache fornisce compatibilità con le versioni precedenti per i client.

Usa il nuovo client cache con l'API di compatibilità con le versioni precedenti

Si consiglia di aggiornare NCache software client sull'applicazione e sui server Web perché il client più recente potrebbe essere dotato di alcune correzioni di bug essenziali. Questo processo è estremamente semplice e senza interruzioni. Questo perché la versione più recente del client è retrocompatibile con la versione precedente. Questa compatibilità consente alla tua applicazione di funzionare con il client più recente senza notare alcun cambiamento. La parte migliore dell'utilizzo degli aggiornamenti in tempo reale nella tua applicazione è che non richiede alcuna modifica del codice o ricompilazione. Devi solo aggiornare la versione di NCache software client e il resto viene fatto automaticamente.

Per ottenere istruzioni dettagliate dettagliate su come utilizzare la funzione di aggiornamento in tempo reale per aggiornare il tuo NCache cluster, segui la nostra documentazione su Aggiornamento dal vivo NCache Versione.

Cosa fare dopo?

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