Karafka v2.2.8 现已发布。Krafka 是一个用于简化基于 Apache Kafka 的 Ruby 应用开发的框架,它允许开发者在使用异步 Kafka 消息时使用类似于标准 HTTP 约定(params 和 params_batch)的方法。Karafka 不仅可以处理传入的消息,而且还提供了用于构建接收和发送消息的复杂数据流应用程序的工具。
此版本更新内容如下:
- [功能] 引入 Appsignal 集成,用于 errors 和 metrics 跟踪。
- [改进] 为 VP 提供
#synchronize
,以便在需要跨 VP consumers 工作时允许锁定。 - [改进] 提供
#collapse_until!
direct consumer API,以便在高级用例中结合过滤 API 进行折叠虚拟分区消费者操作。 - [重构] 重组再平衡事件从 librdkafka 传播到 Karafka 的方式。用 rebalance.partitions_assigned 和 rebalance.partitions_revoked 替换 connection.client.rebalance_callback。引入两个额外事件:rebalance.partitions_assign 和 rebalance.partitions_revoke,以处理未来的预平衡工作。
- [重构] 删除作为 CLI 层的
thor
,转而依赖 RubyOptParser
Upgrade notes
- 除非你使用的
connection.client.rebalance_callback
是被认为是私有的,否则什么都没有。 - 所有 CLI 命令都不会有任何变化,但
thor
已被删除,因此如果发现任何错误,建议报告。
更新说明:https://github.com/karafka/karafka/releases/tag/v2.2.8