全部产品
Search
文档中心

ApsaraMQ for RabbitMQ:Langkah 2: Buat sumber daya

更新时间:Jul 06, 2025

Sebelum menghubungkan aplikasi ke broker ApsaraMQ for RabbitMQ, Anda perlu membuat sumber daya ApsaraMQ for RabbitMQ yang diperlukan, seperti instance, vhost, exchange, antrian, serta sepasang nama pengguna dan kata sandi. Selain itu, Anda harus mengikat exchange ke antrian dan mendapatkan titik akhir dari instance. Saat menggunakan SDK untuk mengirim dan menerima pesan, pastikan untuk menentukan informasi sumber daya dalam kode SDK.

Prasyarat

Jika Anda menggunakan pengguna Resource Access Management (RAM) untuk mengakses ApsaraMQ for RabbitMQ guna membuat sumber daya, pastikan izin yang diperlukan telah diberikan kepada pengguna RAM. Untuk informasi lebih lanjut, lihat Langkah 1: (Opsional) Berikan Izin kepada Pengguna RAM.

Buat instance

Dalam ApsaraMQ for RabbitMQ, instance adalah entitas sumber daya independen yang mencakup sumber daya dasar seperti vhosts, exchanges, dan antrian.

  1. Masuk ke Konsol ApsaraMQ for RabbitMQ. Di panel navigasi kiri, klik Instances.

  2. Di bilah navigasi atas, pilih wilayah. Pada halaman Instances, klik Create Instance.

  3. Pada halaman pembelian, ikuti petunjuk di layar untuk menyelesaikan konfigurasi, baca dan setujui syarat layanan, lalu klik Beli Sekarang.

  4. Ikuti petunjuk di layar untuk menyelesaikan pembayaran.

    Di bilah navigasi atas halaman Instances, pilih wilayah tempat instance dibuat. Pada halaman yang muncul, lihat instance yang telah Anda buat.

    Catatan
    • Setelah membeli instance Edisi Profesional atau Edisi Perusahaan, instance langsung masuk ke status Running.

    • Setelah membeli instance Edisi Platinum Perusahaan, instance masuk ke status Deploying. Setelah selesai diterapkan, instance masuk ke status Running.

Konfigurasikan sumber daya

1. Buat vhost

Vhost digunakan untuk mengisolasi sumber daya secara logis. Setiap vhost mengelola exchanges, antrian, dan binding miliknya sendiri. Aplikasi dapat berjalan pada vhost independen dengan cara yang aman, sehingga bisnis suatu aplikasi tidak terpengaruh oleh aplikasi lain. Sebuah instance dapat berisi beberapa vhost, dan sebuah vhost dapat berisi beberapa exchanges dan antrian. Anda harus menentukan vhost sebelum menghubungkan produsen atau konsumen ke ApsaraMQ for RabbitMQ.

  1. Masuk ke Konsol ApsaraMQ for RabbitMQ. Di panel navigasi kiri, klik Instances.

  2. Di bilah navigasi atas halaman Instances, pilih wilayah tempat instance yang ingin Anda kelola berada. Kemudian, dalam daftar instance, klik nama instance yang ingin Anda kelola.

  3. Di panel navigasi kiri, klik Vhosts.

  4. Pada halaman Vhosts, klik Create Vhost.

  5. Di panel Create Vhost, masukkan nama vhost di bidang vhost Name dan klik OK.

2. Buat exchange

Exchange digunakan untuk merutekan pesan yang diterima dari produsen ke satu atau lebih antrian atau membuang pesan tersebut. Exchange merutekan pesan ke antrian berdasarkan kunci routing. Aturan routing yang berbeda digunakan untuk jenis exchange yang berbeda. Untuk informasi lebih lanjut, lihat Exchange.

  1. Di panel navigasi kiri halaman Detail Instance, klik Exchanges.

  2. Pada halaman Exchanges, klik panah drop-down di sebelah vhost. Dari daftar drop-down Change, pilih vhost tempat Anda ingin membuat exchange. Lalu, klik Create Exchange.

  3. Di panel Create Exchange, konfigurasikan Nama Exchange, Type, dan parameter Internal. Lalu, klik OK. Tabel berikut menjelaskan parameter tersebut.

    Parameter

    Deskripsi

    Exchange Name

    Nama exchange. amq. adalah bidang yang dicadangkan dan tidak dapat digunakan sebagai awalan nama exchange. Misalnya, Anda tidak dapat menggunakan amq.test sebagai nama exchange.

    Type

    Tipe exchange. Nilai valid:

    • direct: Exchange tipe ini merutekan pesan ke antrian yang memiliki kunci routing sama dengan kunci routing pesan.

    • topic: Exchange tipe ini mirip dengan exchange tipe direct. Namun, aturan routing untuk exchange topic kurang ketat daripada exchange direct. Exchange topic merutekan pesan ke satu atau lebih antrian yang terikat berdasarkan hasil pencocokan fuzzy atau multi-kondisi antara kunci routing pesan dan kunci routing yang digunakan untuk mengikat antrian ke exchange.

    • fanout: Exchange tipe ini merutekan semua pesan yang diterima ke semua antrian yang terikat ke exchange. Exchange fanout bekerja dengan cara yang mirip dengan fitur penyiaran.

    • headers: Exchange tipe ini mirip dengan exchange tipe direct. Satu-satunya perbedaan antara exchange headers dan exchange direct adalah bahwa exchange headers merutekan pesan berdasarkan atribut headers alih-alih kunci routing. Saat mengikat exchange headers ke antrian, Anda harus mengonfigurasi atribut pengikatan dalam format key-value. Saat mengirim pesan ke exchange headers, Anda harus mengonfigurasi atribut headers dalam format key-value untuk pesan tersebut. Setelah exchange headers menerima pesan, exchange merutekan pesan berdasarkan hasil pencocokan antara atribut headers pesan dan atribut pengikatan antrian yang terikat.

    • x-delayed-message: Anda dapat mendeklarasikan exchange tipe ini dan mengonfigurasi atribut header x-delay dari pesan untuk menentukan periode waktu setelah mana pesan dikirim. Periode waktu dalam milidetik. Pesan dikirim ke antrian yang sesuai setelah periode waktu yang ditentukan oleh atribut header x-delay berakhir. Exchange merutekan pesan berdasarkan aturan routing yang sesuai dengan tipe exchange yang ditentukan oleh x-delayed-type.

    • x-consistent-hash: Exchange tipe ini memungkinkan Anda melakukan perhitungan hash pada kunci routing atau nilai header dan menggunakan hashing konsisten untuk merutekan pesan ke antrian yang berbeda.

    x-delayed-type

    Jika Anda menyetel parameter Tipe ke x-delayed-message, Anda harus mengonfigurasi parameter ini untuk menentukan aturan routing untuk exchange.

    Hash value

    Jika Anda menyetel parameter Tipe ke x-consistent-hash, Anda harus mengonfigurasi parameter ini untuk menentukan jenis nilai input untuk perhitungan hash. Nilai valid:

    • RoutingKey

    • Header Value: Jika Anda menggunakan header sebagai nilai input untuk perhitungan hash, Anda harus menentukan nilai untuk parameter hash-header.

    hash-header

    Jika Anda menyetel parameter Tipe ke x-consistent-hash dan parameter Hash value ke Header Value, Anda harus mengonfigurasi parameter ini sebagai nilai input untuk perhitungan hash.

    Internal

    Menentukan apakah exchange merupakan exchange internal. Nilai default: No. Nilai valid:

    • Yes: Exchange adalah exchange internal dan terikat ke exchange lain.

    • No: Exchange bukan exchange internal dan terikat ke antrian.

