oke Kali ini saya akan membagi pengalaman belajar saat mencoba menggunakan Spring boot dengan rabbitMQ, Sebelum memulainya kita berkenalan dulu dengan rabbitMQ.
Apa ituRabbitMQ?
- RabbitMQ adalah Software antrian yang digunakan untuk pengiriman pesan. (produce/consumer).
- Pengiriman pesan dari produce ke consumer menggunakan konsep queue.(antrian)
- RabbitMQ juga menggunakan AMQP untuk transportasi data.
nah itu tadi pengenalan tentang rabbitMQ, dan rabbitMQ juga disebut Message Broker, makin bingung ya, hmmm jadi disini di uraikan apa itu message broker :
-Message Broker dapat bertindak sebagai perantara untuk berbagai layanan misalnya aplikasi web mengirim
data ke server dan dapat digunakan
untuk mengurangi beban dan waktu pengiriman.
-Message
Broker diibaratkan sebagai kantor pos sekaligus tukang pos.
-Flownya
adalah pesan yang di kirim
oleh producer diterima oleh message
broker untuk kemudian disimpan di dalam queue dan pesan tersebut akan di
forward satu-satu kepada receiver.
jadi rabbitMQ adalah software message broker dengan berkonsep queue dalam menampung pesan.
so, kita bahas Queue :
so, kita bahas Queue :
-Queue adalah antrian
-Queue bersifat FIFO (first in first
out)
-Elemen yang pertama
masuk
ke antrian
(queue)
akan keluar
pertama
kalinya.
Dibawah ini adalah flow Queu :
nah jadi kita semakin mengenal ya software rabbitMQ, kapan kita menggunakannya?
- ketika mendistribusikan pesan ke banyak penerima untuk di konsum
- untuk menyeimbangkan beban saat pengiriman.
- pengiriman pesan dari satu aplikasi ke aplikasi
lainnya
- untuk memberikan notifikasi, ketika terjadi error
atau maintenance di sebuah aplikasi dengan
memberitahu kepada user.
- jika tedapat perhitungan yg rumit yang membutuhkan
waktu dalam memprosesnya maka data bisa
langsung masuk ke dalam antrian untuk
di proses.
gambar di atas adalah arsitektur rabbitMq
pertama buat project Spring boot dan tambahkan dependencynya
dan skrng kita buat Controllernya.
bisa kita lihat disini controller di project yang kita buat sebagai aplikasi untuk mempublish pesan kemudian kita inject Publisher
dan jangan lupa kita tambahkan di file application.properties bisa di lihat di gambar di bawah ini
nah Skrng setelah kita bisa membuat aplikasi projject publishernya skrng kita buat project lagi sebagai aplikasi consumer
masih sama dengan langkah langkah saat membuat aplikasi publisher, hanya saja untuk project consumer dapat kita lihat pada gambar di bawah ini :
dan untuk application.propertiesnya dapat di lihat pada gambar sebagai berikut:
skrng kita jalan dan kita kirim pesan melalui project yang sudah kita buat sebagai publisher. kemudian kita buka postman untuk mengirim pesan ke consumer
nah pesan berhasil terkirim skrng kita cek log di project publisher kita.
skrng kita cek project consumer apakah pesan berhasil di terima atau tidak.
dapat di lihat log pada project consumer pesan berhasil di terima .
oke, jadi cukup sampai disini tulisan saya kali ini, semoga bermanfaat
No comments:
Post a Comment