Publisher dan Consumer

https://www.rabbitmq.com/tutorials/tutorial-one-go.html

Konsep

Konsep publisher (sender) dan sender (receiver) dapat diamati pada gambar berikut. Publisher dan Consumer bisa diasumsikan file.go yang berbeda, sementara blok merah merupakan queue yang merupakan data yang dikirim mengikuti aturan FIFO (first in first out).

Tutorial

  • Buat file misal sender.go di folder sender dan copy code pada link di bawah ini. Data yang dikirim dari sender.go adalah data dengan tipe data byte. Data tersebut bisa dilihat pada variabel body.

  • Buat file misal receiver.go di folder receiver dan copy code pada link berikut

  • Struktur folder dan file yang dibuat bisa seperti di bawah ini.

  • Sebelum data dikirim dari sender, tampilan UI RabbitMQ akan seperti ini

  • Selanjutnya coba jalankan sender.go dengan command berikut.

go run sender/sender.go
  • Grafik pada UI RabbitMQ akan naik menjadi 1, artinya ada 1 queue yang masuk namun belum ada penerima.

  • Selanjutnya jalankan lagi go run sender.sender.go, maka grafiknya akan naik menjadi 2, artinya ada 2 queue yang masuk.

  • Selanjutnya coba jalankan receiver dengan command berikut.

go run receiver/receiver.go
  • Receiver akan menerima semua data queue yang telah dikirim dari sender. Sehingga grafik di UI RabbitMQ akan menurun menjadi 0, artinya pesan sudah di terima oleh receiver.go. Log dari pesan juga akan ditampilkan di terminal.

Last updated