Funcionamiento de la detección automática - Amazon ElastiCache

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Funcionamiento de la detección automática

En esta sección se describe cómo las aplicaciones cliente utilizan el cliente de ElastiCache clúster para administrar las conexiones de los nodos de la caché e interactuar con los elementos de datos de la memoria caché.

Conexión a los nodos de caché

Desde el punto de vista de la aplicación, la conexión al punto de enlace de configuración del clúster no es distinta de la conexión directa a un nodo de caché individual. El siguiente diagrama de secuencias muestra el proceso de enlace a los nodos de caché.

Conexión a los nodos de caché
1
La aplicación resuelve el DNS nombre del punto final de configuración. Como el punto final de configuración mantiene CNAME las entradas para todos los nodos de la caché, el DNS nombre pasa a ser uno de los nodos; el cliente puede entonces conectarse a ese nodo.
2
El cliente solicita la información de configuración para todos los demás nodos. Puesto que cada nodo mantiene información de configuración para todos los nodos del clúster, cualquier nodo puede pasar la información de configuración al cliente bajo petición.
3

El cliente recibe la lista actual de direcciones IP y nombres de host de los nodos de caché. De este modo, se puede conectar a todos los demás nodos del clúster.

nota

El programa cliente actualiza su lista de direcciones IP y nombres de host de los nodos de caché una vez por minuto. Este intervalo de sondeo se puede ajustar si es necesario.

Operaciones de clúster normales

Cuando la aplicación se haya conectado a todos los nodos de caché, ElastiCache Cluster Client determina qué nodos deben almacenar elementos de datos individuales y qué nodos deben consultarse para dichos elementos de datos más adelante. El siguiente diagrama de secuencias muestra el proceso de las operaciones de clúster normales.

Operaciones de clúster normales
1
La aplicación emite una solicitud get para obtener un elemento de datos determinado identificado por su clave.
2
El cliente usa un algoritmo de hash con la clave para determinar qué nodo de caché contiene el elemento de datos.
3
El elemento de datos se solicita desde el nodo adecuado.
4
El elemento de datos se devuelve a la aplicación.

Otras operaciones de

En algunas situaciones, puede realizar un cambio en los nodos de un clúster. Por ejemplo, puede agregar un nodo adicional para adaptarse a la demanda adicional o eliminar un nodo a fin de ahorrar dinero durante periodos de demanda reducida. O puede reemplazar un nodo debido a un error de nodo de un tipo u otro.

Cuando se produce un cambio en el clúster que requiere actualizar los metadatos con los puntos de enlace del clúster, dicho cambio se realiza en todos los nodos al mismo tiempo. De este modo se consigue que los metadatos de un nodo determinado coincidan con los de los demás nodos del clúster.

En cada uno de estos casos, los metadatos son siempre homogéneos entre todos los nodos, ya que los metadatos se actualizan al mismo tiempo en todos los nodos del clúster. Use siempre el punto de enlace de configuración para obtener los puntos de enlace a los distintos nodos del clúster. Al usar el punto de enlace de configuración, se asegurará de no obtener datos de puntos de enlace de un nodo que “desaparecerá”.

Agregar un nodo

Durante la activación del nodo, su punto de enlace no se incluye en los metadatos. Tan pronto como el nodo esté disponible, el punto de enlace se agrega a los metadatos de cada uno de los nodos del clúster. En este caso, los metadatos son coherentes entre todos los nodos. De este modo, solo podrá interactuar con el nuevo nodo en cuanto esté disponible. Antes de que el nodo esté disponible, no sabrá que existe e interactuará con los nodos del clúster como si el nuevo nodo no existiese.

Eliminación de un nodo

Cuando se elimina un nodo, su punto de enlace se elimina primero de los metadatos. A continuación, el nodo se elimina del clúster. En este caso, los metadatos de todos los nodos son homogéneos, por lo que no contendrán en ningún momento el punto de enlace del nodo que se va a eliminar mientras el nodo no esté disponible. Durante la eliminación del nodo, el punto de enlace no estará incluido en los metadatos y su aplicación solo interactuará con los nodos restantes (n-1), como si el nodo no existiese.

Reemplazo de un nodo

Si un nodo falla, ElastiCache lo desactiva y activa un nodo de reemplazo. El proceso de reemplazo tarda unos minutos. Durante este tiempo, los metadatos de todos los nodos seguirán mostrando el punto de enlace del nodo con error; sin embargo, toda interacción con el nodo generará un error. Por lo tanto, su lógica debe incluir siempre una lógica de reintentos.