脉冲星 10 月脉动 | Pulsar Summit Asia 报名启动,社区新增 2 名 Committer!

2020/10/29 18:30
阅读数 32



🔍 本月看点速览

  • 产品动态

    • 新增功能

    • Bug 修复

  • 社区动态

    • 海内外社区动态

    • 技术干货





关于 Apache Pulsar



Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等。





导语



各位小伙伴们,Pulsar 社区月报如约而至!


首先祝贺 Apache Pulsar 新增两位贡献卓越的 committer!他们是来自 BIGO 的陈航(@hangc0276)与 StreamNative 的孟焕丽(@Huanli-Meng)!Pulsar 社区正在快速地发展壮大,期待越来越多的小伙伴加入 contributor 和 committer 的行列!


本月 Pulsar 社区内也进行了很多产品细节完善和更新,遍布方方面面。本月我们合并了来自社区的 107 个 commit,同时 transaction 也在进行最后的开发和测试,相信不久就会和大家见面。


感谢以下各位大佬本月对 Pulsar 项目的支持,让 Apache Pulsar 继续发光发热!(排名不分先后,看看你有没有上榜 🏆🏆):



@racorn、@zymap、@lhotari、@BewareMyPower、@315157973、@rdhabalia、@wangjialing218、@hangc0276、@Renkai、@tuteng、@k2la、@yuanboliu、@david-streamlio、@sbourkeostk、@vaihtovirta、@bbonnin、@wolfstudy、@codelipenghui、@languitar、@congbobo184、@Jennifer88huang、@gaoran10、@merlimat、@bmyers-csu、@murong00、@pkumar-singh、@yixing1337、@jerrypeng、@klwilson227





产品动态




本月,Apache Pulsar 正式引入 Cloud Storage Sink 连接器,实现了 Apache Pulsar 数据上云。Cloud Storage 连接器采用简单、可靠的方式,帮助用户将数据从 Apache Pulsar 迁移到云存储的对象中。

更多详情可参考: Apache Pulsar 正式引入 Cloud Storage Sink 连接器



