O Tair (Redis OSS-compatible) remove automaticamente as chaves expiradas por meio de três políticas integradas. Quando a quantidade de chaves cresce inesperadamente mesmo com configurações de expiração ativas — ou quando um grande lote de chaves (dezenas a centenas de milhares) expira em um curto intervalo — essas políticas integradas podem não limpá-las rápido o suficiente. Este tópico explica como a expiração automática funciona e o que você pode fazer para acelerar a limpeza.
Como funciona
O Tair usa três políticas para limpar chaves expiradas automaticamente. Nenhuma delas exige ação manual.
Expiração passiva
Quando um cliente acessa uma chave, o Tair verifica se ela expirou. Caso tenha expirado, o Tair a exclui imediatamente. A expiração passiva é leve, mas só atua em chaves que são de fato acessadas — chaves que nunca são lidas novamente permanecem na memória até que outro mecanismo as remova.
Expiração ativa
Como a expiração passiva por si só não trata chaves que nunca mais são acessadas, o Tair faz amostragens periódicas de chaves com tempos de expiração definidos e exclui as que já expiraram.
Evicção forçada
Quando o uso de memória atinge o limite do maxmemory, o Tair bloqueia operações, expulsa chaves ou gera um erro de falta de memória (OOM). Por padrão, ele aplica a política volatile-lru.
Para revisar ou alterar a política de evicção, consulte o parâmetro maxmemory-policy em Parâmetros suportados.
Acelere a limpeza de chaves expiradas
Os métodos a seguir aceleram a limpeza de chaves expiradas. Escolha o mais adequado à sua situação.
Use Purge Data para limpeza imediata
O recurso Purge Data na página de detalhes da instância exclui todas as chaves expiradas no menor tempo possível.
Esta operação consome recursos significativos da instância e pode afetar as cargas de trabalho em execução. Execute-a durante períodos de baixo tráfego.
Para instruções, consulte Purge data.
Agende a limpeza com o CloudOps Orchestration Service
Use o CloudOps Orchestration Service (OSS) para agendar uma tarefa recorrente de O&M que exclua chaves expiradas durante períodos de baixo tráfego. Essa abordagem evita picos de consumo de recursos no horário comercial.
Para instruções, consulte Excluir chaves expiradas periodicamente.
Aumente a frequência de expiração ativa
O parâmetro hz controla a frequência com que o Tair executa suas tarefas em segundo plano, incluindo a expiração ativa. Aumentar o valor de hz faz o Tair amostrar e excluir chaves expiradas com mais frequência.
Um valor mais alto de hz aumenta o consumo de CPU. Eleve o valor em incrementos de 10 e monitore a utilização de CPU após cada alteração para evitar sobrecarregar a instância.
Para instruções, consulte Ativar controle dinâmico de frequência para tarefas em segundo plano.
Defina TTLs nas chaves
Chaves sem tempo de expiração configurado se acumulam indefinidamente. Atribua um time-to-live (TTL) a cada chave de acordo com o tempo em que os dados são realmente necessários. Isso evita o armazenamento prolongado de dados obsoletos e reduz a chance de acúmulo futuro.