Exchange-Direct

498

Gönderdiğimiz mesajın belli bir queueya gitmesini istiyorsak direct modeli kullanırız. Modeli kullanabilmek için exchange tanımını yaparken, exhange tipini direct olarak belirtir, queueya bağlanırken de routing_key bilgisini veririz. (Exhange kavramları için Exchange-Fanout yazımıza bakabilirsiniz.)

Bu bilgiler ile, exchange mesajları ilgili queue’lara gönderir, consumer’lar da sadece ilgilendikleri mesajları alırlar.

Önceki makalelerimizde olduğu gibi bir örnek yapalım. Producer ve Consumer uygulamaları yapacağız. Routing_key değerlerimiz yüksek ve düşük olsun. Bunlar queue’ya konan mesajların öncelik sırasını belirlesin.

Producer:

1* Eclipse ile bir java projesi oluşturalım.
2* Projemizi maven uyumlu hale getirelim.
3* pom.xml dosyamız aşağıdaki gibi olacak.

4* SenderStarter.java sınıfını geliştirelim.

SenderStarter.java

X,Y ve Z mesajlarımız mevcut. X ve Z mesajlarımızı HIGH, Y mesajımızı ise LOW routing_key ile göndereceğiz.

Consumer:
1* Eclipse ile bir java projesi oluşturalım.
2* Projemizi maven uyumlu hale getirelim.
3* pom.xml dosyamız aşağıdaki gibi olacak.

4* ReceiverStarter.java sınıfını geliştirelim.

ReceiverStarter.java

Consumer uygulamamıza çalıştırırken binding_key değerini parametre olarak geçeceğiz. Şimdi uygulamalarımızın jarlarını oluşturalım ve önceden de yaptığımız gibi ilk önce iki Consumer uygulamalarını bir Producer uygulamasını çalıştıralım.

Program çıktıları sırası ile aşağıdaki gibi olacaktır.

İnşallah faydalı bir yazı olmuştur.

İyi Çalışmalar

ÖrnekProje

Yorum yaz

Email adresiniz yayınlanmayacaktır.