Mode Kerja Java RabbitMQ adalah dengan mengonfigurasi beberapa konsumen untuk mengonsumsi pesan dari satu antrian, yang dapat meningkatkan kecepatan pemrosesan simultan pesan. Arsitekturnya seperti ditunjukkan pada diagram berikut.
Catatan: Terlepas dari mode kerja yang digunakan dalam RabbitMQ, setiap antrian mendukung beberapa konsumen. Untuk antrian yang sama, pesan hanya akan diproses oleh salah satu konsumen.
1. Panduan Awal
Silakan baca bagian-bagian berikut terlebih dahulu untuk memahami pengetahuan terkait.
- Konsep Dasar RabbitMQ
- Mode Kerja RabbitMQ
- Pemula RabbitMQ untuk Java (Wajib, karena bagian-bagian selanjutnya tidak akan mengulang kode tetapi hanya menampilkan kode kunci)
2. Mengonfigurasi Beberapa Konsumen
Dengan menggunakan anotasi RabbitListener dan mengonfigurasi parameter concurrency, Anda dapat memulai 10 konsumen untuk memproses pesan secara simultan dengan kode berikut.
package com.tizi365.rabbitmq.listener;
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
// Mendeklarasikan pemantaun pesan dan menentukan antrian untuk didengarkan melalui parameter antrian
// Parameter kunci: concurrency mewakili jumlah konsumen yang perlu dimulai untuk pemantau saat ini, dan tipe data nya adalah string
@RabbitListener(queues = "hello", concurrency = "10")
public class HelloListener {
// Menggunakan RabbitHandler untuk menandai penangan pesan, yang digunakan untuk menjalankan logika pemrosesan pesan
@RabbitHandler
public void receive(String msg) {
System.out.println("Konsumen - Menerima pesan '" + msg + "'");
}
}