NCache es un caché distribuido en memoria para.NET/.NET Core, Java, Python, NodeJS y Scala, es extremadamente rápido y escalable. Se utiliza en entornos de producción para aplicaciones de misión crítica, muchas de las cuales también son interactivas con el usuario. En tales aplicaciones, la alta disponibilidad es crucial. Y a través de una variedad de características, NCache hace un gran trabajo al satisfacer estas necesidades.
Una de estas características es Live Upgrade, que le permite actualizar NCache a una versión más nueva sin causar ninguna interrupción a su aplicación a través de un Puente. NCache proporciona una Topología de puente para la replicación de WAN que sirve como puente entre dos clústeres de caché que mantienen la versión más reciente de su clúster. Sin embargo, la característica Live Upgrade solo está disponible para NCache Enterprise Edición.
¿Por qué actualizar a NCache versiones mas nuevas
Si está utilizando una versión anterior de NCache, le recomendamos encarecidamente que actualice a la última versión para obtener los beneficios de todas las funciones y mejoras más recientes. Para ver todos los detalles de estas características y mejoras presentadas por NCache 5.3 SP1, puede leer el notas de la versión of NCache 5.3 ESP1.
Actualización en vivo de NCache con pérdida de datos insignificante
El tiempo que lleva actualizar manualmente el software se reduce en gran medida a través de la actualización en vivo. Puedes usar el Actualización en vivo para clonar datos de su caché operativa actual (conocida como caché de origen) a la caché más reciente (caché de destino) mientras las cachés aún se están ejecutando.
Debido a la naturaleza asíncrona de la replicación de datos, todos los clientes conectados a la memoria caché de origen perciben actividad en la memoria caché de origen, incluso si se realiza una copia completa sin problemas en la memoria caché de destino. Mientras tanto, la configuración del caché de origen continúa funcionando sin problemas y no se ve afectada por el cambio.
La figura que se muestra arriba muestra un clúster de 4 nodos con una versión anterior de NCache instalado. Primero, detiene los nodos 3 y 4 e instala la última NCache versión en estos nodos. A continuación, cree una memoria caché de 2 nodos en el nuevo NCache versión máquina instalada (nodos 3 y 4). En este punto, tenemos un total de dos cachés que constan de 2 nodos cada uno. Llamémoslos caché de origen (antiguo NCache versión caché instalada) y caché de destino (recientemente NCache versión caché instalada). Luego, debe crear un puente entre estos dos cachés para transferir datos desde el caché de origen al caché de destino. Detenga los nodos de la memoria caché de origen e instale la última NCache versión en él. A continuación, agregue los nodos 1 y 2 a la memoria caché de destino para convertirlo en un clúster de 4 nodos.
Idealmente, es mejor tener un clúster de 4 nodos para poder dividir los datos entre los dos nodos del servidor. La división de los nodos del clúster se basa en el hecho de que esta división no provoca la pérdida de datos de ninguna manera. Cualquiera que sea la división del clúster que elija, debería poder contener datos iguales en su clúster dividido. Si tiene un clúster de 2 nodos, no recomendamos dividirlos. En su lugar, tenga un clúster temporal de 2 nodos que tenga la versión más nueva de NCache instalado. Una vez que los 2 nodos existentes se unan al nuevo clúster, puede eliminar estos nodos temporales.
Cómo actualizar a NCache Versión en vivo
Por ejemplo, tenemos un clúster de 4 nodos como se explica en el diagrama de la sección anterior. Saque dos nodos (3 y 4) e instale la última versión de NCache en ellos (caché de destino). Los otros dos nodos (1 y 2) tienen una versión antigua NCache instalado (caché de origen). Ambos cachés son idénticos en términos de nombre y configuración. Esta es una configuración activo-pasivo.
-
- Cree un nuevo puente entre estos dos clústeres como se explica en la Crear puente .
- En el … etiquetas de puente.ncconf en el nodo del puente, agregue manualmente la memoria caché de destino de la siguiente manera:
1234567891011<configuration><bridge-config … ><cache cache-id="demoCache.WestCoast" status="active" servers-list="20.200.20.43" bulk-operation-size="500"enable-compression="False" connection-retry-interval="3" heart-beat-enabled="True" replicator-virtual-queue-size="2048MB" is-connected="True" is-master="False"/><cache cache-id="demoCache.EastCoast" status="active" servers-list="20.200.20.40" bulk-operation-size="500"enable-compression="False" connection-retry-interval="3" heart-beat-enabled="True" replicator-virtual-queue-size="2048MB" is-connected="True" is-master="False"/></bridge-config></configuration> - Después de la modificación de bridge.ncconf, reinicie el servicio de puente con el siguiente cmdlet de PowerShell.
1Restart-Service NBridgeSvc - Proporcione la memoria caché de origen y la memoria caché de destino como entradas para el comando de PowerShell Start-BridgeStateTransfer para comenzar la transferencia de estado.
12Start-BridgeStateTransfer -Server 20.200.20.43 -Name demoBridge -SourceCache demoCache.WestCoast -TargetCachedemoCache.EastCoast - Los datos se replicarán de forma asíncrona desde el clúster anterior (activo) al clúster más nuevo (pasivo).
- Una vez que los dos cachés estén completamente sincronizados, debe detener los clientes y volver a conectarlos con el clúster más nuevo. Para hacerlo, cambie la dirección IP de los servidores de caché de origen a la dirección IP del servidor de caché de destino en cliente.ncconf de cada nodo de cliente y vuelva a conectar los clientes.
- Retire el puente.
- Una vez que los clientes se hayan conectado correctamente al clúster más nuevo, detenga el clúster anterior e instale la versión más nueva en él. Agregue estos servidores al clúster de caché con la versión más nueva después de actualizar el NCache software en todos sus servidores.
- Una los nodos 1 y 2 al clúster más nuevo uno tras otro.
Conclusión
NCache permite a sus usuarios actualizaciones sin problemas a sus últimas versiones con una pérdida de datos insignificante. Los usuarios no tienen que lidiar con el problema de cambiar de una NCache versión a la siguiente, ya sea la actualización en vivo o la digital fuera de línea. NCache actualización de versión. Para más detalles sobre NCache, Consulte NCache documentos.