🧰 新增功能

  • Client:改进 Clientnx 的超时处理,对目前所有不处理超时的请求进行超时处理。
    https://github.com/apache/pulsar/pull/8149

  • Broker:拦截发送给消费者的消息,并支持抛出相关异常。
    https://github.com/apache/pulsar/pull/8129

  • pulsar-admin:支持删除与集群关联的数据。
    https://github.com/apache/pulsar/pull/8133

  • Broker:跳过拦截 multipart 请求。
    https://github.com/apache/pulsar/pull/8156

  • Common:支持在 brokerServiceUrl 中指定多个 IPv6 主机地址。
    https://github.com/apache/pulsar/pull/8120

  • Broker:添加 getLastMessageId 至 Pulsar Admin API(V1)。
    https://github.com/apache/pulsar/pull/8081

  • pulsar-admin:添加 CLI 命令,获取最新消息 ID。
    https://github.com/apache/pulsar/pull/8082

  • Admin:支持同时删除 topic 和 schema ledger。
    https://github.com/apache/pulsar/pull/8167

  • Broker:添加相关 CLI 命令行,支持从 ZooKeeper 集群中删除 metadata。
    https://github.com/apache/pulsar/pull/8169

  • Functions:支持禁用转发源消息属性。
    https://github.com/apache/pulsar/pull/8158

  • Broker:支持禁用复制的订阅。
    https://github.com/apache/pulsar/pull/8144

  • Common:添加 ChannelFutures 实用类至 CompletableFuture。
    https://github.com/apache/pulsar/pull/8137

  • Broker:在设置自动读取之前检查空指针。
    https://github.com/apache/pulsar/pull/7999

  • Python Client:更新构建 docker 镜像的脚本,使 Python 客户端正常工作。
    https://github.com/apache/pulsar/pull/8153

  • IO:添加 org.apache.pulsar.io.core.Context 接口。
    https://github.com/apache/pulsar/pull/8164

  • Client:使能 TLS 的 Pulsar Java broker 客户端支持 SNI。
    https://github.com/apache/pulsar/pull/8117

  • Admin:支持获取 topic 的内部统计信息和 ledger metadata。
    https://github.com/apache/pulsar/pull/8180

  • Broker:为 namespace 级别的 TTL 添加新的状态。
    https://github.com/apache/pulsar/pull/8178

  • Python Client:暴露 batchingType 接口。
    https://github.com/apache/pulsar/pull/8185

  • Broker:清理不活跃的非持久化订阅。
    https://github.com/apache/pulsar/pull/8166

  • Topic Policy:检查空指针,以避免 internalSetTopicPolicies 的空指针异常。
    https://github.com/apache/pulsar/pull/8201

  • C++ Client:为 C++ 客户端 HandleBase 添加 epoch,用于处理创建生产者时产生的超时问题。
    https://github.com/apache/pulsar/pull/8191

  • Dashboard:修复 Django 模型中 consumerName 迁移的问题。
    https://github.com/apache/pulsar/pull/8188

  • Go Client:修复 pulsarProducerSendCallbackProxy 的参数类型。
    https://github.com/apache/pulsar/pull/8186

  • Functions:将用户定义的参数传播到 Pulsar Go Functions 的实例中。
    https://github.com/apache/pulsar/pull/8132

  • Bookie:在 bookkeeper.conf 文件中暴露 ensemblePlacementPolicy。
    https://github.com/apache/pulsar/pull/8210

  • Broker:仅在配置拦截器时,支持拦截过滤器。
    https://github.com/apache/pulsar/pull/8157

  • Python Client:为 Python schema 字段添加默认值。
    https://github.com/apache/pulsar/pull/8122

  • Pulsar-client:在 pulsar-client 中允许用户设置日志级别。
    https://github.com/apache/pulsar/pull/8195

  • Pulsar Client:用 ThreadPoolExecutor 代替 EventLoop 来改进系统性能。
    https://github.com/apache/pulsar/pull/8208

  • Go Functions:将 Go Function 中 Go client 的版本升级到 0.2.0。
    https://github.com/apache/pulsar/pull/8241

  • Pulsar Broker:在 broker 级别支持限制 topic 发布速率。

    https://github.com/apache/pulsar/pull/8235

  • Pulsar Broker:支持限制每个 Pulsar 集群租户的最大数量。

    https://github.com/apache/pulsar/pull/8261

  • Pulsar Broker:支持限制每个租户 namespace 的最大数量。

    https://github.com/apache/pulsar/pull/8267

  • Pulsar Broker:在消费者统计数据中添加 read position,以保存消息的调度顺序。

    https://github.com/apache/pulsar/pull/8274

  • Tiered Storage:重构 JCloud 分层存储,支持其他 JClouds 支持的 provider。

    https://github.com/apache/pulsar/pull/6335

  • Metrics:添加 topic 查找操作的指标。

    https://github.com/apache/pulsar/pull/8272

  • Pulsar Functions:组织并优化 Go 函数的示例目录。

    https://github.com/apache/pulsar/pull/8288

  • Transaction:调整 TransactionBuffer 接口。

    https://github.com/apache/pulsar/pull/8291

  • Pulsar Broker:添加 REST 处理器,确定 broker 是否已完全准备好接受请求。

    https://github.com/apache/pulsar/pull/8303

  • Pulsar Broker:在 metadata 设置结束时,关闭 ZooKeeper 连接。

    https://github.com/apache/pulsar/pull/8228

  • Pulsar Broker:支持限制每个 topic 的最大订阅数。

    https://github.com/apache/pulsar/pull/8289

  • Pulsar Bookie:初始化 metadata 时,优化 BookKeeper 元数据服务的 URI。

    https://github.com/apache/pulsar/pull/8269

  • Pulsar Functions:支持访问 Function 的当前消息。

    https://github.com/apache/pulsar/pull/8290

  • Pulsar Broker:支持在基于消息 ID 重置光标时排除消息。

    https://github.com/apache/pulsar/pull/8306

  • Pulsar Broker:在 namespace API(V1) 支持设置复制的发送给速率。

    https://github.com/apache/pulsar/pull/8314

  • Pulsar Admin:支持将光标重置为 Pulsar Admin 的批处理索引。

    https://github.com/apache/pulsar/pull/8329

  • Pulsar Broker:在本地策略中配置 namespace 反关联性策略。

    https://github.com/apache/pulsar/pull/8349

  • Pulsar Proxy:添加代理插件接口,支持其他用户定义的小服务程序。

    https://github.com/apache/pulsar/pull/8067


