Table of Contents
Overview
== Open Source Message Broker Software (a service that handles the distribution of messages)
– released in 2013
– implements Advanced Message Queuing Protocol (AMQP)
– meanwhile also STOMP and MQTT
Advanced Message Queuing Protocol (AMQP)
== binary network protocol
– independent of any programming language (sender and receiver do not have to understand the same programming language)



Principle
– There is a queue between the producer and the consumer of a message. The messages are temporarily stored in this queue
– Messages == can be instructions to other programs or actual text messages
– The producer of the message does not have to take care of sending the message himself and does not have to wait until the recipient has received it
→ asynchronous procedure
Stations in the message transmission
– Producer: creates news
– Exchange: part of RabbitMQ, forwards messages
– Queue: part of RabbitMQ, stores messages
– Consumer: processes the message
Message transmission process
– Producer publishes a message; gives the message a routing key (==address)
→ passes it to the Exchange
→ distributes the messages to different queues using the routing key
Binding
– There is a so-called binding between Exchange and Queue
– this connects each individual queue to the Exchange
– defines, according to which criteria a message should be forwarded
Direct Exchange
== direct connection between transmitter and receiver
– one queue + one consumer
Topic Exchange
– addressing multiple queues
Fanout Exchange
== Broadcast (distribution of a message to all available queues, without sorting)
Header Exchange
– corresponds to the Topic Exchange
– but browsing is done via header attributes
Leave a Reply