• 产品动态

    • 新增 PIP

    • 新增功能(2.7.0)

    • Bug 修复(2.7.0)

  • 社区动态

    • 海内外社区动态

    • 技术干货


产品动态

本月 Pulsar 虽然没有版本的升级,但是修复了一些 bug,提升了稳定性,并且引入了一些新的特性。

Pulsar.NET Client 在本月发布了 1.4.2 和 1.4.3 版本。

更多详情可参考:

https://www.nuget.org/packages/Pulsar.Client/1.4.2

https://www.nuget.org/packages/Pulsar.Client/1.4.3

新增 PIP

PIP 68: Exclusive Producer

PIP 68 为 Pulsar 带来了 Exclusive 模式的 Producer,它为 topic 提供了单点写入的特性,保证了一个 topic 仅存在唯一的生产者来生产消息。

更多详情可参考:

https://github.com/apache/pulsar/wiki/PIP-68%3A-Exclusive-Producer

新 增 功 能
(2.7.0)

  • 为 Pulsar Functions 添加手动负载均衡功能

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

  • 优化 Bundle 拆分后的卸载操作

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

  • Pulsar Java 客户端支持使用 OAuth 2.0 进行验证

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

  • 优化 Pulsar Functions 的 TLS 相关参数名称

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

  • 优化获取 Pulsar CPU 指标的方式

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

  • Pulsar C++ 客户端支持使用 OAuth 2.0 进行验证

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

  • 细分对 Pulsar Functions / Source / Sink 操作的授权

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

  • 为 Pulsar Functions 添加定期负载均衡的功能

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

  • 支持用户使用 Kubernetes 环境时自定义不同语言的 Pulsar Functions Docker 镜像

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

  • 使 Pulsar Client 支持用户自定义消息重试的延迟时间

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

  • 为 Pulsar 添加不同环境的 Maven 模块配置

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

  • 更新 Jersey 版本,从 2.27 升级至 2.31

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

  • 更新 Jackson 版本,从 2.10.1 升级至 2.11.1

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

  • 为 Pulsar CI action 增加 Github Maven cache

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

Bug 修复

(2.6.0)

  • 修复 GCS offload 失败的问题
    https://github.com/apache/pulsar/pull/7435


  • 修复 producer 创建 ledger 时,由于 BookKeeper 地址无法处理导致的 NPE 问题
    https://github.com/apache/pulsar/pull/7401

  • 修复无法动态修改跨地域复制集群的问题
    https://github.com/apache/pulsar/pull/7514

  • 修复创建 Function 请求可能触发死锁的问题
    https://github.com/apache/pulsar/pull/7508

  • 修复获取最大 messageId 时,由于读取无效的 entry -1 引起的错误响应
    https://github.com/apache/pulsar/pull/7495

  • 修复向 consumer 分发消息时可能出现的 ArrayIndexOutOfBoundsException 异常
    https://github.com/apache/pulsar/pull/7483

  • 修复删除完成 offload 的数据时可能出现的 NPE 问题
    https://github.com/apache/pulsar/pull/7389

  • 修复修改非持久化 topic parition 数量错误的问题
    https://github.com/apache/pulsar/pull/7459

  • 修复批量 Ack 可能出现的 recycled multiple times 异常
    https://github.com/apache/pulsar/pull/7409

  • 为 ManagedLedgerFactory 打开新的 Ledger 添加超时机制
    https://github.com/apache/pulsar/pull/7506

  • 修复当 Broker 未启用 key_shared 特性时,在 Client 收到的 NotAllowed 异常
    https://github.com/apache/pulsar/pull/7430

  • 修复无法为 protobuf 的 repeated long 属性生成正确的代码
    https://github.com/apache/pulsar/pull/7540

  • 确保创建 Subscription 超时的情况下操作可以被终结
    https://github.com/apache/pulsar/pull/7522

  • 修复 KeyShared 模式下无法正常消费压缩消息的问题
    https://github.com/apache/pulsar/pull/7416

  • 修复一处 Pulsar Functions 2.6 向 2.5 兼容的问题
    https://github.com/apache/pulsar/pull/7528

  • 优雅地关闭已删除 producer 和 consumer
    https://github.com/apache/pulsar/pull/7473

  • 修复删除 topic 时,topic 被立刻重新创建的问题
    https://github.com/apache/pulsar/pull/7524

  • 当一个 function worker 成为 leader 后,在停止任务分配消费者前开启任务分配 topic 生产者

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


社区动态

TGI Pular 直播更新中

 TGIP

015:What's New in Pulsar 2.6.0 

https://www.youtube.com/watch?v=bPczhvnHnzI

016:Backlog and StorageSize

https://www.youtube.com/watch?v=PIX570nyq_c

 TGIP-CN

015: Pulsar Summit 精华版中文(一)

016: Pulsar Summit 精华版中文(二)

017: What's new in Pulsar 2.6.0

018: Pulsar Functions Deep Dive

 Whitepaper 又增新文章

本月 StreamNative 官网新增两份白皮书,主要描述了 Pulsar 与 Kafka 在其功能、性能、用例等方面的对比,可以更清楚直观的了解两种消息处理系统。白皮书下载链接如下:

https://streamnative.io/whitepaper/pulsar-vs-kafka

网络研讨会喜加一

美国时间 7 月 28 日,由高级工程师 Matteo Merli, Joe Frances, Addison Higham 和 Sijie Guo 为大家带来关于「How to Operate Pulsar in Production」相关话题的研讨分享。

视频回放:https://www.youtube.com/watch?v=mncXc_T6JkU

技 术 博 客

  • 为什么选择 Apache BookKeeper — Part 2

  • 使用 AWS S3 offloader 卸载存储在 BookKeeper 中的数据

  • Pulsar IO 简介

  • Taking messaging and data ingestion systems to the next level
    https://streamnative.io/blog/tech/2020-07-08-podcast

  • Event-driven Functions with Apache Pulsar & Project Flogo
    https://hackernoon.com/event-driven-functions-with-apache-pulsar-and-project-flogo-wag3y4u


以上就是 7 月份的脉动之旅。2020 年已过半,希望大家在接下来的时间里也能每天开心,每天进步。

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

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

参与贡献项目可选:

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

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