关于 Apache Pulsar

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

GitHub 地址:http://github.com/apache/pulsar/

导语

各位小伙伴们,Pulsar 社区周报带着假期期间的更新来啦!

在阅读周报之前,大家记得把活动加入日程哦:10 月 15 日,即周四晚上 8-9 点,Apache Pulsar PMC 翟佳将在云原生学院分享 Apache Pulsar 架构与最新技术进展,以及云原生时代下消息流系统的技术发展。观看直播参与活动还可以获得 Pulsar t 恤和周边哦。

本次 Pulsar 社区周报,为大家呈现 Pulsar client、broker、Pulsar Admin、Pulsar Functions、Pulsar schema 等内容,帮助社区小伙伴们掌握 Pulsar 项目及社区每周进展,也方便大家更好地参与到 Pulsar 社区中来!

感谢本周以下小伙伴为 Apache Pulsar 添砖加瓦(排名不分先后,看看你有没有上榜):

@zymap@[315157973@[hangc0276@[racorn@[lhotari@[BewareMyPower@[wangjialing218@[rdhabalia@[srkukarni@[k2la@[massakam@[yuanboliu@[david-streamlio@[sbourkeostk@[vaihtovirta@tuteng

接下来,一起看看 09-26 ~ 10-09 有哪些值得你关注的进展吧!

重要进展

  • 因为 PR 较多,仅列举较大 PR 进展,不包括当周全部动态
  • 下面 PR 均已合入 Pulsar 主分支

[Client] 改进 ClientCnx 的超时处理,对目前所有不处理超时的请求进行超时处理。

PR 地址:https://github.com/apache/pulsar/pull/8149
贡献者:@lhotari

[Broker] 拦截发送给消费者的消息,并支持抛出相关异常。
PR 地址:https://github.com/apache/pulsar/pull/8129
贡献者:@zymap

[pulsar-admin] 支持删除与集群关联的数据。

PR 地址:https://github.com/apache/pulsar/pull/8133
贡献者:@BewareMyPower

[Broker] 跳过拦截 multipart 请求。
PR 地址:https://github.com/apache/pulsar/pull/8156
贡献者:@zymap

[Common] 支持在 brokerServiceUrl 中指定多个 IPv6 主机地址。
PR 地址:https://github.com/apache/pulsar/pull/8120
贡献者:@wangjialing218

[Broker] 添加 getLastMessageId 至 Pulsar Admin API(V1) 。
PR 地址:https://github.com/apache/pulsar/pull/8081
贡献者:@rdhabalia

[pulsar-admin] 添加 CLI 命令,获取最新消息 ID。
PR 地址:https://github.com/apache/pulsar/pull/8082
贡献者:@rdhabalia

[Admin] 支持同时删除 topic 和 schema ledger。
PR 地址:https://github.com/apache/pulsar/pull/8167
贡献者:@BewareMyPower

[Broker] 添加相关 CLI 命令行,支持从 ZooKeeper 集群中删除 metadata。
PR 地址:https://github.com/apache/pulsar/pull/8169
贡献者:@BewareMyPower

[Functions] 支持禁用转发源消息属性。
PR 地址:https://github.com/apache/pulsar/pull/8158
贡献者:@zymap

[Broker] 支持禁用复制的订阅。
PR 地址:https://github.com/apache/pulsar/pull/8144
贡献者:@k2la

[Common] 添加 ChannelFutures 实用类至 CompletableFuture。
PR 地址:https://github.com/apache/pulsar/pull/8137
贡献者:@racorn

[Broker] 在设置自动读取之前检查空指针。
PR 地址:https://github.com/apache/pulsar/pull/7999
贡献者:@yuanboliu

[Python Client] 更新构建 docker 镜像的脚本,使 Python 客户端正常工作。
PR 地址:https://github.com/apache/pulsar/pull/8153
贡献者:@massakam

[IO] 添加 org.apache.pulsar.io.core.Context 接口。
PR 地址:https://github.com/apache/pulsar/pull/8164
贡献者:@david-streamlio

[Client] 使能 TLS 的 Pulsar Java broker 客户端支持 SNI。
PR 地址:https://github.com/apache/pulsar/pull/8117
贡献者:@racorn

[Admin] 支持获取 topic 的内部统计信息和 ledger metadata。
PR 地址:https://github.com/apache/pulsar/pull/8180
贡献者:@rdhabalia

[Broker] 为 namespace 级别的 TTL 添加新的状态。
PR 地址:https://github.com/apache/pulsar/pull/8178
贡献者:@315157973

[Python Client] 暴露 batchingType 接口。
PR 地址:https://github.com/apache/pulsar/pull/8185
贡献者:@hangc0276

[Broker] 清理不活跃的非持久化订阅。
PR 地址:https://github.com/apache/pulsar/pull/8166
贡献者:@315157973

[Topic Policy] 检查空指针,以避免 internalSetTopicPolicies 的空指针异常。
PR 地址:https://github.com/apache/pulsar/pull/8201
贡献者:@hangc0276

[C++ Client] 为 C++ 客户端 HandleBase 添加 epoch,用于处理创建生产者时产生的超时问题。
PR 地址:https://github.com/apache/pulsar/pull/8191
贡献者:@hangc0276

[Dashboard] 修复 Django 模型中 consumerName 迁移的问题。
PR 地址:https://github.com/apache/pulsar/pull/8188
贡献者:@sbourkeostk

[Go Client] 修复 pulsarProducerSendCallbackProxy 的参数类型。
PR 地址:https://github.com/apache/pulsar/pull/8186
贡献者:@massakam

[Functions] 将用户定义的参数传播到 Pulsar Go Functions的实例中。
PR 地址:https://github.com/apache/pulsar/pull/8132
贡献者:@vaihtovirta

[Bookie] 在 bookkeeper.conf 文件中暴露 ensemblePlacementPolicy。
PR 地址:https://github.com/apache/pulsar/pull/8210
贡献者:@hangc0276

[Broker] 仅在配置拦截器时,支持拦截过滤器。
PR 地址:https://github.com/apache/pulsar/pull/8157
贡献者:@zymap

[Python Client] 为 Python schema 字段添加默认值。
PR 地址:https://github.com/apache/pulsar/pull/8122
贡献者:@hangc0276

重要 Bug 修复

  • 因修复内容较多,仅列举较重要修复内容,不包括本周全部动态
  • 下面修复均已合入 Pulsar 主分支

[C++ Client] 修复 testIndividualAck 单元测试不稳定的问题。
PR 地址:https://github.com/apache/pulsar/pull/8141
贡献者:@BewareMyPower

[Client] 修复 ConsumerImpl 内存泄露的问题。
PR 地址:https://github.com/apache/pulsar/pull/8160
贡献者:@lhotari

[Broker] 修复服务单元未就绪时返回 Pulsar 客户端错误码的问题。
PR 地址:https://github.com/apache/pulsar/pull/8147
贡献者:@massakam

[Schema] 修复启动 BookkeeperSchemaStorage 时可能产生的空指针异常问题。
PR 地址:https://github.com/apache/pulsar/pull/8172
贡献者:@MaiCw4J

[Admin] 修复订阅名称不存在时无法查看消息的问题。
PR 地址:https://github.com/apache/pulsar/pull/8182
贡献者:@hangc0276

[Client] 修复暂停消费的消费者重新连接到 broker 时仍会收到新消息的问题。
PR 地址:https://github.com/apache/pulsar/pull/8165
贡献者:@massakam

[Broker] 修复关闭 Pulsar 服务时引发的异常。
PR 地址:https://github.com/apache/pulsar/pull/8197
贡献者:@hangc0276

[Schema] 修复 JSON schema 会将字节反序列化为字符串的问题。
PR 地址:https://github.com/apache/pulsar/pull/8140
贡献者:@hangc0276

活动和新闻

  • [TGIP] 每周直播:Pulsar 及其生态系统

点击此处,获取以往视频链

  • [TGIP-CN] 每周直播:Pulsar 及其生态系统

点击此处,获取以往视频链接

  • [教学视频] Broker Routing by Jesse Anderson

视频链接

活动预告

主讲人:Can Gencer,Director of Engineering at Hazelcast
点击此处,报名活动

  • 10 月 21 日:FlinkForward:“Flink + Pulsar: The Path To Unified Batch and Streaming”

主讲人:Addison Higham,StreamNative 高级工程师
点击此处,报名活动

推荐阅读


作为全球性开源项目,截至 2020 年 10 月 09 日,Apache Pulsar 已拥有超出 300 名贡献者、6.6K+ Star 、1.6K+ Fork 。正是由于分布在全球各地的社区开发者的贡献,才使得 Apache Pulsar 项目不断发展与前进。

让我们期待下一周的 Apache Pulsar 周报!

如果你也想为 Apache Pulsar 项目出一份力、成为我们的 Contributor,参考下面链接,来加入我们吧:


ApachePulsar
192 声望939 粉丝

Apache软件基金会顶级项目,下一代云原生分布式消息系统