🔍 本月看点速览
产品动态
新增 PIP(2.6.0)
新增功能(2.6.0)
Bug 修复(2.6.0)
社区动态
海内外社区动态
技术干货
🧰 产 品 动 态
5 月 19 日,Pulsar 发布了2.5.2 版本。具体更新细节和下载链接可以查看文章:Apache Pulsar 发布 2.5.2 版本 。
Pulsar Client 版本更新:
Pulsar Client 1.1.0 版本发布,支持 schema 特性。
https://www.nuget.org/packages/Pulsar.Client/Pulsar Client 1.2.0 版本发布,支持 deduplication、statistics 和 backpressure 等特性。
https://www.nuget.org/packages/Pulsar.Client/1.2.0
新增 PIP
(2.6.0)
PIP 63 : 增加只读 Topic Ownership 支持
https://github.com/apache/pulsar/wiki/PIP-63%3A-Readonly-Topic-Ownership-Support
Pulsar 经常被用作数据总线来统一用户所有的数据。同一个数据源通常会被众多的应用共同消费。当一个 Topic 的订阅数量很多时,会出现如下的问题:
Broker 的带宽限制了单个 Topic 所能支持的订阅数量
不同的订阅会竞争 broker 的网络带宽会导致不同的响应速度
当同步异地消息时,要尽量减少异地直接访问 broker
该 PIP 增加了只读 Topic 的 Ownership 支持。如果 Pulsar 支持只读的 Ownership,那么用户就可以设置只读的 broker 集群根据服务的重要行来隔离他们的流量。这样 Pulsar 就可以支持更大数量的订阅。
PIP 64: 增加 REST 端口用于生产,消费以及读取数据
https://github.com/apache/pulsar/wiki/PIP-64%3A-Introduce-REST-endpoints-for-producing%2C-consuming-and-reading-messages
目前 Pulsar 提供 REST 端口用于管理 Pulsar 集群中的资源并且查询资源的状态。但 Pulsar 并没有提供通过网页服务来生产、消费、读取数据的能力。
对于希望通过 HTTP 来与 Pulsar 交互的应用来说非常的不便。该 PIP 引入 REST 端口来支持这一类生产、消费、读取数据的需求。
PIP 65: 改进 Pulsar IO Source 来支持批量数据源
https://github.com/apache/pulsar/wiki/PIP-65%3A-Adapting-Pulsar-IO-Sources-to-support-Batch-Sources
当前 Pulsar IO 提供了简单的 SDK 以及灵活的运行时来支持导入或导出到不同的数据源。SDK 主要支持具有流数据特性的数据源(例如 AWS Kinesis)。但是例如文件或者对象应用等众多的数据源并不具备流数据的特性。
文件以及数据对象会不停地被添加到应用中,然后再复制到 Pulsar。当新数据到来时该应用能够通知 Pulsar(比如 S3 的新对象创建通知服务)或者 Pulsar 能够定时地去获得数据(比如 FTP 服务)。在以上两种情况中,都需要:
1. 发现需要被导入的新数据
2. 通过触发机制导入该数据
该 PIP 提出了增强 SDK 用于支持这一类的批数据源。
📝 新 增 功 能
(2.6.0)
增加 Annotation 用于 Config 类的成员检查
https://github.com/apache/pulsar/pull/6972
增加在 Functions 和 Sources 中创建 Consumer
https://github.com/apache/pulsar/pull/6954ThreadRuntime 允许用户提供自定义 Secret Provicer
https://github.com/apache/pulsar/pull/6971允许 Source 向某个 Topic 发送消息
https://github.com/apache/pulsar/pull/6941
允许配置 NAR 文件的解压提取位置
https://github.com/apache/pulsar/pull/6933
Pulsar SQL 支持 Avro Schema 的 ByteBuffer 类型
https://github.com/apache/pulsar/pull/6925
允许在 SchemaDefinition 中注册 schema reader 和 writer
https://github.com/apache/pulsar/pull/6905
添加 DynamoDB 数据源
https://github.com/apache/pulsar/pull/6874
允许用户在 Namespace 下设置订阅过期时间
https://github.com/apache/pulsar/pull/6851
添加 jdbc sink: postgres, mariadb, clickhouse
https://github.com/apache/pulsar/pull/6835
📝 Bug 修复
(2.6.0)
修复了在 Shared 订阅模式下消息发送停止的情况
https://github.com/apache/pulsar/pull/6966
修复了重启 Broker 之后 topicPublishRateLimiter 未生效的情况
https://github.com/apache/pulsar/pull/6893
处理 topic.addProducer 产生的异常
https://github.com/apache/pulsar/pull/6881
修复 Pulsar Admin 线程数量过多的问题
https://github.com/apache/pulsar/pull/6940
修复 ttlDurationDefaultInSeconds 配置未生效的问题
https://github.com/apache/pulsar/pull/6920
释放 Pending Message Queue 中的未利用空间
https://github.com/apache/pulsar/pull/6926
清理不存在 Topic 的 Producer
https://github.com/apache/pulsar/pull/6879
修复 Python 客户端使用 schema 对 enum 类型的序列化
https://github.com/apache/pulsar/pull/6808
修复 function update 的参数验证
https://github.com/apache/pulsar/pull/6888
确保 dangling consumer 被清理
https://github.com/apache/pulsar/pull/6778
🧐 社区动态
📣 Pulsar Summit 2020 线上峰会即将开始
作为 Pulsar 的第一次国际性会议,第一届的 Pulsar Summit 将采取线上方式,跨越不同时区为大家带来众多国际公司落地实践的案例分享。
6 月 17-18 日,为期两天的 Pulsar Summit 将让用户免费享受到极致的技术盛宴,普惠全球开发者用户。
更多活动细节和报名,可以查看文章 Pulsar Summit 2020 线上峰会即将启程!
📣 Pulsar 线上训练营开启!
在 Pulsar Summit 开始前,也开启了为期 4 天的线上训练营,跟着 Pulsar 专家 Jesse Anderson 来学习如何使用 Pulsar 来开发应用程序。
具体时间为 6 月 11 日、12 日、15 日和 16 日,北京时间每天晚上的 11 点到 凌晨 2 点。主要面向技术人员、软件工程师、QA、分析师等,内容是建立在中级 Java 基础之上。
通过此训练,你可以学到:
如何使用 Pulsar 创建大型实时系统
实时分布式系统与批处理系统有何不同
如何创造 Pulsar 生产者和消费者
如何使用 Apache Avro 与 Pulsar 解决企业级问题
如何使用 Pulsar Functions 创建数据管道
如何使用现有的 SQL 技能与 Pulsar SQL 结合
🔗报名链接:
http://dwz.date/aRVg
📣 StreamNative Hub 来啦!
五月底,由 StreamNative 团队首发的 StreamNative Hub 已正式上线。这是一个在线服务平台,为 Pulsar 生态系统提供丰富的集成和插件。
在这里,你可以查找、下载、使用、存储、分享与 Pulsar 相关的插件(涉及数据处理、日志、监控、认证、部署等方面),安心享受一站式服务。
更多详情参考 StreamNative Hub — Pulsar 生态圈的“活水源” 。
📣 TGIP 直播系列更新
本月,TGIP 英文直播系列更新了 4 集,TGIP-CN 中文直播系列更新了 4 集。具体详情可参考下方:
009: Introduction of Apache BookKeeper
https://www.youtube.com/watch?v=g4CAhQLCt5U010: BookKeeper LAC protocol
https://www.youtube.com/watch?v=7etLdsC-qbM011: BookKeeper AutoRecovery
https://www.youtube.com/watch?v=w14OoOUkyvo
012: Introduction of Pulsar Schema
https://www.youtube.com/watch?v=p0PRhwjzKNo
014 直播回放:Pulsar 在腾讯平台内的跨城应用
https://www.bilibili.com/video/BV1T741147B6?p=13
📣 网络研讨会喜加一
5 月 26 日,来自 Nutanix 的高级软件开发工程师 Shivji Jha 为大家带来了关于「Lessons From Managing A Pulsar Cluster」内容的网络研讨会。
直播回放:
https://www.youtube.com/watch?v=zAHxgG_U67Q
相关 slides:
https://www.slideshare.net/streamnative/lessons-from-managing-a-pulsar-cluster-nutanix
哦对了,说起 Pulsar 与其他数据系统的集成,StreamNative 的申毅杰在 5 月 12 日通过 Flink 平台,为大家线上分享了「Flink Pulsar Connector 机制剖析」的相关内容。
视频回放:
https://www.bilibili.com/video/BV1YQ4y1A7VN
📣 Podcast 和其它
本月来自 StreamNative 的郭斯杰参与了 Data Engineering 的播客,分享了内容为「StreamNative Brings Streaming Data To The Cloud Native Landscape With Pulsar」的音频。
https://www.dataengineeringpodcast.com/streamnative-pulsar-streaming-data-episode-132/
同时,我们很高兴看到 Pulsar 因其易于扩展的特性而受到了更多关注,在第 22 期的 ThoughtWorks Technology Radar 中,Pulsar 很荣幸的出镜了!
https://assets.thoughtworks.com/assets/technology-radar-vol-22-en.pdf
📚 技 术 博 客
Why Zhaopin Chooses Pulsar SQL for Search Log Analysis
https://streamnative.io/blog/tech/2020-05-07-zhaopin-tech-blog/How Apache Pulsar Helps Streamline Message System and Reduces O&M Costs at Tuya Smart
https://streamnative.io/blog/tech/2020-05-08-tuya-tech-blog/How to Build a Distributed Database with Apache BookKeeper — Part 3
https://streamnative.io/blog/tech/2020-05-12-distributed-database-bk3/How to debug a pulsar function using testcontainers
https://lanwen.ru/posts/pulsar-functions-how-to-debug-with-testcontainers/One new contestant to bring down the king: Apache Pulsar
https://medium.com/@alexandrev/one-new-contestant-to-bring-down-the-king-apache-pulsar-9a9959ff1a48Pulsar gets more attentions and it is mentioned in "ThoughtWorks Technology Radar Vol.22"
https://assets.thoughtworks.com/assets/technology-radar-vol-22-en.pdf
总 结
以上就是 5 月份的脉动之旅。2020 年即将过半,希望大家在接下来的时间里也能每天开心,每天进步。
Apache Pulsar 社区鼓励大家积极参与开源社区,无论是文档、代码、翻译,还是技术博客,都欢迎大家积极参与,早日成为 Pulsar contributor,一起加油鸭。
如果你对 Pulsar Contribute 的流程不太熟练,也可以参考我们这篇小教程,让你熟悉如何通过 GitHub 对 Pulsar 进行贡献 新手向|非技术人员如何参与 Pulsar 项目进行贡献。
参与贡献项目可选:
1. Apache Pulsar 项目:
https://github.com/apache/pulsar
2. Pulsar 技术文档翻译:
https://github.com/apache/pulsar-translation

本文分享自微信公众号 - StreamNative(StreamNative)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
来源:oschina
链接:https://my.oschina.net/u/3742918/blog/4466439