All Products
Search
Document Center

ApsaraMQ for RabbitMQ:Queues

Last Updated:Jul 10, 2026

Antrian menyimpan pesan secara sementara hingga dikonsumsi oleh konsumen. Anda dapat membuat, memantau, mengikat (bind), dan menghapus antrian melalui konsol ApsaraMQ for RabbitMQ.

Prasyarat

Pastikan Anda telah memiliki:

  • Instans ApsaraMQ for RabbitMQ

  • vhost pada instans tempat Anda ingin membuat antrian

  • (Opsional) Untuk Pengguna RAM: Pemberian izin (opsional).

Buat antrian

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

  2. Di bilah navigasi atas, pilih wilayah instans Anda, lalu klik nama instans tersebut.

  3. Di panel navigasi kiri, klik Queues.

  4. Pada halaman Queues, klik Change di samping vhost, lalu pilih vhost tempat antrian akan dibuat. Setelah itu, klik Create Queue.

  5. Pada panel Create Queue, konfigurasikan parameter berikut, lalu klik OK.

    Parameter

    Deskripsi

    Queue Name

    Nama antrian. Aturan penamaan:

    1. 1. The queue name supports only letters, digits, hyphens (-), underscores (_), periods (.), pound signs (#), slashes (/), at signs (@), colons (:), commas (,), spaces ( ), and greater-than signs (>). Length: 1–255 characters.

    2. 2. After a queue is created, you cannot modify its name. If you want to modify its name, delete the queue and re-create it.

    3. amq. adalah awalan yang dicadangkan dan tidak dapat digunakan.

    Auto Delete

    Menghapus antrian setelah konsumen terakhir berhenti berlangganan. Yes: diaktifkan. No: dinonaktifkan.

    Retry Policy

    Parameter retry opsional.

    Dead-letter Policy

    Parameter dead-letter opsional. Klik untuk memperluas.

Retry policy

Parameter

Deskripsi

Inherit Instance Configurations

Apakah akan menggunakan kebijakan retry tingkat instans.

Maximum Number of Deliveries

Jumlah maksimum upaya pengiriman pesan.

Consumption Timeout Period

Waktu maksimum bagi konsumen untuk memproses pesan.

Dead-letter policy

Parameter

Deskripsi

DeadLetterExchange

Exchange yang menerima pesan dead-letter.

DeadLetterRoutingKey

Routing key yang digunakan untuk mengarahkan pesan dead-letter ke antrian tujuan.

MessageTTL

Time-to-live dalam milidetik. Pesan yang tidak dikonsumsi akan menjadi dead letter setelah periode ini dan diarahkan ke dead-letter exchange. Message TTL.

FAQ

T: Dapatkah saya menentukan client mana yang mengonsumsi pesan?

Tidak. ApsaraMQ for RabbitMQ tidak mendukung penentuan client konsumen tertentu. Distribusi pesan mengikuti mekanisme dispatching standar RabbitMQ berbasis round-robin atau prioritas.

T: Bagaimana cara membuat antrian sekuensial (x-single-active-consumer) melalui kode?

Konsol ApsaraMQ for RabbitMQ tidak mendukung konfigurasi parameter x-single-active-consumer. Untuk membuat antrian sekuensial, gunakan SDK. Panggil metode channel.queueDeclare dan atur "x-single-active-consumer": true pada parameter arguments.

Contoh:

Map<String, Object> arguments = new HashMap<>();
arguments.put("x-single-active-consumer", true);
channel.queueDeclare("my-queue", true, false, false, arguments);

T: Mengapa pembuatan antrian otomatis gagal (Failed to declare queue)?

ApsaraMQ for RabbitMQ tidak mendukung pembuatan antrian secara otomatis. Sebelum mendeklarasikan antrian dalam kode Anda, Anda harus membuatnya secara manual di konsol atau dengan memanggil API.

Jumlah antrian maksimum

Jika kuota instans telah mencapai batas:

  • Untuk instans Enterprise, Professional, dan Platinum Edition, klik Upgrade untuk melakukan peningkatan.

  • Untuk instans (Shared) Pay-by-Messaging-Request, (Shared) Pay-by-Provisioned-Capacity-and-Elastic-Traffic, dan (Exclusive) Pay-by-Provisioned-Capacity-and-Elastic-Traffic, klik Change Quota untuk menyesuaikan batas jumlah Antrian.

Untuk batas jumlah berbagai jenis instans, lihat Queues per instance di bawah Cluster limits dalam Limits.

Lihat statistik antrian

Metrik bervariasi berdasarkan edisi instans.

  1. Pada halaman Queues, temukan antrian target dan klik Details di kolom Actions.

  2. Pada halaman Queue Details, klik tab Dashboard.

    Instance Edition

    Sumber pemantauan

    Referensi

    Enterprise Edition, Enterprise Platinum Edition

    Managed Service for Prometheus dan Managed Service for Grafana

    Dashboard

    Standard Edition, Professional Edition

    Cloud Monitor

    Monitoring

Catatan

Standard Edition tidak lagi tersedia untuk pembelian. Instans yang sudah ada masih dapat digunakan.

Bind exchange ke antrian

  1. Pada halaman Queues, temukan antrian target dan klik Details di kolom Actions.

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

  3. Pada panel Add Binding, konfigurasikan Source Exchange dan Routing Key, lalu klik OK.

Catatan

Untuk exchange x-consistent-hash, routing key menentukan bobot antrian (bilangan bulat dari 1 hingga 20).

Kirim pesan ke antrian

Kirim pesan ke antrian dari exchange yang telah di-bind.

  1. Pada halaman Queues, temukan antrian target dan klik Details di kolom Actions.

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

  3. Dalam daftar binding, temukan binding target dan klik Send Message di kolom Actions.

  4. Pada panel Send Message, pilih opsi mandatory, masukkan Message ID dan Message Body, lalu klik OK.

Catatan

Saat mengirim pesan menggunakan default exchange (dengan nama exchange kosong), routing key harus persis sesuai dengan nama antrian yang ada. Akun klien juga harus memiliki izin write pada antrian target. Jika antrian tidak ada atau izin tidak mencukupi, pesan akan diam-diam dibuang tanpa catatan pengiriman di konsol. Sebelum mengirim pesan, pastikan antrian telah dideklarasikan dengan benar dan akun klien memiliki izin write yang diperlukan.

Lihat consumer tags

Consumer tag secara unik mengidentifikasi client konsumen. Broker akan menghasilkan tag tersebut secara otomatis jika client tidak menentukannya sendiri. Disarankan untuk menggunakan tag yang dihasilkan secara otomatis daripada tag kustom.

Penting

Setiap consumer tag harus unik untuk satu client saja. SDK melacak konsumen pada suatu koneksi menggunakan Map<String, Consumer> yang diindeks berdasarkan consumer tag. Jika konsumen pada koneksi yang sama menggunakan tag yang sama, hanya satu yang dilanjutkan setelah reconnect otomatis. Yang lainnya tidak dipulihkan.

Untuk melihat consumer tags, client konsumen harus terhubung ke broker. Pada halaman Queues, temukan antrian target dan klik Consumer Tags di kolom Actions.

Bersihkan antrian

Pada halaman Queues, temukan antrian target dan pilih More > Clear Messages di kolom Actions.

Hapus antrian

Peringatan

Menghapus antrian akan menghapus permanen semua pesan yang belum dikonsumsi. Tindakan ini tidak dapat dibatalkan.

  1. Pada halaman Queues, hapus antrian dengan salah satu metode berikut:

    • Antrian tunggal: Temukan antrian tersebut dan pilih More > Delete di kolom Actions. Alternatifnya, klik nama antrian atau klik Details, lalu klik Delete di pojok kanan atas halaman Queue Details.

    • Beberapa antrian: Pilih antrian-antrian tersebut dan klik Batch Delete di bawah daftar antrian.

  2. Konfirmasi penghapusan.