🔧 Bug 修复

  • C++ Client:修复 testIndividualAck 单元测试不稳定的问题。
    https://github.com/apache/pulsar/pull/8141

  • Client:修复 ConsumerImpl 内存泄露的问题。
    https://github.com/apache/pulsar/pull/8160

  • Broker:修复服务单元未就绪时返回 Pulsar 客户端错误码的问题。
    https://github.com/apache/pulsar/pull/8147

  • Schema:修复启动 BookkeeperSchemaStorage 时可能产生的空指针异常问题。
    https://github.com/apache/pulsar/pull/8172

  • Admin:修复订阅名称不存在时无法查看消息的问题。
    https://github.com/apache/pulsar/pull/8182

  • Client:修复暂停消费的消费者重新连接到 broker 时仍会收到新消息的问题。
    https://github.com/apache/pulsar/pull/8165

  • Broker:修复关闭 Pulsar 服务时引发的异常。
    https://github.com/apache/pulsar/pull/8197

  • Schema:修复 JSON schema 会将字节反序列化为字符串的问题。
    https://github.com/apache/pulsar/pull/8140

  • Python:使用环境标记限制 enum34 的安装
    https://github.com/apache/pulsar/pull/8213

  • C++ Client:修复关闭 Pulsar broker 时未完成的待处理请求
    https://github.com/apache/pulsar/pull/8232

  • Pulsar Broker:修改用于触发监听器的时机
    https://github.com/apache/pulsar/pull/8234

  • Pulsar Broker:修复 Pulsar broker 启动时查找操作卡住的问题
    https://github.com/apache/pulsar/pull/8273

  • Managed Ledger:修复了 broker 在 ManagedLedgerImpl.asyncReadEntries 无限循环的问题。
    https://github.com/apache/pulsar/pull/8284

  • C++ Client:修复客户端总是分配更多缓冲的问题。
    https://github.com/apache/pulsar/pull/8283

  • Pulsar Standalone:修复在独立模式下运行 ZooKeeper 时无法删除旧快照的问题。
    https://github.com/apache/pulsar/pull/8217

  • Managed Ledger:修复在 ManagedCursorImpl 中更新  readPosition 时产生的竞态条件。
    https://github.com/apache/pulsar/pull/8299

  • Pulsar Broker:修复在 Key_Shared 订阅模式下消息 TTL 和消息的重播顺序问题。
    https://github.com/apache/pulsar/pull/8292

  • Pulsar Broker:使用 cacheExpirySeconds 作为 ZooKeeper 缓存的到期时间。
    https://github.com/apache/pulsar/pull/8302

  • C++ Client:修复未初始化的成员变量导致的单元测试的段故障。
    https://github.com/apache/pulsar/pull/8334

  • C++ Client:修复对批消息而非消息数量实施反压的问题。
    https://github.com/apache/pulsar/pull/8331

  • Pulsar Broker:修复分割 bundle 的 API 覆盖 LocalPolicies 的问题。
    https://github.com/apache/pulsar/pull/8313

  • C++ Client:修复订阅单个分区时消息 ID 错误的问题。
    https://github.com/apache/pulsar/pull/8341





