RabbitMQ 3.5.2 发布,AMQP 消息服务器

jopen 7年前

RabbitMQ 3.5.2 发布,此版本是个 bug 修复版本,主要改进如下:



  • Improve integration with Docker (rabbitmq/rabbitmq-server#113). Problems which were previously worked around in the official Docker image, were fixed in RabbitMQ. In particular:

  • Report a queue is under flow control only if it was in this situation in the last 1 second, instead of the last 5 seconds previously (rabbitmq/rabbitmq-server#138).

  • Add a check to ensure the Mnesia directory is not shared with the PID file location or the plugin expansion directory (rabbitmq/rabbitmq-server#120). This should help users facing non-working automatic clustering.

Bug 修复

  • Ensure the file handle cache remains under the memory high watermark when syncing a mirrored queue (since 2.0.0, rabbitmq/rabbitmq-server#134).

  • Restore support for messages stored on disk with the previous x-death header format (since 3.5.1, rabbitmq/rabbitmq-server#152).

  • Ensure passwords containing $ characters are properly escaped so they are not interpreted by the shell, when a password is changed using rabbitmqctl change_password (since 1.5.2, rabbitmq/rabbitmq-server#66).



RabbitMQ 是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成,因此也是继承了这些优点。

AMQP 里主要要说两个组件:Exchange 和 Queue (在 AMQP 1.0 里还会有变动),如下图所示,绿色的 X 就是 Exchange ,红色的是 Queue ,这两者都在 Server 端,又称作 Broker ,这部分是 RabbitMQ 实现的,而蓝色的则是客户端,通常有 Producer 和 Consumer 两种类型:

RabbitMQ 3.5.2 发布,AMQP 消息服务器