Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Le migliori pratiche per la resilienza e il monitoraggio della rete in Amazon MQ for RabbitMQ
La resilienza della rete e il monitoraggio delle metriche dei broker sono essenziali per mantenere applicazioni di messaggistica affidabili. Completa le seguenti best practice per implementare meccanismi di ripristino automatici e strategie di monitoraggio delle risorse.
Fase 1: Ripristino automatico in caso di guasti di rete
Si consiglia di abilitare sempre il ripristino automatico della rete per evitare tempi di inattività significativi nei casi in cui le connessioni client ai nodi RabbitMQ non avessero esito positivo. La libreria client Java RabbitMQ supporta il ripristino automatico della rete per impostazione predefinita, a partire dalla versione 4.0.0
.
Nei casi in cui la connessione iniziale tra un client e un nodo RabbitMQ non riesce, il ripristino automatico non verrà attivato. Si consiglia di scrivere il codice dell'applicazione per tenere conto degli errori di connessione iniziali riprovando la connessione. Nell'esempio seguente viene illustrato il tentativo di tentativi di errori iniziali di rete utilizzando la libreria client 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 un'applicazione chiude una connessione utilizzando il metodo Connection.Close
, il ripristino automatico della rete non verrà attivato o abilitato.
Fase 2: Monitora le metriche e gli allarmi del broker
Ti consigliamo di monitorare regolarmente i CloudWatch parametri e gli allarmi del tuo broker Amazon MQ for RabbitMQ per identificare e risolvere potenziali problemi prima che abbiano un impatto sulla tua applicazione di messaggistica. Il monitoraggio proattivo è essenziale per mantenere un'applicazione di messaggistica resiliente e garantire prestazioni ottimali.
Amazon MQ for RabbitMQ pubblica metriche CloudWatch che forniscono informazioni sulle prestazioni dei broker, sull'utilizzo delle risorse e sul flusso dei messaggi. Le metriche chiave da monitorare includono l'utilizzo della memoria e dell'utilizzo del disco. Puoi impostare CloudWatch allarmi quando il tuo broker si avvicina ai limiti delle risorse o subisce un peggioramento delle prestazioni.
Monitora le seguenti metriche essenziali:
RabbitMQMemUsed
eRabbitMQMemLimit
-
Monitora l'utilizzo della memoria per evitare allarmi di memoria che possono bloccare la pubblicazione dei messaggi.
RabbitMQDiskFree
eRabbitMQDiskFreeLimit
-
Monitora l'utilizzo del disco per evitare problemi di spazio su disco che possono causare guasti al broker.
Per le implementazioni in cluster, monitora anche le metriche specifiche dei nodi per identificare problemi specifici dei nodi.