ApsaraMQ for RabbitMQ is a messaging service that is developed based on highly available distributed storage. This service supports the AMQP 0-9-1 protocol. ApsaraMQ for RabbitMQ is compatible with open source RabbitMQ clients. This service prevents various issues, such as message accumulation and split-brain, that occur in open source RabbitMQ and decrease the stability of your business. This service also provides common benefits of cloud messaging services, such as high concurrency, a distributed architecture, and auto scaling.

Key terms

The following terms are used in ApsaraMQ for RabbitMQ:
  • Producer: an application that sends messages.
  • Consumer: an application that receives messages.
  • Exchange: a component that routes messages to queues.
  • Queue: a buffer in which messages are stored.

For more information about the terms in ApsaraMQ for RabbitMQ, see Terms.

Message routing in ApsaraMQ for RabbitMQ

In ApsaraMQ for RabbitMQ, messages are routed in the following procedure:

  1. A producer sends a message to an exchange.
  2. The exchange routes the message to a queue for storage based on the attributes of the message.
  3. A consumer pulls the message from the queue for consumption.
dg_msg_flow

Comparison between ApsaraMQ for RabbitMQ and open source RabbitMQ

Compared with open source RabbitMQ, ApsaraMQ for RabbitMQ provides better performance, higher stability, and enhanced features. For more information about the comparison between ApsaraMQ for RabbitMQ and open source RabbitMQ, see Comparison between ApsaraMQ for RabbitMQ and open source RabbitMQ.

Benefits

Compared with open source RabbitMQ, ApsaraMQ for RabbitMQ is more flexible, easy to use, secure, and reliable, and provides enhanced features and higher performance. For more information, see Benefits.

Features

ApsaraMQ for RabbitMQ is compatible with open source RabbitMQ, provides a comprehensive set of O&M tools, and supports multiple message types. For more information, see Features.

Scenarios

ApsaraMQ for RabbitMQ is widely used for message-based communication in various industries, such as finance, insurance, public service sectors, e-commerce, new retail, logistics, interactive videos, and energy. ApsaraMQ for RabbitMQ also supports asynchronous communication for application decoupling, load shifting, and distributed cache synchronization. For more information, see Scenarios.

Limits

ApsaraMQ for RabbitMQ imposes limits on clusters, calls to interfaces, and characters that are used to name resources. When you use ApsaraMQ for RabbitMQ, make sure that all requirements are met. Otherwise, exceptions can occur. For more information, see Limits.