The design of your RabbitMQ setup depends on how you configure its application objects (nodes, queues, exchanges…). You might use work queues, a publish/subscribe pattern, or a Remote Procedure Call (as seen in OpenStack Nova), just to name examples from the official tutorial. While RabbitMQ defines the basic behaviors of topics and exchanges, how they relate is up to the needs of your application. Which queue an exchange delivers to depends on the type of the exchange. There can be multiple exchanges per queue, multiple queues per exchange, or a one-to-one mapping of queues and exchanges. This separation lets you specify the logic of routing messages. You’ll notice that a message going from a producer to a consumer moves through two intermediary points, an exchange and a queue. Queues wait for a consumer to be available, then deliver the message. When your application publishes a message, it publishes to an exchange. RabbitMQ passes messages through abstractions within the server called exchanges and queues. RabbitMQ clients are available in a range of languages, letting you implement messaging in most applications. A producer is anything that publishes a message, which RabbitMQ then routes to another part of your application: the consumer. The parts of your application that join up with the RabbitMQ server are called producers and consumers. It is up to your application to parse the headers and use this information to interpret the payload. Messages feature a set of headers and a binary payload. While RabbitMQ supports a number of protocols, it implements AMQP (Advanced Message Queuing Protocol) and extends some of its concepts.Īt the heart of RabbitMQ is the message. Connections to RabbitMQ take place through TCP, making RabbitMQ suitable for a distributed setup. A RabbitMQ server can include one or more nodes, and a cluster of nodes can operate across one machine or several. RabbitMQ runs as an Erlang runtime, called a node.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |