Como a Descoberta automática funciona - Amazon ElastiCache

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como a Descoberta automática funciona

Esta seção descreve como as aplicações cliente usam o cliente de cluster do ElastiCache para gerenciar conexões de nós de cache e interagir com itens de dados no cache.

Conexão com nós de cache

Do ponto de vista do aplicativo, conectar-se ao endpoint de configuração de cluster não é diferente de conectar-se diretamente a um nó de cache individual. O diagrama de sequência a seguir mostra o processo de conexão com nós de cache.

Conexão com nós de cache
1
O aplicativo resolve o nome DNS do endpoint de configuração. Como o endpoint de configuração mantém entradas CNAME para todos os nós de cache, o nome DNS é resolvido para um dos nós. O cliente pode então se conectar a esse nó.
2
O cliente solicita as informações de configuração para todos os outros nós. Como cada nó mantém informações de configuração para todos os nós do cluster, qualquer nó pode transmitir informações de configuração ao cliente mediante solicitação.
3

O cliente recebe a lista atual de nomes de host e endereços IP de nós de cache. Em seguida, ele pode se conectar a todos os outros nós do cluster.

nota

O programa cliente atualiza sua lista de nomes de host e endereços IP de nós de cache uma vez por minuto. Esse intervalo de sondagem pode ser ajustado se necessário.

Operações normais de cluster

Quando a aplicação estiver conectada a todos os nós de cache, o cliente de cluster do ElastiCache determinará quais nós deverão armazenar os itens de dados individuais e quais nós deverão ser consultados para esses itens de dados mais tarde. O diagrama de sequência a seguir mostra o processo das operações normais de cluster.

Operações normais de cluster
1
O aplicativo emite uma solicitação get para um item de dados específico, identificado por sua chave.
2
O cliente usa um algoritmo de hash contra a chave para determinar qual nó de cache contém o item de dados.
3
O item de dados é solicitado do nó apropriado.
4
O item de dados é retornado ao aplicativo.

Outras operações do

Em algumas situações, você pode alterar os nós de um cluster. Por exemplo, você pode acrescentar um nó adicional para acomodar demanda adicional ou excluir um nó para economizar dinheiro durante períodos de demanda reduzida. Ou você pode substituir um nó devido a uma falha de nó de uma ou outra classificação.

Quando há uma alteração no cluster que requer uma atualização de metadados para os endpoints do cluster, essa alteração é feita em todos os nós ao mesmo tempo. Portanto, os metadados em qualquer nó especificado são consistentes com os metadados em todos os outros nós do cluster.

Em cada um desses casos, os metadados são consistentes entre todos os nós em todos os momentos, já que os metadados são atualizados ao mesmo tempo para todos os nós do cluster. Você sempre deve usar o endpoint de configuração para obter os endpoints dos vários nós no cluster. Ao usar o endpoint de configuração, você garante que não obterá dados de endpoint de um nó que "desaparecerá".

Adicionar um nó

Durante o tempo em que o nó está sendo configurado, seu endpoint não é incluído nos metadados. Assim que o nó estiver disponível, ele será adicionado aos metadados de cada um dos nós do cluster. Nesse cenário, os metadados são consistentes entre todos os nós, e você poderá interagir com o novo nó somente depois que ele estiver disponível. Antes de o nó estar disponível, você não saberá sobre ele e interagirá com os nós no seu cluster como se o novo nó não existisse.

Excluir um nó

Quando um nó é removido, seu endpoint é primeiramente removido dos metadados e, em seguida, o nó é removido do cluster. Nesse cenário, os metadados em todos os nós são consistentes e em nenhuma ocasião ele conterá o endpoint para o nó a ser removido se esse nó não estiver disponível. Durante o tempo de remoção do nó, ele não é relatado nos metadados e, portanto, seu aplicativo só interagirá com os n-1 nós restantes, como se o nó não existisse.

Substituir um nó

Se um nó falhar, o ElastiCache o retirará e configurará uma substituição. O processo de substituição demora alguns minutos. Durante esse tempo, os metadados em todos os nós ainda mostram o endpoint do nó com falha, mas qualquer tentativa de interação com esse nó falhará. Portanto, sua lógica sempre deve incluir uma lógica de nova tentativa.