View a markdown version of this page

RabbitMQ 4.3 - Amazon MQ

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

RabbitMQ 4.3

Amazon MQ sekarang mendukung RabbitMQ 4.3 dalam RabbitMQ 4 seri rilis pada tipe instance mq.m7g di semua ukuran instance yang didukung. RabbitMQ4.3 memperkenalkan peningkatan antrian kuorum, jenis pertukaran baru, dan menyelesaikan penghapusan beberapa fitur yang tidak digunakan lagi di rilis 4.x sebelumnya. Untuk informasi lebih lanjut tentang rilis ini, lihat catatan rilis RabbitMQ 4.3.0 di GitHub situs web.

penting

Amazon MQ hanya mendukung peningkatan ke RabbitMQ 4.3 dari RabbitMQ 4.2. Anda tidak dapat memutakhirkan langsung dari RabbitMQ 3.13 ke 4.3. Jika broker Anda menjalankan RabbitMQ 3.13, Anda harus terlebih dahulu meningkatkan ke RabbitMQ 4.2 sebelum memutakhirkan ke 4.3.

Memecahkan perubahan di RabbitMQ 4.3 di Amazon MQ

Perubahan sumber terbuka berikut mungkin memengaruhi aplikasi Anda saat memutakhirkan ke RabbitMQ 4.3. Tinjau perubahan ini sebelum meningkatkan broker Anda.

  • Antrian non-eksklusif sementara ditolak: Men deklarasikan antrian yang tidak tahan lama dan non-eksklusif sekarang mengembalikan kesalahan. Amazon MQ untuk RabbitMQ 4.3 menghapus dukungan untuk fitur ini. Gunakan antrian tahan lama, antrian eksklusif, atau antrian tahan lama dengan antrian TTL di situs web sebagai gantinya. RabbitMQ

  • Global QoS ditolak: Mem anggil basic.qos dengan global=true sekarang mengembalikan kesalahan saluran. Amazon MQ untuk RabbitMQ 4.3 menghapus dukungan untuk fitur ini. Gunakan prefetch () global=false per konsumen sebagai gantinya. Untuk informasi selengkapnya tentang perubahan ini, lihat Penghapusan QoS global di RabbitMQ situs web.

  • Penyimpanan antrian klasik v1 dihapus: Mendeklarasikan antrian dengan x-queue-version=1 sekarang mengembalikan kesalahan. Classic queue v2 adalah satu-satunya mesin penyimpanan yang didukung. Amazon MQ telah menerapkan v2 sejak RabbitMQ 3.12, jadi antrian yang ada tidak terpengaruh.

  • Batas waktu konsumen tidak lagi berlaku untuk antrian klasik: Antrian klasik tidak lagi mengevaluasi batas waktu konsumen. Jika konsumen terjebak di tingkat aplikasi, RabbitMQ tidak secara otomatis mengirimkan ulang pesan. Peng consumer_timeout aturan ini terus berlaku untuk antrian kuorum. Jika aplikasi Anda bergantung pada batas waktu konsumen untuk antrian klasik, pertimbangkan untuk bermigrasi ke antrian kuorum atau menerapkan pemeriksaan detak jantung tingkat aplikasi. Untuk informasi lebih lanjut tentang perubahan ini, lihat catatan rilis RabbitMQ 4.3.0 di GitHub situs web.

Fitur dan penyempurnaan baru di RabbitMQ 4.3 di Amazon MQ

  • Prioritas ketat antrian kuor um: Antrian kuorum sekarang mendukung pengurutan prioritas ketat hingga 32 level (0—31), diaktifkan dengan argumen antrian. x-max-priority Higher-priority Pesan selalu dikirimkan sebelum pesan dengan prioritas rendah. Ini menggantikan pengiriman berbasis rasio 2 tingkat yang diperkenalkan pada 4.2. RabbitMQ Untuk informasi selengkapnya tentang prioritas antrian kuorum, lihat Prioritas antrian kuorum di situs web. RabbitMQ

  • Antrian kuorum menunda percobaan ulang: Antrian ku orum mendukung percobaan ulang yang tertunda dengan peningkatan mundur yang dapat dikonfigurasi. Anda dapat mengonfigurasi perilaku coba ulang dengan menggunakan argumen antrian atau kunci kebijakan (delayed-retry-type,delayed-retry-min,delayed-retry-max). Untuk informasi selengkapnya tentang antrian kuorum, lihat Antrian kuorum di situs web. RabbitMQ

  • Batas waktu konsumen terperinci untuk antrian kuorum: Batas waktu konsumen sekarang dapat diatur per konsumen, per antrian, atau dengan menggunakan kebijakan. Ini memberikan kontrol yang lebih baik daripada pengaturan seluruh broker sebelumnya. consumer_timeout

  • Batas pengiriman dapat diubah dengan menggunakan kebijakan: B atas pengiriman antrian kuorum sekarang dapat diperbarui dengan menggunakan kebijakan tanpa memerlukan deklarasi ulang antrian.

  • Pertukaran hash yang konsisten (x-modulus-hash): Jenis x-modulus-hash pertukaran sekarang dibangun ke dalam inti. RabbitMQ Jenis pertukaran ini mendistribusikan pesan di seluruh antrian terikat dengan menggunakan hashing yang konsisten dari kunci routing, memungkinkan pembagian beban kerja tanpa logika sisi klien. Untuk informasi lebih lanjut tentang pertukaran hash yang konsisten, lihat Pertukaran hash yang konsisten di RabbitMQ situs web.

penting

Jika Anda memutakhirkan dari RabbitMQ 4.2, perhatikan perubahan berikut untuk pengiriman pesan. Pesan yang ada dengan prioritas yang sebelumnya dipetakan ke tinggi (≥5) atau normal (0—4) sekarang dikirim menggunakan pemesanan yang ketat. Akibatnya, pesan dengan prioritas rendah mungkin kelaparan sementara pesan prioritas tinggi tetap berada dalam antrian. RabbitMQ4.2 menggunakan pengiriman berbasis rasio 2:1, yang menjamin kemajuan pada pesan prioritas normal.