您的位置:  首页 > 技术 > 中间件 > 正文

RabbitMQ 3.9.0 发布,支持 Erlang 24 并引入 Streams 数据结构

2021-07-28 21:56 管理员 次阅读 条评论

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

RabbitMQ 3.9.0 正式发布,该版本更新内容如下:

重点更新:

Streams

Streams 是 RabbitMQ 中一种新的持久化和复制的数据结构(" queue 类型"),它是一种具有非破坏性消费者语义的 append-only 日志模型。

它们可以作为常规 AMQP 0.9.1 队列使用,也可以通过新的二进制协议插件和相关客户端使用,Streams 可以实现以前不可能或不实际的消息传递模式。

Erlang 24 支持

Erlang 24 为许多工作负载提供了 20%-50% 的吞吐量提升。支持最新的运行时版本还允许 RabbitMQ 用由运行时提供的库取代一些外部依赖。

Erlang 24 现在默认用于社区 RabbitMQ Docker 镜像。

Kubernetes

RabbitMQ Cluster Operator 可自动配置、管理和操作在 Kubernetes 上运行的 RabbitMQ 集群。该 Operator 不仅是针对 3.9 版本的,也可用于最新的 3.8.x 版本系列。

Messaging Topology Operator 使得将 RabbitMQ 资源(虚拟主机、用户、权限、拓扑结构、策略等)定义为 Kubernetes 对象成为可能。该 Operator 可用于 3.8.x 版本系列。

用 JSON 记录

从 Lager 切换到新的 Erlang Logger API 进行日志记录引入了一个 JSON 结构化日志的选项。

Erlang/OTP 的兼容性说明

此版本需要 Erlang 23.2 或更高版本,建议使用 Erlang 24。

升级到 3.9

RabbitMQ 3.9.0 节点可以与 3.8.x 节点一起运行, 3.9.x的特定功能只有在集群中的所有节点升级到 3.9.0 或该系列中的任何其他补丁版本时才能实现。

错误修复

  • powershell.exe 现在可以在没有配置文件的情况下运行;
  • 队列索引恢复现在可以在恢复过程中强制关闭节点后继续进行;
  • 纠正 num_acceptors.ssl 应用的配置值不正确的问题;
  • 纠正了如果在rabbitmqctl add_vhost命令中没有指定 -description-tags 标志会被忽略的问题;

更多详情可查看:https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.9.0

  • 0
    感动
  • 0
    路过
  • 0
    高兴
  • 0
    难过
  • 0
    搞笑
  • 0
    无聊
  • 0
    愤怒
  • 0
    同情
热度排行
友情链接