RabbitMQ 3.6.6 Milestone 5 發布,AMQP消息服務器
RabbitMQ是實現AMQP(高級消息隊列協議)的消息中間件的一種,最初起源于金融系統,用于在分布式系統中存儲轉發消息,在易用性、擴展性、高可用性等方面表現不俗。消息中間件主要用于組件之間的解耦,消息的發送者無需知道消息使用者的存在,反之亦然。
AMQP 里主要要說兩個組件:Exchange 和 Queue (在 AMQP 1.0 里還會有變動),如下圖所示,綠色的 X 就是 Exchange ,紅色的是 Queue ,這兩者都在 Server 端,又稱作 Broker ,這部分是 RabbitMQ 實現的,而藍色的則是客戶端,通常有 Producer 和 Consumer 兩種類型。
更新日志
Bug 修復
- Changing queue mode to
lazy
could block queue process in certain circumstances. - GitHub issue: rabbitmq-server#850
- Mirroring implementation didn't handle certain internal protocol messages arriving out of order.
- GitHub issue: rabbitmq-server#922
- Mirror set changes weren't handled gracefully in certain circumstances (e.g. in the middle of a mirror promotion).
- GitHub issue: rabbitmq-server#914
- Mirrored queue could terminate after promotion if HA policy was reapplied during sync
- GitHub issue: rabbitmq-server#803
- Autoheal partition handling mode could run into a multi-node deadlock
- GitHub issue: rabbitmq-server/issues/928
- Queue mirror group membership now correctly handles certain partial partition cases.
- GitHub issues: rabbitmq-server#950,
- rabbitmq-server#953
- Eager queue sync will now stop as soon as a mirror shutdown/unavailability is detected.
- GitHub issue: rabbitmq-server#975
- Lazy queues now trigger runtime GC significantly less frequently, making moving data to the message store more efficient.
- GitHub issue: rabbitmq-server#973
rabbitmqctl
and server startup could be affected by some DNS configurations.- GitHub issue: rabbitmq-server#890
- RPM package was split into two: for CentOS 6 and 7. The latter includes systemd support.
- GitHub issue: rabbitmq-server#932
- Workaround for Erlang/OTP bug OTP-13425 where crash dump generation failed on UNIX platforms.
- GitHub issue: rabbitmq-server#956
增強功能
- Inter-node traffic buffer increased to 32 MB by default, configurable with
RABBITMQ_DISTRIBUTION_BUFFER_SIZE
(in kilobytes). - This improves network bandwidth utilization for inter-node traffic and reduces the probability of spurious network partitions due to latency spikes caused by the buffer being full.
- GitHub issue: rabbitmq-server#908
- Default flow control settings were increased to
{200, 100}
. This helps with consumer throughput in some cases. The value still can be configured using therabbit.credit_flow_default_credit
setting. - GitHub issue: rabbitmq-server#949
-
rabbitmqctl list_queues
now has more filtering options.GitHub issue: rabbitmq-server#851
RABBITMQ_IGNORE_SIGINT
is a new environment variable that lets the user disable the+B
VM flag that is known to have issues in Erlang 18.x series (prevents crash dumps from being produced).- GitHub issue: rabbitmq-server#956
- The
pg2_fixed
module is now replaced by the standardpg2
from a newer Erlang/OTP release. - GitHub issue: rabbitmq-server#980
MQTT插件
Bug 修復
- Authentication with correct username but omitted password succeeded when TLS/x509 certificate wasn't provided by the client.
- GitHub issue: rabbitmq-mqtt#96
JMS Topic Exchange Plugin
Bug Fixes
-
The plugin no longer tries to check if JMS client's version is identical/compatible.
This prevented certain legitimate use cases, such as exchange declaration over HTTP API, to fail.GitHub issue: rabbitmq-jms-topic-exchange#9
Java客戶端
增強功能
com.rabbitmq.client.AddressResolver
is a new interface that can be used to "expand" endpoints into groups of IP addresses, e.g. to a list of IP addresses resolved from a DNS record.- GitHub issue: rabbitmq-java-client#153
-
Building on the new
AddressResolver
interface, the client now includes a resolver that uses DNS SVR records to discover endpoints.GitHub issue: rabbitmq-java-client#104
-
com.rabbitmq.client.BuiltinExchangeType
is an enum that contains built-in exchange types.GitHub issue: rabbitmq-java-client#150
下載
- amqp-client-3.6.6-SNAPSHOT.jar
- amqp_client-3.6.5.905.ez
- rabbitmq-dotnet-client-3.6.5.905-dotnet-4.5.zip
- rabbitmq-server-3.6.5.905-1.el6.noarch.rpm
- rabbitmq-server-3.6.5.905-1.el6.src.rpm
- rabbitmq-server-3.6.5.905-1.el7.noarch.rpm
- rabbitmq-server-3.6.5.905-1.el7.src.rpm
- rabbitmq-server-3.6.5.905-1.suse.noarch.rpm
- rabbitmq-server-3.6.5.905-1.suse.src.rpm
- rabbitmq-server-3.6.5.905.exe
- rabbitmq-server-3.6.5.905.tar.xz
- rabbitmq-server-3.6.5.905.zip
- rabbitmq-server-generic-unix-3.6.5.905.tar.xz
- rabbitmq-server-mac-standalone-3.6.5.905.tar.xz
- rabbitmq-server-windows-3.6.5.905.zip
- rabbitmq-server_3.6.5.905-1.debian.tar.gz
- rabbitmq-server_3.6.5.905-1.dsc
- rabbitmq-server_3.6.5.905-1_all.deb
- rabbitmq-server_3.6.5.905-1_i386.changes
- rabbitmq-server_3.6.5.905.orig.tar.xz
- rabbit_common-3.6.5.905.ez
- Source code (zip)
- Source code (tar.gz)
本站原創,轉載時保留以下信息:
本文轉自:深度開源(open-open.com)
原文地址:http://www.baiduhome.net/news/view/28017ba4