Nesta página, descrevemos como a instância do Memorystore para Redis se comporta durante o escalonamento. Para saber como escalonar uma instância do Redis, consulte Escalonar 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
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 é visível na página de detalhes dela no console doGoogle Cloud .
Comportamento de escalonamento da instância
Durante o escalonamento de instâncias de nível básico e padrão, os dados são preservados. Quando você escalona uma instância, ela passa por uma breve redefinição de conexão de alguns minutos ou menos. Recomendamos que os aplicativos incorporem a lógica de repetição no código para que possam se reconectar à instância. O endereço IP e a string de conexão permanecem os mesmos.
Além disso, pode haver um intervalo de vários minutos em que as métricas principais da instância não aparecem. Além da breve redefinição da conexão, a instância permanece disponível durante esse período, e os relatórios de métricas são retomados após o intervalo de tempo. Pode haver uma pequena quantidade de dados desatualizados ou inconsistentes que não são gravados ou atualizados no cache durante o curto período em que a instância fica indisponível.
Se você emitir uma gravação durante a interrupção da conexão, o Memorystore
vai retornar o erro READONLY You can't write against a read only replica. Esse
erro é temporário e dura apenas alguns segundos. Ela é resolvida quando a operação de escalonamento é concluída.
Carga de gravação ao escalonar
É recomendável escalonar uma instância durante um período de baixo tráfego para minimizar o impacto no desempenho do aplicativo. Uma carga de gravação alta ou uma pressão de memória alta pode fazer com que uma operação de escalonamento demore muito mais e falhe. Para mais informações, consulte Operações de escalonamento e upgrade de versão.
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.
Práticas recomendadas
Para ajudar a escalonar a capacidade da instância, recomendamos as seguintes práticas recomendadas:
- Escolha quando escalonar: para aumentar a velocidade e a confiabilidade do escalonamento da instância, faça isso durante períodos de baixo tráfego. Para saber como monitorar o tráfego de instâncias, consulte Monitorar instâncias.
- Considere os dados armazenados ao reduzir a escala vertical: se você reduzir escalonamento horizontal instância, escolha um tamanho maior que a quantidade de dados armazenados pela instância. Por exemplo, se você tiver uma instância de 10 GB com 5,5 GB de dados armazenados, redimensione-a para 6 GB ou mais.
- Tente novamente quando não for possível escalonar: a disponibilidade de recursos muda com frequência. Se não for possível escalonar a instância devido a uma restrição temporária de recursos, tente escaloná-la mais tarde.