View a markdown version of this page

RabbitMQ 4.3 - Amazon MQ

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à.

RabbitMQ 4.3

Amazon MQ ora supporta la versione RabbitMQ 4.3 delle RabbitMQ 4 versioni sul tipo di istanza mq.m7g in tutte le dimensioni di istanza supportate. RabbitMQ4.3 introduce miglioramenti al quorum queue, nuovi tipi di exchange e completa la rimozione di diverse funzionalità che erano obsolete nelle precedenti versioni 4.x. Per ulteriori informazioni su questa versione, consulta le note sulla versione 4.3.0 sul sito Web. RabbitMQ GitHub

Importante

Amazon MQ supporta solo l'aggiornamento a RabbitMQ 4.3 da 4.2. RabbitMQ Non è possibile eseguire l'aggiornamento diretto da RabbitMQ 3.13 a 4.3. Se il tuo broker utilizza la versione RabbitMQ 3.13, devi prima eseguire l'aggiornamento alla RabbitMQ 4.2 prima di passare alla 4.3.

Modifiche sostanziali in RabbitMQ 4.3 su Amazon MQ

Le seguenti modifiche open source potrebbero influire sulle tue applicazioni durante l'aggiornamento alla versione 4.3. RabbitMQ Rivedi queste modifiche prima di aggiornare il tuo broker.

  • Le code transitorie non esclusive vengono rifiutate: la dichiarazione di una coda non durevole e non esclusiva ora restituisce un errore. Amazon MQ per 4.3 ha rimosso il supporto per questa funzionalità. RabbitMQ Utilizza invece code durevoli, code esclusive o code durevoli con coda TTL sul sito web. RabbitMQ

  • Il QoS globale è stato rifiutato: la chiamata con now restituisce un errore di canale. basic.qos global=true Amazon MQ per RabbitMQ 4.3 ha rimosso il supporto per questa funzionalità. Utilizza invece prefetch () per consumatore. global=false Per ulteriori informazioni su questa modifica, vedere Rimozione del QoS globale sul sito Web. RabbitMQ

  • Lo storage Classic Queue v1 è stato rimosso: la dichiarazione di una coda con now restituisce un errore. x-queue-version=1 Classic queue v2 è l'unico motore di archiviazione supportato. Amazon MQ applica la versione v2 dalla RabbitMQ 3.12, quindi le code esistenti non sono interessate.

  • Il timeout dei consumatori non si applica più alle code classiche: le code classiche non valutano più i timeout dei consumatori. Se un utente rimane bloccato a livello di applicazione, RabbitMQ non recapita automaticamente i messaggi. L'consumer_timeoutimpostazione continua a essere applicata alle code relative al quorum. Se la tua applicazione si basa sul timeout dei consumatori per le code classiche, valuta la possibilità di migrare alle code di quorum o di implementare controlli del battito cardiaco a livello di applicazione. Per ulteriori informazioni su questa modifica, consultate le note sulla versione 4.3.0 sul sito Web. RabbitMQ GitHub

Nuove funzionalità e miglioramenti in RabbitMQ 4.3 su Amazon MQ

  • Priorità rigorosa della coda quorum: le code quorum ora supportano un ordine di priorità rigoroso con un massimo di 32 livelli (0-31), abilitato con l'argomento queue. x-max-priority Higher-priority i messaggi vengono sempre recapitati prima dei messaggi con priorità inferiore. Questo sostituisce la distribuzione basata su un rapporto a 2 livelli introdotta in 4.2. RabbitMQ Per ulteriori informazioni sulle priorità delle code di quorum, vedi Priorità relative alle code relative al quorum sul sito web. https://www.rabbitmq.com/docs/quorum-queues#priorities RabbitMQ

  • Riprova ritardata nella coda del quorum: le code quorum supportano i tentativi ritardati con un backoff crescente configurabile. È possibile configurare il comportamento dei tentativi utilizzando gli argomenti della coda o le chiavi dei criteri (,,). delayed-retry-type delayed-retry-min delayed-retry-max Per ulteriori informazioni sulle code relative al quorum, consulta Code relative al quorum sul sito Web. https://www.rabbitmq.com/docs/quorum-queues RabbitMQ

  • Timeout granulare dei consumatori per le code relative al quorum: il timeout dei consumatori può ora essere impostato per consumatore, per coda o utilizzando una policy. Ciò fornisce un controllo più preciso consumer_timeout rispetto alla precedente impostazione a livello di broker.

  • Limite di consegna modificabile utilizzando una politica: il limite di consegna in coda quorum può ora essere aggiornato utilizzando una policy senza richiedere una nuova dichiarazione della coda.

  • Scambio di hash coerente (x-modulus-hash): il tipo di scambio è ora integrato nel core. x-modulus-hash RabbitMQ Questo tipo di scambio distribuisce i messaggi tra code associate utilizzando un hashing coerente della chiave di routing, consentendo il partizionamento del carico di lavoro senza logica lato client. Per ulteriori informazioni sugli scambi coerenti di hash, consulta Consistent hash exchange sul sito Web. https://www.rabbitmq.com/docs/consistent-hash-exchange RabbitMQ

Importante

Se stai effettuando l'aggiornamento dalla versione RabbitMQ 4.2, nota la seguente modifica alla consegna dei messaggi. I messaggi esistenti con priorità precedentemente mappate su alta (≥5) o normale (0—4) vengono ora recapitati utilizzando un ordine rigoroso. Di conseguenza, i messaggi con priorità inferiore potrebbero essere esauriti mentre i messaggi con priorità più alta rimangono in coda. RabbitMQ4.2 utilizzava un recapito basato su un rapporto 2:1, che garantiva l'avanzamento dei messaggi con priorità normale.