Comportamento de escalonamento da instância

Nesta página, descrevemos como o comportamento da instância do Memorystore para Redis durante o escalonamento. Para aprender como dimensionar uma instância do Redis, consulte Como dimensionar instâncias do Redis.

Dependendo do nível da instância, o escalonamento dela tem implicações no desempenho e armazenamento do aplicativo. Há também algumas limitações para o escalonamento de instâncias dependendo da quantidade de memória em uso no momento. Nesta página, descrevemos como o escalonamento de uma instância pode afetar seu aplicativo e quando é possível escalonar uma instância.

Práticas recomendadas para escalonar uma instância

  • Recomendamos exportar os dados da instância antes de escalonar a operação.

  • Para instâncias de nível padrão, para aumentar a velocidade e a confiabilidade da operação de escalonamento, dimensione a instância durante períodos de baixo tráfego de instância. Para saber como monitorar o tráfego da instância, consulte Como monitorar instâncias do Redis.

  • Ao reduzir a capacidade de uma instância do nível Padrão, escolha um tamanho maior do que a quantidade de dados que está sendo armazenada, evitando falha no escalonamento.

    • Por exemplo, se você tiver uma instância de 10 GB com 5,5 GB de dados armazenados nela, redimensione-a para no mínimo 6 GB. A quantidade de armazenamento que sua instância usa fica visível na página de detalhes no Console do Cloud.

Comportamento de escalonamento do nível básico

O bloco de instâncias do nível Básico lê e grava enquanto a instância é redimensionada para a capacidade pretendida. Depois que a instância é redimensionada, todos os dados são descartados do cache. Escalone uma instância durante um período de baixo tráfego de instância para minimizar o impacto no desempenho do aplicativo.

Comportamento de escalonamento do nível Padrão

Escalone as instâncias do nível Padrão durante um período de baixa atividade para minimizar o impacto do desempenho no seu aplicativo.

As instâncias do nível padrão quase não apresentam inatividade durante o processo de dimensionamento, porque todas as instâncias do nível padrão têm um nó principal e um nó de réplica. Durante o dimensionamento, a réplica é redimensionada primeiro, para então ser sincronizada com a principal. Depois que a nova réplica alcançar a nova instância principal, este fará o failover para a nova réplica.

Durante o failover, as conexões com a instância são finalizadas. Os aplicativos precisam incorporar a lógica de repetição no código para se reconectar ao novo nó principal. Finalmente, a antiga instância mestre é redimensionada.

Após a conclusão do dimensionamento, pode haver dados desatualizados ou inconsistentes no cache, devido à natureza assíncrona da replicação do Redis. É preciso que o aplicativo seja suficientemente resiliente para lidar com inconsistências que surgirem durante o failover.

Carga de gravação durante o dimensionamento

Ao escalonar uma instância de nível padrão, mantenha a carga de gravação da instância no mínimo. Uma alta carga de gravação pode fazer com que o escalonamento demore muito mais e pode causar uma falha na operação de escalonamento.

Chaves expiradas

Quando você escalona uma instância de nível padrão, as chaves expiradas não são sincronizadas. Se você tiver chaves expiradas na sua instância do Redis antes de escalonar, terá menos chaves depois que a instância for escalonada.