Prácticas recomendadas para la configuración de corredores y la gestión de conexiones en Amazon MQ para RabbitMQ - Amazon MQ

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Prácticas recomendadas para la configuración de corredores y la gestión de conexiones en Amazon MQ para RabbitMQ

La configuración y la gestión de las conexiones del agente son el primer paso para evitar problemas relacionados con el rendimiento de los mensajes del agente, la utilización de los recursos y la capacidad de gestionar las cargas de trabajo de producción. Al crear y configurar un bróker Amazon MQ para RabbitMQ, siga las siguientes prácticas recomendadas para seleccionar los tipos de instancias adecuados, gestionar las conexiones de forma eficaz y configurar la recuperación previa de mensajes para maximizar el rendimiento de su bróker.

importante

Amazon MQ para RabbitMQ no admite el nombre de usuario “guest” y eliminará la cuenta de invitado predeterminada cuando cree un nuevo agente. Amazon MQ también eliminará periódicamente cualquier cuenta creada por el cliente con dicho nombre.

Paso 1: Utilice despliegues en clúster

Para las cargas de trabajo de producción, recomendamos utilizar despliegues en clústeres en lugar de agentes de instancia única para garantizar una alta disponibilidad y la resiliencia de los mensajes. Las implementaciones en clúster eliminan los puntos únicos de error y ofrecen una mejor tolerancia a los errores.

Las implementaciones en clúster constan de tres nodos intermediarios de RabbitMQ distribuidos en tres zonas de disponibilidad, lo que proporciona una conmutación automática por error y garantiza que las operaciones continúen incluso si una zona de disponibilidad completa deja de estar disponible. Amazon MQ replica automáticamente los mensajes en todos los nodos para garantizar la disponibilidad durante las averías o el mantenimiento de los nodos.

Las implementaciones en clúster son esenciales para los entornos de producción y están respaldadas por el acuerdo de nivel de servicio de Amazon MQ.

Para obtener más información, consulte Implementación de clústeres en Amazon MQ para RabbitMQ.

Paso 2: Elija el tipo de instancia de bróker correcto

El rendimiento de los mensajes de un tipo de instancia de intermediario depende del caso de uso de la aplicación. M7g.mediumsolo debe usarse para probar el rendimiento de la aplicación. El uso de esta instancia más pequeña antes de usar instancias más grandes en producción puede mejorar el rendimiento de las aplicaciones. En los tipos de instancias m7g.large y superiores, puede usar implementaciones de clústeres para obtener una alta disponibilidad y durabilidad de los mensajes. En cambio, los tipos de instancias de agente más grandes pueden controlar clientes y colas, rendimientos altos, mensajes en memoria y mensajes redundantes a nivel de producción.

Para obtener más información sobre cómo elegir el tipo de instancia correcto, consulte las pautas de tamaño en Amazon MQ para RabbitMQ.

Paso 3: Utilice colas de quórum

Las colas de quórum, con implementación en clústeres, deberían ser la opción predeterminada para los tipos de colas replicadas en los entornos de producción para los corredores de RabbitMQ a partir de la versión 3.13. Las colas de quórum son un tipo de cola replicada moderna que proporciona alta fiabilidad, alto rendimiento y latencia estable.

Las colas de quórum utilizan el algoritmo de consenso Raft para ofrecer una mejor tolerancia a los errores. Cuando el nodo líder deja de estar disponible, las colas de quórum eligen automáticamente a un nuevo líder por mayoría de votos, lo que garantiza que la entrega de mensajes continúe con las mínimas interrupciones. Como cada nodo se encuentra en una zona de disponibilidad diferente, su sistema de mensajería permanece disponible incluso si una zona de disponibilidad completa deja de estar disponible temporalmente.

Para declarar una cola de quórum, defina el encabezado como x-queue-type quorum al crear las colas.

Para obtener más información sobre las colas de quórum, incluidas las estrategias de migración y las prácticas recomendadas, consulte Colas de quórum en Amazon MQ para RabbitMQ.

Paso 4: Utilice varios canales

Para evitar la pérdida de conexiones, use varios canales a través de una sola conexión. Las aplicaciones deben evitar una relación de conexión individual con el canal. Recomendamos utilizar una conexión para cada proceso y, a continuación, un canal para cada hilo. Evite el uso excesivo de los canales para evitar fugas en ellos.