社区动态



📣 TGIP 系列与网络直播


💙 TGIP-CN


TGIP-CN 系列所有回放视频可参考:
https://www.bilibili.com/video/BV1T741147B6

💜 网络直播

➡️ 云原生消息流平台 Apache Pulsar 深度解析(云原生学院)

嘉宾:翟佳

点击查看视频回放

➡️ 云原生时代企业如何构建流数据平台(InfoQ)

嘉宾:李鹏辉

👇🏻回放详情可扫描下方二维码进行查看


➡️ Low-Latency Stream Processing with Jet (StreamNative Webinar)

嘉宾:Can Gencer,Director of Engineering at Hazelcast

回放链接:
https://www.youtube.com/watch?v=wIJGusBxB70


📣 社区重大活动

🔷 Pulsar Summit Asia 2020 演讲征集结束,日程即将发布,报名正式启动!


为了更好地聚集亚洲地区 Pulsar 开发者和贡献者,Pulsar Summit Aisa 2020 将于 11 月 28-29 日召开!考虑到疫情,此次峰会将全面线上举办。


目前我们收到了多份来自国内外技术大佬们的演讲议题,内容涉及用户案例、深度技术干货以及技术环境部署等方面。我们将在接下来的时间里,一一为大家公布活动日程,敬请期待!


目前国内用户可通过活动行平台进行报名,点击「阅读原文」 或扫描下方二维码报名:



🔷 2020 中国开源年会 COSCon’20 开源狂欢,Pulsar 社区大佬展示精彩瞬间


2020 中国开源年会 COSCon’20 于今年 10 月 24-25 日举行,在云原生与微服务专场和女性专场中,来自 StreamNative 的翟佳和 Jennifer 相继为大家分享了关于 Pulsar 技术和社区的相关内容。


具体回放和参考等内容,后续会发出,敬请期待!


🔷 Apache Pulsar 通过可信开源项目评估


10 月 16 日,2020 OSCAR 云计算开源产业大会在北京顺利举办,本次大会由中国信息通信研究院主办,云计算标准和开源推进委员会承办。经过报名、项目自评、技术测试、远程审查等一系列流程,Apache Pulsar 项目成功通过可信开源项目的评估。


更多详情可参考:2020 OSCAR 云计算开源产业大会,Apache Pulsar 通过可信开源项目评估


🔷 参与 Bigdata+AI meetup


11 月 1 日,由阿里云计算平台事业部与阿里云开发者社区联合主办的大数据+AI meetup 2020 第二站·上海即将开幕。在本次活动中,Pulsar 社区的大佬赵建云也积极参与其中,并将为大家带来关于 Pulsar + Flink 批流融合的实践分享。






技术干货





以上就是 10 月份的脉动之旅。Apache Pulsar 正在快速成长,感谢来自大家的支持!


Apache Pulsar 社区鼓励大家积极参与开源社区,无论是文档、代码、翻译,还是技术博客,都欢迎大家积极参与,早日成为 Pulsar contributor,一起加油鸭。


如果你对 Pulsar Contribute 的流程不太熟练,也可以参考我们这篇小教程,让你熟悉如何通过 GitHub 对 Pulsar 进行贡献:新手向|非技术人员如何参与 Pulsar 项目进行贡献


参与贡献项目可选:


  • Apache Pulsar 项目
    https://github.com/apache/pulsar


  • Pulsar 技术文档翻译
    https://github.com/apache/pulsar-translation


👍 推荐阅读

➡️ 脉冲星 9 月脉动 | Pulsar Summit 亚洲站正式启动,社区积极参与开源活动
➡️ 脉冲星 8 月脉动 | Pulsar 大放异彩,里程碑一个接一个!

本文分享自微信公众号 - ApachePulsar(ApachePulsar)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

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