RabbitMQ 3.6.1 RC1 发布

jopen 8年前

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

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



RabbitMQ 3.6.1 RC1 发布了,下载地址:

https://github.com/rabbitmq/rabbitmq-server/releases/tag/rabbitmq_v3_6_1_rc1

该版本完整的改进内容如下:

Bug Fixes

  • Purging a lazy queue could result in an exception

    GitHub issue: rabbitmq-server#514

  • Channel error could make broker unreachable

    Those errors were misleadingly logged as channel_termination_timeout, which
    the issue really was with unhandled messages from concurrently closed TCP socket process.

    GitHub issue: rabbitmq-server#530

  • (Automatic) deletion of an auto-delete queue could lead
    to blocked channels

    GitHub issue: rabbitmq-server#581

  • Heavy and/or prolonged rabbitmqctl use could exhaust Erlang VM atom table

    GitHub issue: rabbitmq-server#549

  • "Min masters" queue master location strategy could result
    in an error.

    GitHub issue: rabbitmq-server#521

  • Fixed a race condition in pause_minority handling mode.

    GitHub issue: rabbitmq-server#307

  • Significantly reduce possibility of a race condition when
    an exchange is deleted and immediately re-declared, e.g. by a federation
    link.

    This could result in a link operation being blocked, preventing
    nodes from stopping.

    GitHub issue: rabbitmq-federation#7

  • amq.rabbitmq.log messages now have information about originating
    node in message headers

    GitHub issue: rabbitmq-server#595

  • scripts/rabbitmq-env now works with GNU sed 4.2.2

    GitHub issue: rabbitmq-server#592

  • Exceptions in VM memory use calculator no longer affect broker startup

    GitHub issue: rabbitmq-server#328

  • Direct Reply-to capability is now advertised to clients

    GitHub issue: rabbitmq-server#520

Enhancements

  • Paths with non-ASCII characters on Windows are now handled

    RabbitMQ no can be installed into a location with non-ASCII characters,
    e.g. when username contains them.

    GitHub issues: rabbitmq-server#493

  • Configurable number of TCP connection acceptors

    Plus a x10 increase of the default. This helps with workloads where connection
    churn is very high (e.g. all clients are PHP Web apps that cannot maintain
    long-lived connections).

    GitHub issues: rabbitmq-server#528

  • rabbitmqctl cluster_status now includes cluster-wide resource alarm status

    GitHub issue: rabbitmq-server#392

  • Improved rabbitmqctl reset error messages

    GitHub issue: rabbitmq-server#167

  • More unsigned field data types are supported.

    GitHub issue: rabbitmq-server#20

Java client

Enhancements

Bug Fixes

.NET client

Bug Fixes

Federation Plugin

Bug Fixes

  • Significantly reduce possibility of a race condition when
    an exchange is deleted and immediately re-declared, e.g. by a federation
    link

    This rendered federation links dysfunctional.

    GitHub issue: rabbitmq-federation#7

Management plugin

Enhancements

  • Password hashing function is now included in exported definitions

    Those upgrading from versions earlier than 3.6.0 via definitions export
    won't have to temporarily set hashing function to MD5 to ensure export succeeds.

    GitHub issue: rabbitmq-management#117

Bug Fixes

Web STOMP plugin

Bug Fixes

Web STOMP Examples plugin

Bug Fixes

Event Exchange plugin

Bug Fixes

  • Event timestamps are now in seconds, not milliseconds

    Per AMQP 0-9-1 spec. This is not a particularly great choice for events,
    so we will add an optional header with millisecond precision in a future release.

    GitHub issue: rabbitmq-event-exchange#8

JSON RPC plugin

Note: this plugin is deprecated and its use is highly discouraged.

Enhancements

来自: http://www.oschina.net//news/70681/rabbitmq-3-6-1-rc1