AMQP 消息服务器,RabbitMQ 3.5.7.RC1 发布
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.7.RC1 发布,此版本是 RabbitMQ 3.5.7 的候选版本,也是个 bug 修复版本。
更新内容
服务器
Bug 修复
-
file_handle_cache:clear_read_cache/0
no longer silently fails.The function is mean to be used with
rabbitmqctl eval
in environments where
in-process buffering of file data is enabled.GitHub issue: rabbitmq-server#436
-
Default
RABBITMQ_PLUGINS_DIR
value on Windows should be calculated as relative to RabbitMQ
server installation directory, notRABBITMQ_BASE
.If you override
RABBITMQ_BASE
, you may need to copy plugins from%RABBITMQ_BASE%\plugins
to theplugins
directory under RabbitMQ installation.GitHub issue: rabbitmq-server#433
-
Overriding
RABBITMQ_LOGS
andRABBITMQ_SASL_LOGS
on Windows prevented node from starting.GitHub issue: rabbitmq-server#375
-
Some startup code bits assumed IPv4 is enabled in the environment
GitHub issue: rabbitmq-server#117
-
More robust disk monitor, fewer errors logged.
GitHub issue: rabbitmq-server#91
改进
-
RAM watermark can be configured as an absolute value in bytes (just like with disk space monitoring):
1[{rabbit, [{vm_memory_high_watermark, {absolute,
1073741824
}}]}].
GitHub issue: rabbitmq-server#207
-
rabbitmqctl authenticate_user
is a new command that can be used to test user authentication.GitHub issue: rabbitmq-server#119
-
rabbitmqctl
now supportsexclusive
as a queue info item.Contributed by Alexey Lebedeff (@binarin).
GitHub issue: rabbitmq-server#371
Java 客户端
Bug 修复
-
AutorecoveringChannel#basicCancel
could throw aNullPointerException
.GitHub issue: rabbitmq-java-client#105
.NET 客户端
Bug 修复
-
IConnection.Dispose
could throw an exception.GitHub issue: rabbitmq-dotnet-client#133
MQTT 插件
Bug 修复
-
Auto-deletion of queues that back QoS 1 subscriptions is again controlled
by the clean session flag.GitHub issues: rabbitmq-mqtt#30 (original report which introduced the issue), rabbitmq-mqtt#37 (clarification and fix)
STOMP 插件
改进
-
Queue names now can be set explicitly using the
x-queue-name
header, for all
destination types.GitHub issue: rabbitmq-stomp#43
Management 插件
Bug 修复
-
Management plugin could prevent a node from starting when it recovers after a network split.
GitHub issue: rabbitmq-management#81
-
401 responses correctly set content type to
application/json
GitHub issue: rabbitmq-management#67
-
Consumer utilisation is correctly reported as a number instead of
""
when it equals 0.GitHub issue: rabbitmq-management#26
-
rabbitmqadmin
misinterpreted boolean settings in config as stringsGitHub issue: rabbitmq-management#20
下载:https://github.com/rabbitmq/rabbitmq-server/archive/rabbitmq_v3_5_7_rc1.zip。