Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 3645|Jawab: 0

Penjelasan terperinci tentang arsitektur pesan RabbitMQ AMQP

[Salin tautan]
Diposting pada 14/08/2022 23.32.43 | | | |
Pengantar protokol AMQP

AMQP (Advanced Message Queuing Protocol) adalah protokol standar lapisan aplikasi yang menyediakan layanan pesan terpadu, dan merupakan standar terbuka untuk protokol lapisan aplikasi yang dirancang untuk middleware berorientasi pesan. AMQP adalah protokol jaringan untuk meneruskan pesan asinkron antar proses.

Klien dan middleware pesan berdasarkan protokol ini dapat mengirimkan pesan tanpa dibatasi oleh produk klien/middleware yang berbeda, bahasa pengembangan yang berbeda, dll.

Karakteristik utama AMQP adalah berorientasi pesan, antrian, perutean (termasuk peer-to-peer dan publikasi/langganan), keandalan, dan keamanan. AMQP menegakkan perilaku penyedia pesan dan klien, memungkinkan interoperabilitas sejati antara vendor yang berbeda.

Penjelasan rinci tentang protokol AMQP
https://www.itsvse.com/thread-10347-1-1.html

Merutekan pesan

Dalam arsitektur AMQP, perutean pesan yang berhasil terdiri dari tiga bagian:

  • Pertukaran: Tempat produsen menerbitkan pesan
  • Antrean: Tempat konsumen menerima pesan
  • Pengikatan: Cara pesan dirutekan dari sakelar ke antrean tertentu


Pertukaran dan Pengikatan

Jadi bagaimana pesan mencapai antrean? Setiap kali Anda ingin mengirimkan pesan ke konsumen, Anda harus mengirimkannya terlebih dahulu ke penukar. Kemudian, berdasarkan aturan atau kunci perutean tertentu, RabbitMQ akan memutuskan antrean mana yang harus dikirimkan pesan.

Aturan - atau kunci perutean - memungkinkan Anda untuk mengikat antrean ke bursa. RabbitMQ akan mencoba mencocokkan kunci perutean dalam pesan dengan kunci yang digunakan dalam pengikatan. Pesan kemudian dikirimkan ke antrean berdasarkan salah satu dari empat jenis pertukaran: fanout, topic, direct, header



Pertukaran Fanout

Jenis pertukaran ini menyiarkan semua pesan yang diterimanya ke semua antrean yang terikat padanya. Setiap kunci perutean yang disediakan dengan pesan yang diterbitkan akan diabaikan.

Pertukaran Topik

Dalam jenis pertukaran ini, pesan dikirim ke antrean berdasarkan kunci perutean. Ini berarti bahwa pesan yang dikirim ke bursa topik harus memiliki kunci perutean tertentu, yang harus berupa daftar kata, dipisahkan oleh titik (misalnya, 'acs.deviceoperations.'). Batas kata-kata adalah 255 byte.

Kunci pengikatan harus dalam format yang sama dengan kunci perutean. Oleh karena itu, pesan yang dikirim dengan kunci perutean tertentu akan dikirimkan ke setiap antrean yang terikat dengan kunci pengikatan yang cocok.

Kunci pengikatan memungkinkan aturan ekspresi berikut:

*(tanda bintang) hanya dapat mengganti satu kata
# (hash) dapat menggantikan nol atau lebih kata
Ketika antrean terikat dengan kunci pengikat "#" (hash), antrian akan menerima semua pesan terlepas dari kunci perutean, seperti dalam pertukaran fan-out Fanout.

Pertukaran Langsung

Ketika antrean dideklarasikan, itu akanSecara otomatis mengikat ke sakelar yang menggunakan nama antrean sebagai kunci perutean。 Jika kunci perutean cocok, pesan akan dikirimkan ke antrean yang sesuai.

Pertukaran Header

Sakelar header agak mirip dengan sakelar topik, tetapi tidak seperti sakelar topik, perutean didasarkan pada kunci rute, dan nilai perutean sakelar header didasarkan pada data header pesan.
Kunci perutean sakelar topik hanya string, sedangkan sakelar header dapat berupa bilangan bulat dan hash.

(Akhir)





Mantan:Penjelasan rinci tentang protokol AMQP
Depan:[Berputar]. Pengoptimalan performa NET - melintasi koleksi Daftar dengan cepat
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com