Alta disponibilidade para o Memorystore para Redis

Nesta página, descrevemos a alta disponibilidade (HA) para instâncias do Memorystore para Redis no nível Padrão.

O nível Standard protege uma instância do Redis contra falhas comuns replicando dados para uma ou mais réplicas, além de fornecer failover automático rápido para uma réplica.

O nível Standard é provisionado com uma instância principal e uma ou mais réplicas. Uma instância de nível Standard com a configuração readReplicaMode desativada tem uma única réplica não lida. Uma instância de nível Standard com essa configuração ativada tem de uma a cinco réplicas de leitura. Para determinar se a configuração está ativada, consulte Ver informações de réplica de leitura para sua instância.

O Memorystore para Redis oferece alta disponibilidade replicando uma instância principal para uma ou mais réplicas. O Memorystore para Redis usa o protocolo de replicação assíncrona para copiar as mudanças feitas nos dados da instância principal para as réplicas. Devido à natureza assíncrona da replicação e dependendo da taxa de gravação da instância principal, as réplicas podem ficar atrasadas em relação à instância.

Se a instância principal falhar, ela fará o failover automaticamente para uma réplica. Para instâncias com mais de uma réplica, a instância faz o failover automaticamente para uma réplica íntegra com o menor atraso de replicação.

Se você configurar uma instância para ter apenas uma réplica não lida, o Memorystore para Redis vai direcionar todas as conexões de aplicativos para o endpoint principal. Se você configurar a instância para usar réplicas de leitura, os aplicativos também poderão usar o endpoint de leitura para distribuir consultas de leitura em todas as réplicas.

Quando um failover ocorre

Um failover ocorre quando a instância principal falha. Durante um failover, a instância principal e o endpoint de leitura redirecionam automaticamente para a nova instância principal e as réplicas. O Memorystore para Redis descarta todas as conexões com o endpoint principal. O Memorystore para Redis também descarta conexões de endpoint de leitura com a réplica de leitura promovida.

Como um failover afeta seu aplicativo

Quando a instância principal faz failover para a réplica, o Memorystore para Redis descarta as conexões atuais com o endpoint principal da instância. A instância fica indisponível por uma média de 30 segundos durante os reparos automatizados e 15 segundos durante os eventos de manutenção. Ao reconectar, seu aplicativo é redirecionado automaticamente para a nova instância principal usando a mesma string de conexão ou endereço IP. Não é necessário atualizar o aplicativo após um failover.

Durante um failover, se houver conexões com o endpoint de leitura, o Memorystore para Redis vai descartar as conexões com a réplica que está sendo promovida para a instância principal. O Memorystore para Redis continua atendendo às conexões com as outras réplicas. Depois que o failover é concluído e a nova réplica fica disponível, o Memorystore para Redis redireciona as conexões para a nova réplica.

Repetir a conexão de instância após um failover

Quando ocorre um failover, o Memorystore para Redis descarta todas as conexões do endpoint principal. Dependendo do número de réplicas, o Memorystore para Redis também pode descartar algumas conexões de leitura.

Devido a essa perda de conexão, seu aplicativo precisa tentar restabelecer a conexão. Recomendamos que a lógica de repetição use espera exponencial para garantir que você não sobrecarregue a instância com muitas solicitações de novas tentativas. Além de incluir a lógica de repetição, recomendamos que você teste como um failover afeta seu aplicativo testando-o com um failover manual.

A maioria dos clientes do Redis tem recursos de repetição incorporados. Se uma queda de conexão ocorrer devido a um failover, recomendamos que você use esses recursos de repetição.

Um failover ocorre quando você realiza as seguintes tarefas:

Se você implementar a lógica de repetição no aplicativo para processar quedas de conexão causadas por failovers, sua instância provavelmente não terá um impacto significativo no desempenho.

Ver o status da alta disponibilidade

É possível ver as métricas de alta disponibilidade para sua instância do Redis usando o Cloud Monitoring. Para informações sobre as métricas que o Cloud Monitoring fornece para o Memorystore para Redis, consulte Monitorar instâncias do Redis e Métricas de monitoramento compatíveis com o Memorystore para Redis.

Para conferir o status da replicação integrada que o Redis oferece, use o comando INFO.