AutoMQ 社区双周精选第三期(12.04~12.15)

原创
2023/12/22 19:13
阅读数 30

本期概要

AutoMQ for RocketMQ 和 AutoMQ for Kafka 项目在过去的两周内取得了令人瞩目的进展,发布了新版本,增加了功能和性能优化,同时提供了更好的运维工具和可观测性支持。让我们一起来了解这些更新。

AutoMQ for RocketMQ:

  • 发布了 Beta 版本 v0.1.0-beta,支持事务消息,并进行了性能优化和单元测试改进。

  • 增加了运维工具,包括重置消费位点、查询消费进度、查询 Topic 位点等。

  • 支持队列迁移,通过 Stream 实现秒级迁移,并提供 CLI 工具方便运维。

  • 提升了冷读性能,通过优化元数据接口和冷读场景下的长轮询来提高吞吐量。

AutoMQ for Kafka:

  • 发布了 1.0.0-rc0 版本,接入 OpenTelemetry 增强了可观测性。

  • 进行了多项优化,包括 Kraft ObjectDelta GC 优化、冷读 GC 的优化,提升了性能和内存利用率。

社区贡献者名单

本周新增社区贡献者:来自上海电信的罗天翔https://github.com/AutoMQ/automq-for-kafka/pull/517该 PR 简化了 AutoMQ Kafka 的网络配置项。

AutoMQ for RocketMQ 精选动态

我们发布了第一个 Beta 版本 v0.1.0-beta,正式宣告 AutoMQ for RocketMQ 进入 Beta 阶段。https://github.com/AutoMQ/automq-for-rocketmq/releases/tag/v0.1.0-beta在这个版本中,我们主要进行了以下几个方面的功能发布与性能优化,并且补充了单元测试持续提升代码质量。

支持事务消息

在这个版本中,我们支持了 Apache RocketMQ 的事务消息类型,至此我们已经完全兼容 Apache RocketMQ 的全部三种高级消息类型(顺序消息、定时消息、事务消息)。后续我们会持续致力于解决 Apache RocketMQ 消息重复的痛点,消息幂等已加入 Roadmap ,欢迎各位开发者持续关注。https://github.com/AutoMQ/automq-for-rocketmq/pull/790https://github.com/AutoMQ/automq-for-rocketmq/pull/796

增加运维工具

为了便于开发者的测试与使用,我们增加了数个 MQAdmin 工具的命令,包括:

  • 重置消费位点

  • 查询消费进度

  • 查询 Topic 位点等元数据

  • 查询客户端连接

  • ...

https://github.com/AutoMQ/automq-for-rocketmq/pull/800https://github.com/AutoMQ/automq-for-rocketmq/pull/802https://github.com/AutoMQ/automq-for-rocketmq/pull/807

支持队列迁移

借助 Stream 基于对象存储实现的共享存储能力,我们实现了秒级迁移队列到另一个节点,同时提供了 CLI 工具方便运维。各位开发者可以使用 Docker compose 部署集群很方便地测试这一功能。https://github.com/AutoMQ/automq-for-rocketmq/pull/818

并且通过消息转发,我们实现了对客户端几乎无感的迁移体验:使用两个发送者对一个队列进行固定 500tps 的 4k 消息发送,流量稳定后将队列迁移到另外的节点,迁移任务在秒级完成、流量快速恢复。详细测试数据可以查看 PR  #821https://github.com/AutoMQ/automq-for-rocketmq/pull/821

提升冷读性能

这个版本通过优化元数据接口和冷读场景下不必要的长轮询提升了冷读性能,并且由于冷读数据是从对象存储中获取,即拥有了脱离磁盘 IOPS 和带宽桎梏的超高吞吐量。https://github.com/AutoMQ/automq-for-rocketmq/pull/827https://github.com/AutoMQ/automq-for-rocketmq/pull/828

AutoMQ  for Kafka 精选动态

1.0.0-rc0 版本发布

https://github.com/AutoMQ/automq-for-kafka/releases/tag/1.0.0-rc0

可观测性增强

Metrics 接入 OpenTelemetryhttps://github.com/AutoMQ/automq-for-kafka/pull/548

Kraft ObjectDelta GC 优化

新增 DeltaMap 数据结构,减少 ObjectDelta 生成 ObjectImage 拷贝的数据量。
https://github.com/AutoMQ/automq-for-kafka/pull/547

冷读 GC 优化

Broker 消费全链路使用 PooledByteBuf 减少堆内内存分配,在 zgc 下不再出现 Allocation Stall。 https://github.com/AutoMQ/automq-for-kafka/issues/543

以上是第三期《双周精选》的内容,欢迎关注我们的公众号,我们会定期更新AutoMQ社区的进展。同时,也诚邀各位开源爱好者持续关注我们社区,跟我们一起构建云原生消息中间件!

END

关于我们

AutoMQ 是一家专业的消息队列和流存储软件服务供应商。AutoMQ 开源的 AutoMQ Kafka 和 AutoMQ RocketMQ 基于云对 Apache Kafka、Apache RocketMQ 消息引擎进行重新设计与实现,在充分利用云上的竞价实例、对象存储等服务的基础上,兑现了云设施的规模化红利,带来了下一代更稳定、高效的消息引擎。此外,AutoMQ 推出的 RocketMQ Copilot 专家系统也重新定义了 RocketMQ 消息运维的新范式,赋能消息运维人员更好的管理消息集群。 

🌟 GitHub 地址:https://github.com/AutoMQ/automq-for-kafka

💻 官网:https://www.automq.com

👀 B站:AutoMQ官方账号

🔍 视频号:AutoMQ 

👉 扫二维码加入我们的社区群

关注我们,一起学习更多云原生干货

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部