关于 Apache Pulsar
Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等。
项目地址:http://github.com/apache/pulsar/
导语
本次 Pulsar 社区周报,为大家呈现 Pulsar client、broker、Pulsar Admin、Pulsar Functions、Pulsar schema 等内容,帮助社区小伙伴们掌握 Pulsar 项目及社区每周进展,也方便大家更好地参与到 Pulsar 社区中来!
感谢本周以下小伙伴为 Apache Pulsar 添砖加瓦(排名不分先后,看看你有没有上榜 ????????):
@racorn、@zymap、@lhotari、@BewareMyPower、@315157973、@rdhabalia、@wangjialing218、@hangc0276、@Renkai、@tuteng、@k2la、@yuanboliu、@david-streamlio、@sbourkeostk、@vaihtovirta接下来,一起看看 09-26 ~ 10-09 有哪些值得你关注的进展吧!
重要进展
因为 PR 较多,仅列举较大 PR 进展,不包括本周全部动态
以下 PR 均已 Merge 进 Pulsar 主分支
???? Client:改进 Clientnx 的超时处理,对目前所有不处理超时的请求进行超时处理。
PR 地址:
https://github.com/apache/pulsar/pull/8149
贡献者:
@lhotari(https://github.com/lhotari)
???? Broker:拦截发送给消费者的消息,并支持抛出相关异常。
PR 地址:
https://github.com/apache/pulsar/pull/8129
贡献者:
@zymap(https://github.com/zymap)
???? pulsar-admin:支持删除与集群关联的数据。
PR 地址:
https://github.com/apache/pulsar/pull/8133
贡献者:
@BewareMyPower(https://github.com/BewareMyPower)
???? Broker:跳过拦截 multipart 请求。
PR 地址:
https://github.com/apache/pulsar/pull/8156
贡献者:
@zymap(https://github.com/zymap)
???? Common:支持在 brokerServiceUrl 中指定多个 IPv6 主机地址。
PR 地址:
https://github.com/apache/pulsar/pull/8120
贡献者:
@wangjialing218(https://github.com/wangjialing218)
???? Broker:添加 getLastMessageId 至 Pulsar Admin API(V1)。
PR 地址:
https://github.com/apache/pulsar/pull/8081
贡献者:
@rdhabalia(https://github.com/rdhabalia)
???? pulsar-admin:添加 CLI 命令,获取最新消息 ID。
PR 地址:
https://github.com/apache/pulsar/pull/8082
贡献者:
@rdhabalia(https://github.com/rdhabalia)
???? Admin:支持同时删除 topic 和 schema ledger。
PR 地址:
https://github.com/apache/pulsar/pull/8167
贡献者:
@BewareMyPower(https://github.com/BewareMyPower)
???? Broker:添加相关 CLI 命令行,支持从 ZooKeeper 集群中删除 metadata。
PR 地址:
https://github.com/apache/pulsar/pull/8169
贡献者:
@BewareMyPower(https://github.com/BewareMyPower)
???? Functions:支持禁用转发源消息属性。
PR 地址:
https://github.com/apache/pulsar/pull/8158
贡献者:
@zymap(https://github.com/zymap)
???? Broker:支持禁用复制的订阅。
PR 地址:
https://github.com/apache/pulsar/pull/8144
贡献者:
@k2la(https://github.com/k2la)
???? Common:添加 ChannelFutures 实用类至 CompletableFuture。
PR 地址:
https://github.com/apache/pulsar/pull/8137
贡献者:
@racorn(https://github.com/racorn)
???? Broker:在设置自动读取之前检查空指针。
PR 地址:
https://github.com/apache/pulsar/pull/7999
贡献者:
@yuanboliu(https://github.com/yuanboliu)
???? Python Client:更新构建 docker 镜像的脚本,使 Python 客户端正常工作。
PR 地址:
https://github.com/apache/pulsar/pull/8153
贡献者:
@massakam(https://github.com/massakam)
???? IO:添加 org.apache.pulsar.io.core.Context 接口。
PR 地址:
https://github.com/apache/pulsar/pull/8164
贡献者:
@david-streamlio(https://github.com/david-streamlio)
???? Client:使能 TLS 的 Pulsar Java broker 客户端支持 SNI。
PR 地址:
https://github.com/apache/pulsar/pull/8117
贡献者:
@racorn(https://github.com/racorn)
???? Admin:支持获取 topic 的内部统计信息和 ledger metadata。
PR 地址:
https://github.com/apache/pulsar/pull/8180
贡献者:
@rdhabalia(https://github.com/rdhabalia)
???? Broker:为 namespace 级别的 TTL 添加新的状态。
PR 地址:
https://github.com/apache/pulsar/pull/8178
贡献者:
@315157973(https://github.com/315157973)
???? Python Client:暴露 batchingType 接口。
PR 地址:
https://github.com/apache/pulsar/pull/8185
贡献者:
@hangc0276(https://github.com/hangc0276)
???? Broker:清理不活跃的非持久化订阅。
PR 地址:
https://github.com/apache/pulsar/pull/8166
贡献者:
@315157973(https://github.com/315157973)
???? Topic Policy:检查空指针,以避免 internalSetTopicPolicies 的空指针异常。
PR 地址:
https://github.com/apache/pulsar/pull/8201
贡献者:
@hangc0276(https://github.com/hangc0276)
???? C++ Client:为 C++ 客户端 HandleBase 添加 epoch,用于处理创建生产者时产生的超时问题。
PR 地址:
https://github.com/apache/pulsar/pull/8191
贡献者:
@hangc0276(https://github.com/hangc0276)
???? Dashboard:修复 Django 模型中 consumerName 迁移的问题。
PR 地址:
https://github.com/apache/pulsar/pull/8188
贡献者:
@sbourkeostk(https://github.com/sbourkeostk)
???? Go Client:修复 pulsarProducerSendCallbackProxy 的参数类型。
PR 地址:
https://github.com/apache/pulsar/pull/8186
贡献者:
@massakam(https://github.com/massakam)
???? Functions:将用户定义的参数传播到 Pulsar Go Functions 的实例中。
PR 地址:
https://github.com/apache/pulsar/pull/8132
贡献者:
@vaihtovirta(https://github.com/vaihtovirta)
???? Bookie:在 bookkeeper.conf 文件中暴露 ensemblePlacementPolicy。
PR 地址:
https://github.com/apache/pulsar/pull/8210
贡献者:
@hangc0276(https://github.com/hangc0276)
???? Broker:仅在配置拦截器时,支持拦截过滤器。
PR 地址:
https://github.com/apache/pulsar/pull/8157
贡献者:
@zymap(https://github.com/zymap)
???? Python Client:为 Python schema 字段添加默认值。
PR 地址:
https://github.com/apache/pulsar/pull/8122
贡献者:
@hangc0276(https://github.com/hangc0276)
重要 Bug 修复
因修复内容较多,仅列举较重要修复内容,不包括本周全部动态下面修复均已 Merge 进 Pulsar 主分支
???? C++ Client:修复 testIndividualAck 单元测试不稳定的问题。PR 地址:https://github.com/apache/pulsar/pull/8141 贡献者:@BewareMyPower(https://github.com/BewareMyPower)???? Client:修复 ConsumerImpl 内存泄露的问题。PR 地址:https://github.com/apache/pulsar/pull/8160 贡献者:@lhotari(https://github.com/lhotari)???? Broker:修复服务单元未就绪时返回 Pulsar 客户端错误码的问题。PR 地址:https://github.com/apache/pulsar/pull/8147 贡献者:@massakam(https://github.com/massakam)???? Schema:修复启动 BookkeeperSchemaStorage 时可能产生的空指针异常问题。PR 地址:https://github.com/apache/pulsar/pull/8172 贡献者:@MaiCw4J(https://github.com/MaiCw4J)???? Admin:修复订阅名称不存在时无法查看消息的问题。PR 地址:https://github.com/apache/pulsar/pull/8182 贡献者:@hangc0276(https://github.com/hangc0276)???? Client:修复暂停消费的消费者重新连接到 broker 时仍会收到新消息的问题。PR 地址:https://github.com/apache/pulsar/pull/8165 贡献者:@massakam(https://github.com/massakam)???? Broker:修复关闭 Pulsar 服务时引发的异常。PR 地址:https://github.com/apache/pulsar/pull/8197 贡献者:@hangc0276(https://github.com/hangc0276)???? Schema:修复 JSON schema 会将字节反序列化为字符串的问题。PR 地址:https://github.com/apache/pulsar/pull/8140 贡献者:@hangc0276(https://github.com/hangc0276)
作为全球性开源项目,截至 2020 年 10 月 9 日,Apache Pulsar 已拥有超出 300 名贡献者、6.6K+ Star 、1.6K+ Fork 。正是由于分布在全球各地的社区开发者的贡献,才使得 Apache Pulsar 项目不断发展与前进。
让我们期待下一周的 Apache Pulsar 周报!