Why use AMQP/ZeroMQ/RabbitMQ

what makes them better than writing your own library? When rolling out the first version of your app, probably nothing: your needs are well defined and you will develop a messaging system that will fit your needs: small feature list, small source code etc. Those tools are very useful after the first release, when you … Read more

RabbitMQ vs Socket.io?

Update Are there scenarios I need RabbitMQ for web apps where Socket.io doesn’t suffice? Browser users should be able to communicate with eachother through a node.js server. One of the user writes a message and all other users will get it. When you only have these simple requirements then socket.io alone will be enough.. You … Read more

What are the limits of messages, queues and exchanges?

Theoretically anything can be stored/sent as a message. You actually don’t want to store anything on the queues. The system works most efficiently if the queues are empty most of the time. You can send anything you want to the queue with two preconditions: The thing you are sending can be converted to and from … Read more

JMS and AMQP – RabbitMQ

Your question is a bit messy but Let’s see its bits one by one. General concept: The Java Message Service (JMS) API is a Java Message Oriented Middleware (MOM) API for sending messages between two or more clients. JMS is a part of the Java Platform, Enterprise Edition, and is defined by a specification developed … Read more

RabbitMQ / AMQP: single queue, multiple consumers for same message?

Can I have each consumer receive the same messages? Ie, both consumers get message 1, 2, 3, 4, 5, 6? What is this called in AMQP/RabbitMQ speak? How is it normally configured? No, not if the consumers are on the same queue. From RabbitMQ’s AMQP Concepts guide: it is important to understand that, in AMQP … Read more

RabbitMQ and relationship between channel and connection

A Connection represents a real TCP connection to the message broker, whereas a Channel is a virtual connection (AMQP connection) inside it. This way you can use as many (virtual) connections as you want inside your application without overloading the broker with TCP connections. You can use one Channel for everything. However, if you have … Read more