RabbitMQ 3.7.9 发布,Erlang 的 AMQP 开源实现

RabbitMQ 3.7.9 已发布,这是一个维护版本,主要聚焦于修复 bug 和可用性改进。


此版本与早期的 3.7.x 没有已知的不兼容性。

升级至 Erlang 21.0

升级该版本会同时将  Erlang 更新至 21.0 版本。


Core Server

Bug Fixes


CLI Tools

Bug Fixes

  • rabbitmqctl list_* commands did not include table column headers.

    GitHub issue: rabbitmq/rabbitmq-cli#264

  • If RABBITMQ_NODENAME is configured, CLI tools will use its hostname part when generating its own

    Erlang node name.

    GitHub issue: rabbitmq/rabbitmq-cli#270

  • On Windows CLI tool batch scripts exited with a 0 exit code when it failed to connect to the node.

    Contributed by Artem Zinenko.

    GitHub issue: rabbitmq/rabbitmq-server#1735 .


Management and Management Agent Plugins

Bug Fixes


  • It is now possible to configure both HTTPS and HTTP listeners using new syntax that's consistent with

    Web STOMP and Web MQTT plugins:

    management.tcp.port = 15672
    management.ssl.port = 15671
    management.ssl.cacertfile = /path/to/cacert.pem
    management.ssl.certfile = /path/to/cert.pem
    management.ssl.keyfile = /path/to/key.pem

    GitHub issue: rabbitmq/rabbitmq-management#563

  • GET /api/nodes/{node} endpoint aggregated data for other cluster nodes only to discard it later.

    GitHub issue: rabbitmq/rabbitmq-management#615

  • When Handle.exe is used and returns no file handle information in its output, a warning will be logged.

    GitHub issue: rabbitmq/rabbitmq-management-agent#67

LDAP Plugin


Web STOMP Plugin


Web MQTT Plugin

Bug Fixes

  • WebSocket PING frames are now ignored instead of being propagated to MQTT frame handler.

GitHub issue: rabbitmq/rabbitmq-web-mqtt#32


  • Advanced WebSocket options now can be configured. Compression is enabled by default.

    Compression won't be used with clients that do not support it.

    GitHub issues: rabbitmq/rabbitmq-web-mqtt#34

AWS Peer Discovery Plugin

Bug Fixes

Consul Peer Discovery Plugin

Bug Fixes

  • It wasn't possible to specify Consul service tags via new style config format.

GitHub issue: rabbitmq/rabbitmq-peer-discovery-consul#18

  • It wasn't possible to configure lock key prefix via new style config format.

GitHub issues: rabbitmq/rabbitmq-peer-discovery-consul#16


  • Lock acquisition timeout now can be configured using cluster_formation.consul.lock_timeout as well as  cluster_formation.consul.lock_wait_time (an alias),

    to be consistent with the Etcd implementation.

    GitHub issue: rabbitmq/rabbitmq-peer-discovery-consul#20

Etcd Peer Discovery Plugin


  • Lock acquisition timeout now can be configured using cluster_formation.etcd.lock_timeout as well as  cluster_formation.etcd.lock_wait_time (an alias),

    to be consistent with the Consul implementation.

    GitHub issue: rabbitmq/rabbitmq-peer-discovery-etcd#16

Event Exchange Plugin


  • Throughput optimizations reduce probability of high memory consumption by rabbit_event processes due to

    event backlog accumulation.

    GitHub issue: rabbitmq/rabbitmq-server#1722

RPM Package

Bug Fixes

  • Post-installation script renamed rabbitmq.conf to  rabbitmq-env.conf . A long time ago  rabbitmq.conf was used to configure

    environment variables (like  rabbitmq-env.conf today) and old post-installation steps were not removed when  rabbitmq.conf

    was re-adopted for new style config files.

    GitHub issue: rabbitmq/rabbitmq-server-release#87