RabbitMQ v3_6_6_rc1 發布,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#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
-
Mirroring policies now respect the
nodes
parameter when re-electing a master.GitHub issue:
-
After a partial network partitions, nodes with newly elected masters will now be more defensive
about the (no longer relevant) policy change notifications.GitHub issue: rabbitmq-server#1007
-
Late responses from peers in certain partial network partition scenarios are now
ignored by channels.GitHub issue: rabbitmq-server#1005
-
After a partial network partitions, nodes with newly elected masters will now be more defensive
about the (no longer relevant) synchronization start requests.GitHub issue: rabbitmq-server#1006
-
Network partition triggered late and duplicate acknowledgements are now ignored/filterd out
by queue master processes.GitHub issue: rabbitmq-server#960
-
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
Enhancements
-
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主題Exchange插件
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客戶端
Bug Fixes
-
Fixed a NPE that can occur when a thread attempts to create a new channel after a connection
has been recovered but before channel recovery has completed.GitHub issue: rabbitmq-java-client#197
Contributed by Michael Dent.
-
Binding cache entries of auto-delete queues should be cleaned up when the last consumer is cancelled.
GitHub issue: rabbitmq-java-client#199
Contributed by Michael Dent.
-
When a channel is closed, consumers will be correctly cleaned up from AutorecoveringConnection cache.
GitHub issue: rabbitmq-java-client#208
Enhancements
-
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
聯合插件
Enhancements
-
Federation links now specify a name which makes them easier to tell from other connections
in the management UI (requires RabbitMQ 3.6.3+).GitHub issue: rabbitmq-federation#39
Shovel Plugin
Enhancements
-
Shovel connections now specify a name which makes them easier to tell from other connections
in the management UI (requires RabbitMQ 3.6.3+).GitHub issue: rabbitmq-shovel#19
下載
- amqp-client-3.6.6-SNAPSHOT.jar
- amqp-client-3.6.6-SNAPSHOT.jar.asc
- amqp_client-3.6.5.906.ez
- amqp_client-3.6.5.906.ez.asc
- rabbitmq-dotnet-client-3.6.5.906-dotnet-4.5.zip
- rabbitmq-dotnet-client-3.6.5.906-dotnet-4.5.zip.asc
- rabbitmq-server-3.6.5.906-1.el6.noarch.rpm
- rabbitmq-server-3.6.5.906-1.el6.noarch.rpm.asc
- rabbitmq-server-3.6.5.906-1.el6.src.rpm
- rabbitmq-server-3.6.5.906-1.el6.src.rpm.asc
- rabbitmq-server-3.6.5.906-1.el7.noarch.rpm
- rabbitmq-server-3.6.5.906-1.el7.noarch.rpm.asc
- rabbitmq-server-3.6.5.906-1.el7.src.rpm
- rabbitmq-server-3.6.5.906-1.el7.src.rpm.asc
- rabbitmq-server-3.6.5.906-1.suse.noarch.rpm
- rabbitmq-server-3.6.5.906-1.suse.noarch.rpm.asc
- rabbitmq-server-3.6.5.906-1.suse.src.rpm
- rabbitmq-server-3.6.5.906-1.suse.src.rpm.asc
- rabbitmq-server-3.6.5.906.exe
- rabbitmq-server-3.6.5.906.exe.asc
- rabbitmq-server-3.6.5.906.tar.xz
- rabbitmq-server-3.6.5.906.tar.xz.asc
- rabbitmq-server-3.6.5.906.zip
- rabbitmq-server-3.6.5.906.zip.asc
- rabbitmq-server-generic-unix-3.6.5.906.tar.xz
- rabbitmq-server-generic-unix-3.6.5.906.tar.xz.asc
- rabbitmq-server-mac-standalone-3.6.5.906.tar.xz
- rabbitmq-server-mac-standalone-3.6.5.906.tar.xz.asc
- rabbitmq-server-windows-3.6.5.906.zip
- rabbitmq-server-windows-3.6.5.906.zip.asc
- rabbitmq-server_3.6.5.906-1.debian.tar.gz
- rabbitmq-server_3.6.5.906-1.debian.tar.gz.asc
- rabbitmq-server_3.6.5.906-1.dsc
- rabbitmq-server_3.6.5.906-1.dsc.asc
- rabbitmq-server_3.6.5.906-1_all.deb
- rabbitmq-server_3.6.5.906-1_all.deb.asc
- rabbitmq-server_3.6.5.906-1_i386.changes
- rabbitmq-server_3.6.5.906-1_i386.changes.asc
- rabbitmq-server_3.6.5.906.orig.tar.xz
- rabbitmq-server_3.6.5.906.orig.tar.xz.asc
- rabbit_common-3.6.5.906.ez
- rabbit_common-3.6.5.906.ez.asc
- Source code (zip)
- Source code (tar.gz)
本站原創,轉載時保留以下信息:
本文轉自:深度開源(open-open.com)
原文地址:http://www.baiduhome.net/news/view/5c954644