As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Melhores práticas para resiliência e monitoramento de rede no Amazon MQ para RabbitMQ
A resiliência da rede e as métricas do agente de monitoramento são essenciais para manter aplicativos de mensagens confiáveis. Complete as seguintes melhores práticas para implementar mecanismos de recuperação automática e estratégias de monitoramento de recursos.
Etapa 1: Recuperação automática de falhas de rede
Recomendamos sempre habilitar a recuperação automática de rede para evitar tempo de inatividade significativo nos casos em que as conexões do cliente com os nós RabbitMQ falham. A biblioteca do cliente Java RabbitMQ é compatível com a recuperação automática de rede por padrão, começando com a versão 4.0.0
.
Nos casos em que a conexão inicial entre um cliente e um nó RabbitMQ falha, a recuperação automática não será acionada. Recomendamos escrever o código da aplicação para levar em conta as falhas de conexão iniciais tentando a conexão novamente. O exemplo a seguir demonstra a repetição de falhas iniciais de rede usando a biblioteca de cliente Java RabbitMQ.
ConnectionFactory factory = new ConnectionFactory(); // enable automatic recovery if using RabbitMQ Java client library prior to version 4.0.0. factory.setAutomaticRecoveryEnabled(true); // configure various connection settings try { Connection conn = factory.newConnection(); } catch (java.net.ConnectException e) { Thread.sleep(5000); // apply retry logic }
nota
Se uma aplicação fecha uma conexão usando o método Connection.Close
, a recuperação automática de rede não será ativada ou acionada.
Etapa 2: Monitore as métricas e os alarmes do corretor
Recomendamos monitorar regularmente CloudWatch métricas e alarmes de seu agente Amazon MQ for RabbitMQ para identificar e resolver possíveis problemas antes que eles afetem seu aplicativo de mensagens. O monitoramento proativo é essencial para manter um aplicativo de mensagens resiliente e garantir o desempenho ideal.
O Amazon MQ for RabbitMQ publica métricas CloudWatch que fornecem informações sobre o desempenho do agente, a utilização de recursos e o fluxo de mensagens. As principais métricas a serem monitoradas incluem o uso da memória e do disco. Você pode configurar CloudWatch alarmes para quando seu corretor se aproximar dos limites de recursos ou sofrer uma degradação do desempenho.
Monitore as seguintes métricas essenciais:
RabbitMQMemUsed
eRabbitMQMemLimit
-
Monitore o uso da memória para evitar alarmes de memória que possam bloquear a publicação de mensagens.
RabbitMQDiskFree
eRabbitMQDiskFreeLimit
-
Monitore o uso do disco para evitar problemas de espaço em disco que podem causar falhas no corretor.
Para implantações de cluster, monitore também as métricas específicas do nó para identificar problemas específicos do nó.
nota
Para obter mais informações sobre como evitar o alarme com muita memória, consulte Endereçar e evitar o alarme com muita memória.