关于 Apache Pulsar
Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。
GitHub 地址:http://github.com/apache/pulsar/
导语
各位小伙伴们,Pulsar 社区周报更新来啦!
本次 Pulsar 社区周报,为大家呈现 Pulsar client、broker、transactions 等内容,帮助社区小伙伴们掌握 Pulsar 项目及社区每周进展,也方便大家更好地参与到 Pulsar 社区中来!
感谢本周以下小伙伴为 Apache Pulsar 添砖加瓦(排名不分先后,看看你有没有上榜):
@gaoran10, @hangc0276, @tspannhw, @dlg99, @oversearch, @freeznet, @Jennifer88huang, @timmyyuan, @Anonymitaet,@ kaushik-develop, @eolivelli, @vroyer, @315157973, @gaozhangmin,@jerrypeng, @BewareMyPower, @codelipenghui, @lhotari, @Technoboy-, @liangyepianzhou, @congbobo184
接下来,一起看看 2021 年 8 月 9 日 ~ 2021 年 8 月 15 日有哪些值得你关注的进展吧!
本周亮点
[Java Client] 支持生成键值编码消息,由此用户可在使用 pulsar-client 时设置 schema。
https://github.com/apache/pulsar/pull/11303
贡献者:@eolivelli
[Broker] 在 namespace 注册/注销时,使用其全限定名称避免混淆。
https://github.com/apache/pulsar/pull/11643
贡献者:@kaushik-develop
重要特性
•因为 PR 较多,仅列举较大 PR 进展,不包括当周全部动态
•下面 PR 均已合入 Pulsar 主分支
[Transaction] 修复 Pulsar 2.8.0 在单机模式下,开启 transaction 时无法正常工作的问题。
https://github.com/apache/pulsar/pull/11494
贡献者:@liangyepianzhou
[Broker] 添加指标统计游标读写数量。
https://github.com/apache/pulsar/pull/11500
贡献者:@Technoboy-
[Java Client] 移除 Pulsar 实现类运行时的反射。
https://github.com/apache/pulsar/pull/11636
贡献者:@eolivelli
重要 Bug 修复
•因修复内容较多,仅列举较重要修复内容,不包括本周全部动态
•下面修复均已合入 Pulsar 主分支
[Flaky test] 修复 ManagedLedgerTest.testLedgerReachMaximumRolloverTime
。
https://github.com/apache/pulsar/pull/11670
贡献者:@Technoboy-
[Broker] 利用 getIfValid
方法来避免 handleMetadataStoreNotification
吞并异常。
https://github.com/apache/pulsar/pull/11656
贡献者:@Technoboy-
[Security] 将 Jetty 升级至 9.4.43.v20210629 版本。
https://github.com/apache/pulsar/pull/11660
贡献者:@lhotari
[C++ Client] 修复 UnAckedMessageTrackerEnabled
中对象释放重用和构造器的相关bugs.
https://github.com/apache/pulsar/pull/11630
贡献者:@oversearch
[Transaction] 修复当 topic 或者 sub 被删除后,transaction buffer client 处理 endTxn 操作时的问题。
https://github.com/apache/pulsar/pull/11304
贡献者:@congbobo184
[Broker] 修复在启用 topic 元数据压缩时,java.nio.ByteBuffer.position(I)Ljava/nio/ByteBuffer
出现的 java.lang.NoSuchMethodError
异常。
https://github.com/apache/pulsar/pull/11594
贡献者:@codelipenghui
[Python Schema] 修复 Python Schema 重新定义 Record/Enum 的问题。
https://github.com/apache/pulsar/pull/11595
贡献者:@gaoran10
[Function] 修复 Function/Source/Sink 类型是 ByteBuffer 时出现的类型转换异常。
https://github.com/apache/pulsar/pull/11611
贡献者:@jerrypeng
[Java Client] 修复值为 Null 的 messageId 可能传递给 compareTo()
方法的问题。
https://github.com/apache/pulsar/pull/11607
贡献者:@BewareMyPower
[Broker] 修复 getPreviousPosition
的空指针异常。
https://github.com/apache/pulsar/pull/11621
贡献者:@gaozhangmin
[Broker] 避免从 offloader 获取 offload 策略时的重复调用。
https://github.com/apache/pulsar/pull/11629
贡献者:@codelipenghui
[Broker] 使用 get 代替 join 来避免阻塞。
https://github.com/apache/pulsar/pull/11597
贡献者:@315157973
活动和新闻
•[公告] 欢迎新晋Apache Pulsar Committer成员付睿!
•[海外社区活动]
• 9月9日:网络研讨会 - 利用 Pulsar 打造微服务[1]
• 9月21日至23日:ApacheCon 2021[2]
• 10月6日:Pulsar Summit 欧洲线上峰会[3]
•[中文社区活动]
• 议题征集 | Pulsar Summit Asia 2021 正式启动,开启演讲议题征集!
• 社区活动|Apache Hudi x Apache Pulsar Meetup 杭州站来啦!
博文推荐
•博文干货|5张图带你快速入门 Pulsar 的存储引擎 BookKeeper
•直播回顾|TGIP-CN 035: Apache Pulsar 动手实战第二期:容器部署实战
相关阅读
•Pulsar 社区周报|2021-08/02 ~ 2021-08/08
•Pulsar 社区周报|2021-07/26 ~ 2021-08/01
本期周报翻译贡献者简介
姜吉宁 Jimmy, 开源爱好者,终生学习者,工作三年的程序员。最近因公司业务需求,个人开始调研开源消息队列产品。调研过程中,注意到 Pulsar 这款消息队列新星,随即被其吸引,目前尝试落地使用中。愿 Pulsar 越做越好,也期待自己能不断理解 Pulsar,早日贡献代码!
作为全球性开源项目,截至 2021 年 8 月 25 日,Apache Pulsar 已拥有 443 名贡献者、9.5 K+ Star 、2.3 K+ Fork 。正是由于分布在全球各地的社区开发者的贡献,才使得 Apache Pulsar 项目不断发展与前进。
让我们期待下一周的 Apache Pulsar 周报!
如果你也想为 Apache Pulsar 项目出一份力、成为我们的 Contributor,参考下面链接,来加入我们吧:
Apache Pulsar 官方贡献指南[4]
引用链接
[1]
9月9日:网络研讨会 - 利用 Pulsar 打造微服务: https://streamnative.zoom.us/webinar/register/WN_0vVCCqGhQ4G1978pZvxwZg
[2]
9月21日至23日:ApacheCon 2021: https://www.apachecon.com/acah2021/
[3]
10月6日:Pulsar Summit 欧洲线上峰会: https://hopin.com/events/pulsar-summit-europe-2021
[4]
Apache Pulsar 官方贡献指南: http://pulsar.apache.org/en/contributing/