Por padrão, o ApsaraMQ for MQTT mantém as assinaturas do cliente ativas após a desconexão e entrega mensagens offline enfileiradas na reconexão. Se suas mensagens exigirem atualidade ou for necessário remover assinantes inativos, ative a limpeza de assinaturas para eliminar automaticamente as assinaturas após o cliente permanecer offline por um período especificado.
Como funciona a limpeza de assinaturas
O ApsaraMQ for MQTT rastreia o último heartbeat de cada cliente. Com a limpeza automática de assinaturas ativada para um tópico, o serviço compara a hora atual com o último heartbeat do cliente. Se a duração offline atingir ou ultrapassar o Cleanup Cycle configurado, o sistema exclui a assinatura entre esse cliente e o tópico.
Após a limpeza da assinatura:
O cliente deixa de receber novas mensagens offline desse tópico.
O cliente ainda pode receber mensagens offline geradas antes da limpeza que permaneçam dentro do período de validade.
A entrega de mensagens offline também depende dos parâmetros QoS e cleanSession. Para mais detalhes, consulte Termos.
Alterações nas assinaturas afetam o faturamento da instância. Para mais detalhes, consulte Visão geral do faturamento.
Configure a limpeza de assinaturas
Procedimento
Ativar a limpeza de assinaturas impede que os clientes recebam mensagens offline. Prossiga com cautela.
Faça login no console do ApsaraMQ for MQTT e clique em Instances no painel de navegação à esquerda.
Na barra de navegação superior, selecione uma região. Na página Instances, clique em ID da instância para abrir a página Instance Details.
No painel de navegação à esquerda, clique em Topics. Localize o tópico desejado e escolha na coluna Actions.
-
No painel Configure Automatic Cleanup Cycle, defina as configurações abaixo e clique em OK.
Configuração
Descrição
Enable Automatic Subscription Cleanup
Defina como Yes para ative a limpeza automática ou No para manter as assinaturas persistentes.
Cleanup Cycle
Limiar de tempo offline para remoção da assinatura. O sistema limpa a assinatura quando o tempo desde o último heartbeat do cliente atinge ou supera este valor.
Resultado
Após salvar, confirme o ciclo de limpeza na coluna Subscription Cleanup Cycle da lista de tópicos.