Exportar (0) Imprimir
Expandir Tudo

Alta disponibilidade (cache na função para cache do Azure)

Atualizado: fevereiro de 2015

noteObservação
Para orientação sobre como escolher a oferta Azure Cache para seu aplicativo, consulte Qual oferta de cache do Azure é ideal para mim?.

O Cache na Função sempre permite manter alta disponibilidade para os objetos em cache. Use as propriedades de função do Azure para habilitar a alta disponibilidade em cada cache que precise desse recurso. Nenhuma alteração de código é necessária; você só precisa recalcular a capacidade de memória exigida pela sua carga de trabalho. Isso pode ser feito ativando a configuração Alta Disponibilidade na planilha de planejamento de capacidade. Para obter mais informações, consulte Considerações sobre planejamento de capacidade para cache na função (cache do Azure).

Com a alta disponibilidade, os objetos em cache são replicados dentro da mesma implantação do serviço de nuvem para proporcionar resiliência contra falhas de hardware. Cópias secundárias também são colocadas em diferentes domínios de falha e domínios de atualização para aumentar a disponibilidade. Se uma das máquinas virtuais no cluster de cache ficar indisponível por qualquer motivo, o cluster poderá usar as cópias secundárias para evitar a perda de dados.

A alta disponibilidade requer várias instâncias da função associada. Uma segunda cópia do item em cache é mantida em uma instância separada, pertencente a um domínio de falha e domínio de atualização diferente. Assim, se uma instância ficar indisponível, haverá uma cópia de backup em outra instância. Nesse cenário, a cópia secundária é promovida para cópia primária. Uma nova cópia secundária então é criada em uma das instâncias remanescentes para manter a alta disponibilidade.

Para implementar a alta disponibilidade, todas as gravações em cache são feitas nas cópias primária e secundária.

noteObservação
Observe que, mesmo quando a alta disponibilidade está desabilitada, o cluster de cache tenta preservar os dados durante desligamentos planejados, como, por exemplo, uma reinicialização. Nesse cenário, o cluster de cache tenta transferir os itens em cache para outros servidores antes do desligamento. Entretanto, dependendo da quantidade de dados para serem transferidos, a conclusão desse desligamento normal não é garantida. Além disso, diferentemente do que acontece na alta disponibilidade, os dados não são preservados durante desligamentos inesperados.

A função que hospeda o Cache na Função deve ser configurada para execução em pelo menos quatro instâncias. A alta disponibilidade pode ser habilitada em funções configuradas para duas ou três instâncias em execução, mas isso não é recomendado pelas duas razões expostas a seguir.

  • O Azure ocasionalmente reinicializa as máquinas virtuais para manutenção de rotina. As atualizações de um aplicativo local também colocam as máquinas virtuais offline. Em ambos os cenários, é melhor ter pelo menos três servidores no cluster de cache. Assim, caso um dos servidores fique inoperante, o cluster de cache ainda terá três servidores para criar cópias primárias e secundárias dos objetos em cache. Com apenas um servidor em execução, o cache continua acessível, mas a alta disponibilidade é impossível.

  • Embora três servidores atendam aos requisitos mencionados anteriormente, recomenda-se usar quatro servidores. Isso ajuda a distribuir mais uniformemente as cópias primárias entre domínios de falha. Os dados são melhor distribuídos no cluster de cache, o que, por sua vez, melhora os padrões de tráfego e o desempenho da rede.

Quando uma instância fica indisponível, há um breve período de tempo durante o qual as cópias secundárias são promovidas para primárias e as informações de roteamento são atualizadas. Durante esse intervalo, os clientes recebem exceções DataCacheException com um ErrorCode de RetryLater. Os aplicativos do Cache na Função devem usar tratamento de erro normal e lógica de repetição para reagir corretamente a essa condição.

Como todas as gravações são feitas simultaneamente nas cópias primária e secundária, a alta disponibilidade aumenta a latência e diminui a taxa de transferência. Essa pode ser uma compensação razoável pelos benefícios proporcionados pelos caches com alta disponibilidade.

ImportantImportante
Por definição, o uso de alta disponibilidade multiplica por dois a quantidade de memória necessária para cada item armazenado em cache. Considere esse impacto de memória durante as tarefas de planejamento de capacidade. Para obter mais informações, consulte Considerações sobre planejamento de capacidade para cache na função (cache do Azure).

  1. Clique duas vezes na função que tem o Cache na Função habilitado.

  2. Na guia Configuração, verifique se a Contagem de instâncias é 4 ou mais.

  3. Na guia Cache, marque a caixa de seleção Alta Disponibilidade do cache que requer alta disponibilidade. A captura de tela a seguir mostra a Alta Disponibilidade habilitada em dois dos três caches.

    Cache de cópias de backup

Consulte também

A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2015 Microsoft