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.
RabbitMQ 4.3
Amazon MQ ahora admite la versión RabbitMQ 4.3 de las RabbitMQ 4 series de versiones del tipo de instancia mq.m7g en todos los tamaños de instancia admitidos. RabbitMQLa versión 4.3 introduce mejoras en las colas de quórum, nuevos tipos de intercambio y completa la eliminación de varias funciones que estaban obsoletas en las versiones anteriores de la versión 4.x. Para obtener más información sobre esta versión, consulte las notas de la versión RabbitMQ 4.3.0 en el sitio web.
importante
Amazon MQ solo admite la actualización a la RabbitMQ 4.3 desde RabbitMQ la versión 4.2. No puede actualizar directamente de la RabbitMQ 3.13 a la 4.3. Si su bróker utiliza la versión RabbitMQ 3.13, primero debe actualizar a la RabbitMQ 4.2 antes de actualizar a la 4.3.
Cambios importantes en RabbitMQ 4.3 en Amazon MQ
Los siguientes cambios de código abierto pueden afectar a sus aplicaciones al actualizar a RabbitMQ la versión 4.3. Revise estos cambios antes de actualizar su bróker.
-
Se rechazan las colas transitorias no exclusivas: si se declara una cola que no es duradera ni exclusiva, ahora se produce un error. Amazon MQ para RabbitMQ la versión 4.3 ha eliminado la compatibilidad con esta función. En su lugar, utilice colas duraderas, colas exclusivas o colas duraderas con TTL de cola en el
sitio web. RabbitMQ -
Se rechaza la QoS global: al llamar
basic.qosconglobal=trueahora se devuelve un error de canal. Amazon MQ para la versión RabbitMQ 4.3 ha eliminado la compatibilidad con esta función. En su lugar, utilice prefetch () por consumidor.global=falsePara obtener más información sobre este cambio, consulte la eliminación de la QoSglobal en el sitio web. RabbitMQ -
Se elimina el almacenamiento de la versión 1 de la cola clásica: si se declara una cola con
x-queue-version=1ahora, se produce un error. Classic Queue v2 es el único motor de almacenamiento compatible. Amazon MQ aplica la versión 2 desde la versión RabbitMQ 3.12, por lo que las colas existentes no se ven afectadas. -
El tiempo de espera de los consumidores ya no se aplica a las colas clásicas: las colas clásicas ya no evalúan los tiempos de espera de los consumidores. Si un consumidor se queda atascado en el nivel de la aplicación, RabbitMQ no vuelve a entregar los mensajes automáticamente. La
consumer_timeoutconfiguración sigue aplicándose a las colas de quórum. Si su aplicación depende del tiempo de espera del consumidor para las colas clásicas, considere la posibilidad de migrar a las colas de quórum o implementar comprobaciones de ritmo a nivel de aplicación. Para obtener más información sobre este cambio, consulte las notas de la versión 4.3.0 en el sitio web RabbitMQ.GitHub
Nuevas funciones y mejoras en RabbitMQ 4.3 en Amazon MQ
-
Prioridad estricta de las colas de quórum: las colas de quórum ahora admiten un orden de prioridad estricto con hasta 32 niveles (0 a 31), habilitados con el argumento de la cola.
x-max-priorityHigher-priority los mensajes siempre se entregan antes que los de menor prioridad. Esto sustituye a la entrega basada en dos niveles basada en proporciones introducida en la versión 4.2. RabbitMQ Para obtener más información sobre las prioridades de las colas de quórum, consulte Prioridades de las colas de quórum en el sitio web.RabbitMQ -
Reintento retrasado en la cola de quórum: las colas de quórum admiten el reintento retrasado con un retraso creciente configurable. Puede configurar el comportamiento de los reintentos mediante argumentos de cola o claves de política (,,).
delayed-retry-typedelayed-retry-mindelayed-retry-maxPara obtener más información sobre las colas de quórum, consulte Colas de quórum en el sitio web.RabbitMQ -
Tiempo de espera granular para las colas de quórum: el tiempo de espera de los consumidores ahora se puede establecer por consumidor, por cola o mediante una política. Esto proporciona un control más preciso que la configuración anterior para todo el corredor.
consumer_timeout -
Límite de entrega modificable mediante una política: el límite de entrega en colas de quórum ahora se puede actualizar mediante una política sin necesidad de redeclarar la cola.
-
Intercambio de hash uniforme (x-modulus-hash): el tipo de intercambio ahora está integrado en el núcleo
x-modulus-hash. RabbitMQ Este tipo de intercambio distribuye los mensajes entre las colas enlazadas mediante un hash uniforme de la clave de enrutamiento, lo que permite fragmentar la carga de trabajo sin lógica del lado del cliente. Para obtener más información sobre los intercambios de hash coherentes, consulte el artículo Intercambio de hash coherente en el sitio web.RabbitMQ
importante
Si vas a actualizar desde la versión RabbitMQ 4.2, ten en cuenta el siguiente cambio en la entrega de mensajes. Los mensajes existentes con prioridades anteriormente asignadas a altas (≥5) o normales (0—4) ahora se entregan siguiendo un orden estricto. Como resultado, es posible que los mensajes de menor prioridad pasen desapercibidos mientras los de mayor prioridad permanezcan en la cola. RabbitMQ4.2 utilizó la entrega basada en una proporción de 2:1, lo que garantizó el progreso de los mensajes de prioridad normal.