3. Buat antrian

Dalam ApsaraMQ for RabbitMQ, antrian adalah antrian pesan. Semua pesan dari ApsaraMQ for RabbitMQ dikirim ke satu atau lebih antrian.

  1. Di panel navigasi kiri halaman Detail Instance, klik Queues.

  2. Pada halaman Queues, klik panah drop-down di sebelah vhost. Dari daftar drop-down Change, pilih vhost tempat Anda ingin membuat antrian. Lalu, klik Create Queue.

  3. Di panel Create Queue, masukkan nama antrian di bidang Queue Name dan konfigurasikan parameter Auto Delete. Klik Advanced Settings dan konfigurasikan parameter antrian yang ditampilkan. Lalu, klik OK.

    Tabel 1. Parameter

    Parameter

    Deskripsi

    Catatan Penggunaan

    Queue Name

    Nama antrian.

    • Nama dapat berisi huruf, angka, tanda hubung (-), garis bawah (_), titik (.), tanda pagar (#), garis miring (/), dan simbol @.

    • Nama harus terdiri dari 1 hingga 255 karakter.

    • Setelah antrian dibuat, Anda tidak dapat mengubah namanya. Jika Anda ingin mengubah nama antrian, hapus antrian dan buat antrian lain.

    • amq. adalah bidang yang dicadangkan dan tidak dapat digunakan sebagai awalan nama exchange. Misalnya, Anda tidak dapat menggunakan amq.test sebagai nama exchange.

    Auto Delete

    Menentukan apakah antrian dihapus secara otomatis setelah langganan terakhir dari konsumen ke antrian dibatalkan.

    • true: Antrian dihapus secara otomatis setelah langganan terakhir dari konsumen ke antrian ini dibatalkan.

    • false: Antrian tidak dihapus secara otomatis setelah langganan terakhir dari konsumen ke antrian ini dibatalkan.

    Advanced Settings

    Parameter lain untuk antrian, seperti exchange surat mati, kunci routing surat mati, dan TTL pesan.

    • DeadLetterExchange: exchange tempat pesan surat mati dikirim.

    • DeadLetterRoutingKey: kunci routing pesan surat mati. Exchange surat mati mengirim pesan surat mati ke antrian yang kunci routingnya cocok dengan kunci routing pesan surat mati.

    • MessageTTL: TTL pesan, dalam milidetik. Pesan yang tidak dikonsumsi dalam TTL pesan yang ditentukan adalah pesan surat mati dan dikirim ke exchange surat mati. Untuk informasi lebih lanjut, lihat TTL Pesan.

4. Buat binding

  1. Pada halaman Queues, temukan antrian yang ingin Anda kelola dan klik Details di kolom Actions.

  2. Pada halaman Queue Details, klik tab Bound as Destination. Lalu, klik Add Binding.

  3. Di panel Add Binding, konfigurasikan parameter Source Exchange dan Routing Key. Lalu, klik Confirm.

    Catatan

    Jika exchange yang terikat adalah tipe x-consistent-hash, kunci routing menunjukkan bobot antrian. Nilai bobot harus berupa bilangan bulat yang berkisar antara 1 hingga 20.

Apa yang harus dilakukan selanjutnya

Langkah 3: Gunakan SDK untuk Mengirim dan Menerima Pesan

Referensi

Anda juga dapat membuat sumber daya ApsaraMQ for RabbitMQ dengan memanggil operasi API berikut: