Cache do Azure para Redis e fiabilidade
Cache do Azure para Redis fornece um arquivo de dados dentro da memória com base no software Redis (Servidor de Dicionário Remoto). É um mediador de mensagens e cache de dados seguro que fornece débito elevado e acesso de baixa latência a dados para aplicações.
Os principais conceitos e melhores práticas que suportam a fiabilidade incluem:
As secções seguintes incluem considerações de design, uma lista de verificação de configuração e opções de configuração recomendadas específicas para Cache do Azure para Redis.
Considerações de design
O Cache do Azure para Redis Contratos de Nível de Serviço (SLA) abrange apenas caches de escalão Standard e Premium. O escalão Básico não está abrangido.
O Redis é uma cache dentro da memória para pares de valores chave e tem Elevada Disponibilidade (HA), por predefinição, exceto para o escalão Básico. Existem três camadas para Cache do Azure para Redis:
Básico: não recomendado para cargas de trabalho de produção. O escalão básico é ideal para:
- Nó único
- Vários tamanhos
- Desenvolvimento
- Teste
- Cargas de trabalho não críticas
Standard: uma cache replicada numa configuração primária e secundária de dois nós gerida pela Microsoft, com um SLA de elevada disponibilidade.
Premium: inclui todas as funcionalidades de escalão standard e inclui as seguintes outras funcionalidades:
- Hardware e desempenho mais rápidos em comparação com o escalão Básico ou Standard.
- Tamanho da cache maior, até
120GB
. - Persistência de dados, que inclui o Ficheiro de Base de Dados Redis (RDB) e o Ficheiro Apenas de Acréscimo (AOF).
- Suporte de VNET.
- Clustering
- Georreplicação: uma cache secundária está noutra região e replica dados da primária para recuperação após desastre. Para efetuar a ativação pós-falha para a secundária, as caches têm de ser desassociadas manualmente e, em seguida, a secundária está disponível para escritas. A aplicação que está a escrever no Redis tem de ser atualizada com a cache secundária cadeia de ligação.
- Zonas de Disponibilidade: implemente a cache e as réplicas nas zonas de disponibilidade.
Nota
Por predefinição, cada implementação terá uma réplica por partição horizontal. A persistência, o clustering e a georreplicação estão desativados neste momento com implementações que têm mais do que uma réplica. Os nós serão distribuídos uniformemente por todas as zonas. Deve ter um número de contagem
>=
de réplicas de zonas. - Importar e exportar.
A Microsoft garante, pelo menos 99.9%
, o tempo em que os clientes terão conectividade entre os Pontos Finais de Cache e o gateway de Internet da Microsoft.
Lista de Verificação
Configurou Cache do Azure para Redis com resiliência em mente?
- Agendar atualizações.
- Monitorize a cache e defina alertas.
- Implemente a cache numa VNET.
- Avalie uma estratégia de criação de partições na cache de Redis.
- Configure a Persistência de Dados para guardar uma cópia da cache no Armazenamento do Azure ou utilize a Georreplicação, consoante o requisito comercial.
- Implemente políticas de repetição no contexto da Cache de Redis do Azure.
- Utilize uma implementação estática ou singleton do multiplexer de ligação para Redis e siga o guia de melhores práticas.
- Reveja Como administrar Cache do Azure para Redis.
Recomendações de configuração
Explore o seguinte índice de recomendações para otimizar a configuração do Cache do Azure para Redis para fiabilidade do serviço:
Recomendação | Description |
---|---|
Agendar atualizações. | Agende os dias e horas em que as atualizações do Servidor Redis serão aplicadas à cache, que não inclui atualizações do Azure ou atualizações para o sistema operativo da VM. |
Monitorize a cache e defina alertas. | Defina alertas para exceções, CPU elevada, utilização elevada da memória, carga do servidor e chaves expulsas para obter informações sobre quando dimensionar a cache. Se a cache precisar de ser dimensionada, é importante compreender quando dimensionar porque irá aumentar a CPU durante o evento de dimensionamento para migrar dados. |
Implemente a cache numa VNET. | Dá ao cliente mais controlo sobre o tráfego que pode ligar à cache. Confirme que a sub-rede tem espaço de endereços suficiente disponível para implementar os nós de cache e as partições horizontais (cluster). |
Avalie uma estratégia de criação de partições na cache de Redis. | A criação de partições de um arquivo de dados do Redis envolve dividir os dados entre instâncias do servidor Redis. Cada instância compõe uma única partição. A Cache de Redis do Azure abstrai os serviços redis por trás de uma fachada e não os expõe diretamente. A forma mais simples de implementar a criação de partições é criar várias instâncias de Cache de Redis do Azure e distribuir os dados por elas. 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 de aplicação de cliente pode então utilizar este identificador para encaminhar pedidos para a partição adequada. Este esquema é simples, mas se o esquema de criação de partições for alterado (por exemplo, se forem criadas instâncias adicionais da Cache de Redis do Azure), as aplicações cliente poderão ter de ser reconfiguradas. |
Configure a Persistência de Dados para guardar uma cópia da cache no Armazenamento do Azure ou utilize a Georreplicação, consoante o requisito comercial. | Persistência de Dados: se o mestre e a réplica reiniciarem, os dados serão carregados automaticamente a partir da conta de armazenamento. Georreplicação: a cache secundária tem de ser desassociada da primária. A secundária tornar-se-á agora a principal e poderá receber escritas. |
Implemente políticas de repetição no contexto da Cache de Redis do Azure. | A maioria dos serviços do Azure e dos SDKs do cliente incluem um mecanismo de repetição. Estes mecanismos diferem porque cada serviço tem características e requisitos diferentes. Cada mecanismo de repetição é otimizado para um serviço específico. |
Reveja Como administrar Cache do Azure para Redis. | Compreenda como a perda de dados pode ocorrer com reinícios da cache e como testar a aplicação para resiliência. |
Artefactos de origem
Para identificar instâncias do Redis que não estão no escalão Premium, utilize a seguinte consulta:
Resources
| where type == 'microsoft.cache/redis'
| where properties.sku.name != 'Premium'