Arşivler

RabbitMQ Fanout Exchange Java Publisher / Consumer Uygulaması

RabbitMQ Dersleri
RabbitMQ Dersleri

RabbitMQ Dersleri‘ne devam ediyorum.

Önceki derste gördüğümüz Exchange çeşitlerinden Fanout Exhance’ı detaylı olarak ele alacağım.

RabbitMQ Dersleri Fanout Excahnge
RabbitMQ Dersleri Fanout Excahnge

Fanout Exchange kendisine gelen tüm mesajları kendisine bağlı olan tüm consumerlara iletmekle görevlidir.

RabbitMQ’u açalım ve bir Fanout Exchange oluşturalım. Exchange çeşitleri içerisinde oluşturduğumuzdan emin olalım.

RabbitMQ Fanout Exchange Oluşturmak
RabbitMQ Fanout Exchange Oluşturmak

Kuyruklarımızı oluşturalım.

blank
Rabbit MQ Fanout Exchange Queues

Oluşturduğumuz Queues’lerimizi oluşturduğumuz Fanout Exchange’mize bind edeceğiz. Direct Exchange’de yaptığımız gibi routing key vermeyeceğiz.

RabbitMQ Fanout Exchange Binding Queue
RabbitMQ Fanout Exchange Binding Queue

Fanout Exchange uygulaması için Publisher ve Consumer Java uygulaması yapalım.

Publisher uygulamıza geçelim.

 public class FanoutPublisher {
    public static void main(String[] args) throws IOException, TimeoutException {
        ConnectionFactory connectionFactory=new ConnectionFactory();
        Connection connection=connectionFactory.newConnection();
        Channel channel=connection.createChannel();
        
        String message="Tablet and Desktop!";
        
        channel.basicPublish("Fanout-Exchange","", null,message.getBytes() );
        channel.close();
        connection.close();
    }
}Code language: JavaScript (javascript)

RabbitMQ’ye bir mesaj gönderiyoruz ve içerisinde Tablet ve Desktop kelimeleri geçiyor. Programımızı çalıştırdıktan sonra RabbitMQ’ya bakalım.

blank
RabbitMQ’ya Queue

Mesajımız tüm consumerlara gönderilmek üzere Queue’da bekledildiğini görebiliyoruz.

Sonraki yazıda görüşmek üzere

Önceki Ders: Direct Exchange Consumer Uygulaması
RabbitMQ Dersleri
Sonraki Ders: