Compartilhar via


Cache do Azure para Redis e confiabilidade

O Cache do Azure para Redis fornece um armazenamento de dados na memória com base no software Redis (Remote Dictionary Server). Trata-se de um cache de dados e agente de mensagens seguro que fornece alta taxa de transferência e acesso de baixa latência a dados para aplicativos.

Os principais conceitos e práticas recomendadas que suportam confiabilidade incluem:

As seções a seguir incluem considerações sobre design, uma lista de verificação de configuração e opções de configuração recomendadas específicas para o Cache do Azure para Redis.

Considerações sobre o design

O SLA (Contrato de Nível de Serviço) do Cache do Azure para Redis abrange apenas caches de camadas Standard e Premium. A camada Básica não é coberta.

O Redis é um cache na memória para pares chave-valor e possui HA (Alta Disponibilidade) por padrão, exceto na camada Básica. Há três camadas do Cache do Azure para Redis:

  • Básica: não é recomendada para cargas de trabalho de produção. A camada Básica é ideal para:

    • Nó único
    • Vários tamanhos
    • Desenvolvimento
    • Teste
    • Cargas de trabalho não críticas
  • Standard: um cache replicado em uma configuração primária e secundária de dois nós gerenciada pela Microsoft, com um SLA de alta disponibilidade.

  • Premium: inclui todos os recursos da camada Standard e os adicionais abaixo:

    • Hardware e desempenho mais rápidos em comparação com as camadas Básica e Standard.
    • Cache maior, até 120GB.
    • Persistência de dados, que inclui o RDB (Arquivo de Banco de Dados do Redis) e o AOF (Arquivo Somente de Acréscimo).
    • Suporte à VNET.
    • Clustering
    • Replicação geográfica: um cache secundário está em outra região e replica dados do primário para recuperação de desastres. Para executar failover para o secundário, os caches precisam ser desvinculados manualmente e, em seguida, o secundário estará disponível para gravações. O aplicativo que grava no Redis precisa ser atualizado com a cadeia de conexão de cache do secundário.
    • Zonas de Disponibilidade: implantam o cache e as réplicas em zonas de disponibilidade.

      Observação

      Por padrão, cada implantação terá uma réplica por fragmento. No momento, a persistência, o clustering e a replicação geográfica estão desabilitados com implantações que possuem mais de uma réplica. Seus nós serão distribuídos uniformemente em todas as zonas. Você deve ter uma contagem de réplicas >= número de zonas.

    • Importar e exportar.

A Microsoft garante que, em pelo menos 99.9% do tempo, os clientes terão conectividade entre os Pontos de Extremidade de Cache e o gateway de Internet da Microsoft.

Lista de verificação

Você configurou o Cache do Azure para Redis com resiliência em mente?


  • Agendar atualizações.
  • Monitorar o cache e definir alertas.
  • Implantar o cache em uma VNET.
  • Avaliar uma estratégia de particionamento no cache Redis.
  • Configure a Persistência de Dados para salvar uma cópia do cache no Armazenamento do Azure ou use a Replicação Geográfica, dependendo do requisito de negócios.
  • Implementar políticas de repetição no contexto do cache Redis do Azure.
  • Usar uma implementação estática ou singleton do multiplexador de conexão com o Redis e seguir o guia de práticas recomendadas.
  • Ler atentamente Como administrar o Cache do Azure para Redis.

Recomendações de configuração

Confira a tabela de recomendações a seguir para otimizar a configuração do Cache do Azure para Redis visando à confiabilidade de serviço:

Recomendação Descrição
Agendar atualizações. Agende os dias e horários em que as atualizações do Servidor Redis serão aplicadas ao cache, o que não inclui atualizações do Azure ou atualizações do sistema operacional da VM.
Monitorar o cache e definir alertas. Defina alertas para exceções, alta utilização de CPU, alto uso de memória, carga do servidor e chaves removidas para obter insights sobre quando escalar o cache. Se o cache precisar ser escalado, é importante entender quando fazê-lo, pois a CPU será aumentada durante o evento de dimensionamento para migrar dados.
Implantar o cache em uma VNET. Dá ao cliente mais controle sobre o tráfego que pode ser conectado ao cache. Verifique se a sub-rede possui espaço de endereço suficiente disponível para implantar os nós de cache e fragmentos (cluster).
Avaliar uma estratégia de particionamento no cache Redis. O particionamento de um repositório de dados do Redis envolve a divisão dos dados entre instâncias do servidor Redis. Cada instância forma uma única partição. O Cache Redis do Azure abstrai os serviços do Redis por trás de uma fachada e não os expõe diretamente. A maneira mais simples de implementar o particionamento é criar várias instâncias do Cache Redis do Azure e distribuir os dados entre eles. Você pode associar cada item de dados a um identificador (uma chave de partição) que especifica qual cache armazena o item de dados. A lógica do aplicativo cliente pode usar esse identificador para rotear solicitações para a partição adequada. Esse esquema é simples, mas se o esquema de particionamento for alterado (por exemplo, se instâncias adicionais do Cache Redis do Azure forem criadas), os aplicativos cliente precisarão ser reconfigurados.
Configure a Persistência de Dados para salvar uma cópia do cache no Armazenamento do Azure ou use a Replicação Geográfica, dependendo do requisito de negócios. Persistência de dados: se o mestre e a réplica forem reinicializados, os dados serão carregados automaticamente da conta de armazenamento. Replicação geográfica: o cache secundário precisa ser desvinculado do primário. O secundário agora se tornará o primário e poderá receber gravações.
Implementar políticas de repetição no contexto do cache Redis do Azure. A maioria dos serviços do Azure e SDKs do cliente inclui um mecanismo de repetição. Esses mecanismos diferem porque cada serviço tem características e requisitos diferentes. Cada mecanismo de nova tentativa é ajustado para um serviço específico.
Ler atentamente Como administrar o Cache do Azure para Redis. Entenda como a perda de dados pode ocorrer com as reinicializações de cache e como testar a resiliência do aplicativo.

Artefatos de origem

Para identificar as instâncias do Redis que não estão na camada Premium, use a consulta abaixo:

Resources 
| where type == 'microsoft.cache/redis'
| where properties.sku.name != 'Premium'

Próxima etapa