Anda dapat menggunakan fitur pengiriman pesan global yang disediakan oleh ApsaraMQ for RabbitMQ dengan cara yang sama seperti Plugin Shovel dari RabbitMQ sumber terbuka. Fitur ini memungkinkan Anda meneruskan pesan dari antrian ke antrian lain atau ke pertukaran (exchange). Sumber dan tujuan pesan dapat berasal dari instans yang berbeda atau vhost di wilayah yang sama atau berbeda.
Catatan penggunaan
Biaya tambahan dikenakan. Total biaya untuk fitur pengiriman pesan global dihitung menggunakan rumus berikut: Total Biaya = Biaya ApsaraMQ for RabbitMQ + Biaya pengiriman EventBridge + Biaya trafik Cloud Enterprise Network (CEN). Biaya trafik hanya berlaku untuk pengiriman lintas wilayah. Untuk informasi lebih lanjut tentang penagihan ApsaraMQ for RabbitMQ, lihat Penagihan Instans Langganan. Untuk penagihan EventBridge, lihat Penagihan. Untuk penagihan CEN, lihat Aturan Penagihan.
Pengiriman pesan relay tidak didukung. Jika Anda ingin meneruskan pesan dari Instans A ke Instans C, Anda harus membuat rute langsung dari Instans A ke Instans C. Anda tidak dapat meneruskan pesan melalui Instans B.
Latensi mungkin terjadi selama sinkronisasi. Sinkronisasi pesan dengan jumlah besar atau lebar pita jaringan yang terbatas dapat menyebabkan latensi.
Batas ukuran pesan diberlakukan: Pastikan ukuran maksimum pesan pada instans tujuan lebih besar dari atau sama dengan ukuran maksimum pesan pada instans sumber. Jika ukuran maksimum pesan pada instans tujuan lebih kecil, pesan yang melebihi batas tersebut gagal dirutekan dan hilang.
Prasyarat
ApsaraMQ for RabbitMQ
Instans sumber, vhost, pertukaran (exchange), dan antrian telah dibuat dan tersedia. Demikian juga, instans tujuan, vhost, pertukaran (exchange), dan antrian juga telah dibuat dan tersedia. Untuk informasi lebih lanjut, lihat:
EventBridge
EventBridge telah diaktifkan, dan izin yang diperlukan telah diberikan kepada Pengguna Resource Access Management (RAM). Untuk informasi lebih lanjut, lihat Aktivasi EventBridge dan Pemberian Izin kepada Pengguna RAM.
Membuat tugas pengiriman pesan global
Masuk ke Konsol ApsaraMQ for RabbitMQ. Di panel navigasi kiri, klik Global Message Routing.
Di halaman Global Message Routing, klik Create Task.
(Opsional) Di kotak dialog Alibaba Cloud Service Authorization - Message Queue RabbitMQ, baca pesan dan klik OK.
Saat pertama kali membuat tugas pengiriman pesan global, peran layanan berikut akan dibuat secara otomatis: AliyunServiceRoleForEventBridgeSourceRabbitMQ dan AliyunServiceRoleForEventBridgeSendToRabbitMQ. Untuk informasi lebih lanjut, lihat Peran Layanan Terkait.
CatatanEventBridge mengambil alih peran AliyunServiceRoleForEventBridgeSourceRabbitMQ untuk menerima pesan dari instans sumber.
EventBridge mengambil alih peran AliyunServiceRoleForEventBridgeSendToRabbitMQ untuk meneruskan pesan ke instans tujuan.
Di halaman Create Message Routing Task, konfigurasikan informasi tentang instans sumber dan tujuan untuk tugas pengiriman pesan.
Di langkah Basic Information, tentukan nama tugas dan deskripsi lalu klik Next.
Di langkah Source and Destination, konfigurasikan informasi tentang instans sumber dan tujuan lalu klik Next.
Parameter
Deskripsi
Contoh
Source
Service Type
Tipe instans dari mana Anda ingin merutekan pesan. Parameter ini secara otomatis diatur ke Message Queue for RabbitMQ.
Message Queue for RabbitMQ
Region
Wilayah tempat instans sumber ditempatkan.
Tiongkok (Shenzhen)
Instance
ID instans sumber.
amqp-cn-i7m2a8bq****
vhost
vhost yang dibuat pada instans sumber.
test-001
Queue
Antrian yang dibuat pada instans sumber.
test-001-q
Destination
Service Type
Tipe instans ke mana Anda ingin merutekan pesan. Parameter ini secara otomatis diatur ke Message Queue for RabbitMQ.
Message Queue for RabbitMQ
Region
Wilayah tempat instans tujuan ditempatkan.
Tiongkok (Shenzhen)
Instance
ID instans tujuan.
amqp-cn-7pp2a85q****
vhost
vhost yang dibuat pada instans tujuan.
test-routing
Destination Type
Tipe sumber daya ke mana Anda ingin meneruskan pesan. Nilai valid:
Queue: Pesan diteruskan ke satu atau beberapa antrian pada instans tujuan.
Exchange: Pesan diteruskan ke satu atau beberapa pertukaran (exchange) pada instans tujuan.
CatatanJika Anda menetapkan parameter Destination Type ke Pertukaran (Exchange), pastikan bahwa pertukaran tujuan terikat ke antrian. Jika tidak, pesan yang diteruskan ke pertukaran tujuan akan hilang karena tidak ada antrian yang dapat digunakan untuk menyimpan pesan tersebut.
test-routing-ex
Routing Key
Kunci rute yang digunakan untuk pengiriman pesan. Parameter ini tersedia hanya jika Anda menetapkan parameter Destination Type ke Pertukaran (Exchange). Nilai valid:
Not Set: Kunci rute yang ada digunakan untuk meneruskan pesan ke pertukaran tujuan.
Set: Kunci rute yang dikonfigurasi digunakan untuk meneruskan pesan ke pertukaran tujuan.
test
Di langkah Create and Start, konfirmasikan konfigurasi tugas pengiriman pesan lalu klik Create and Start.
Setelah tugas pengiriman pesan dibuat, Anda dapat melihatnya di halaman Global Message Routing. Status tugas ditampilkan sebagai Running di kolom Status.
Referensi
Untuk informasi tentang Plugin Shovel dari RabbitMQ sumber terbuka, lihat Plugin Shovel.