> PIP-49:梳理 Pulsar Admin API 的权限机制
用户可以通过 Pulsar Admin API 管理 Pulsar 实例中的所有重要实体,例如 tenants,topics 和 namespace 等。当前的 Pulsar Admin API 中存在一些要求不当的操作权限问题,因此 PIP-49 审查了所有 admin 命令,并提出操作权限的具体修订方式。
更多信息,参阅 PIP-49
https://github.com/apache/pulsar/wiki/PIP-49%3A-Permission-levels-and-inheritance
> PIP-43:Producer 生产不同 Schema 的消息
当前,Producer 只能发送一种 Schema 的消息,这个 Schema 可在创建 producer 时指定,也可以通过指定 AUTO_PRODUCE_BYTES 由 producer 从 broker 主动获取。然而一个 topic 的 schema 可在 producer 启动后改变,从而导致 producer 发送消息失败。同时,在从 Kafka 向 Pulsar 复制消息的场景下,一个 producer 可能需要从一个 Kafka partition 复制多种 Schema 数据到一个 Pulsar partition 中,以保障消息的顺序。
PIP-43 提出了创建新 message 的接口,允许在创建 message 时指定 Schema。
TypedMessageBuilder<T> newMessage(Schema<T> schema);
更多信息,参阅 PIP-43
https://github.com/apache/pulsar/wiki/PIP-43%3A-producer-send-message-with-different-schema
> PIP-34:Key_shared 订阅模式下的 sticky consumer
Key_shared 订阅模式下的 sticky consumer 允许 consumer 在创建时指定其消费的 Key range,从而保障属于 Key range 的所有消息被同一个 consumer 消费。PIP-34 实现后,Pulsar 可以提升 flink-pulsar-connector / spark-pulsar-connector 的数据源并行度,同时保持消费的 Exaclty-once 语义。
更多信息,参阅 PIP-34
https://github.com/apache/pulsar/wiki/PIP-34%3A-Add-new-subscribe-type-Key_shared
> PIP-38:Java 客户端支持批量 Message 接收
很多场景下,在消息的实际消费过程中,批量接收消息可以简化应用的使用,提升应用的吞吐率。PIP-38 支持用户用如下方式批量接收消息:
Messages messages = consumer.batchReceive();
// execute user's batch operation
consumer.acknowledge(messages);
并以如下方式设置批量接收的策略:
Consumer<String> consumer = pulsarClient.newConsumer(Schema.STRING)
.topic(topic)
.subscriptionName("s1")
.batchReceivePolicy(BatchReceivePolicy.builder()
.maxNumberOfMessages(10)
.build())
.subscribe();
更多信息,参阅 PIP-38
https://github.com/apache/pulsar/wiki/PIP-38%3A-Batch-Receiving-Messages
>> Pulsar-Manager 启动首个 Apache release 投票
Pulsar Manager 是一个基于 web 的 GUI 工具,用于管理和监控 Pulsar 实例,在本月开始了其首次 Apache release 投票。更多信息,参阅 release 投票邮件:
https://lists.apache.org/thread.html/daf65d184d1a99336753b8c548714ca884705216ded090db145f3388@%3Cdev.pulsar.apache.org%3E
>> Pulsar 2.4.2 版本开始投票
Pulsar 2.4.2 版本已经进入投票发布阶段,投票进展详情可参考下方。更多信息可参考:
https://lists.apache.org/thread.html/3e61e3e2e75fb3b096744bdb9fb5b16399611c8b5cee4a7b1a95c4de@%3Cdev.pulsar.apache.org%3E
>> Pulsar 2.5.0 版本发布讨论
距离 Pulsar 2.4.0 版本的发布已经过去 5 个月,很多功能特性加入了 2.5.0 版本中,因此郭斯杰提议加快 2.5.0 版本的发布进展。
详情参考:
https://lists.apache.org/thread.html/2135d54d33eee35ca7f8db927185bef0c57f98d9f9ea267d36fbca14@%3Cdev.pulsar.apache.org%3E
>> MongoDB 的 CDC connector
在 PR-5590 中,实现了在 pular-io-debezium 组件中加入 MongoDB 模块。
详情参考 PR-5590:
https://github.com/apache/pulsar/pull/5590
>> Java 客户端引入`batchingMaxBytes` 的 producer 设置
不同应用程序之间的消息大小可能不同。使用大量消息来估计用于批处理的资源会导致不可预测性。
在PR-5045中,引入了一个新的设置 `batchingMaxBytes`,允许应用程序以更好的方式规划批处理的资源使用。
详情参考 PR-5045:
https://github.com/apache/pulsar/pull/5045
>> C++ / Python 客户端支持 seek-by-time
更新 cpp 和 pythonapi: 重载以接受时间戳和 MessageID Reader 获得 seek ()
详情参考 PR-5542:
https://github.com/apache/pulsar/pull/5542
>> COSCon 2019 中国开源年会
11 月 3 日,COSCon 2019 中国开源年会在上海圆满结束。来自 StreamNative 的翟佳、Jennifer Huang 和 Yu Liu 应邀参加,分享了 Apache Pulsar 项目和社区发展情况。
翟佳在技术专场为大家详细介绍了 Apache Pulsar—— Apache Pulsar:从消息系统到流原生平台。Jennifer 和 Yu 分享了 Apache Pulsar 社区的发展和运营情况——Recap | COSCon 2019 中国开源年会:Apache Pulsar 项目和社区分享。
11 月 16 日,StreamNative 联合甜橙金融、涂鸦智能和智联招聘在上海虹口科技金融大厦举办了 Apache Pulsar 线下技术交流会。
众多 Pulsar 社区的技术爱好者们齐聚一堂,参与了此次分享,并与演讲嘉宾进行了热烈的讨论和互动,收获满满。
此次线下分享的内容回顾:Recap | Apache Pulsar Meetup 上海站
会议完整视频可参考:
https://www.bilibili.com/video/av76210979
>> Flink Forward Asia 2019 11 月 28 日至 29 日,Flink Forward Asia 2019 在北京国家会议中心举行。来自 StreamNative 的申毅杰参与了「开源大数据生态」专场,为大家带来《基于 Pulsar 和 Flink 进行批流一体的弹性数据处理》的分享。 演讲原文件可点击链接获取:
https://www.slidestalk.com/ApachePulsar/43pulsarflink41384 相关内容可参考:
-
基于 Pulsar 和 Flink 进行批流一体的弹性数据处理
-
如何基于 Pulsar + Flink 构建下一代实时数据仓库
https://www.youtube.com/watch?v=De6avNyQUMw>> Apache BookKeeper 5 周年庆 Apache BookKeeper 成立 5 周年,Apache BookKeeper committee 成员共同庆祝该项目成立 5 周年。更多详情可查看:
https://projects.apache.org/committee.html?bookkeeper >> Devoxx Morocco 2019 Devoxx Morocco 2019 于 11 月 12 日至 14 日在阿加迪尔举行。Bruno Bonnin 参加了这次会议,并发表了有关“使用 Apache Pulsar 进行流处理”的演讲。更多详情可查看:
https://twitter.com/ZenikaNantes/status/1194948501425274880>> KubeCon + CloudNativeCon North America 2019 11 月 18 日至 21 日 KubeCon 在美国圣地亚哥举行。雅虎日本的 Pulsar 团队和 Athenz 团队在 KubeCon 上大力宣传了 Apache Pulsar 社区,现场有 400+ 参会者参观并了解了 Pulsar。 更多详情可参考:
https://twitter.com/Jennife06125739/status/1197930239646732295 https://events19.linuxfoundation.org/events/kubecon-cloudnativecon-north-america-2019/sponsor/
本月发布了多篇中英技术文档和用户案例。
- Pulsar IO 中 Schema 的调用流程
-
Apache Pulsar — One Cluster for the Entire Enterprise Using Multi-Tenancy
????https://medium.com/capital-one-tech/apache-pulsar-one-cluster-for-the-entire-enterprise-using-multi-tenancy-ac0bd925fbdf -
Apache Pulsar: configuring tiered-storage (AWS S3) via HELM
????https://www.syscrest.com/2019/11/apache-pulsar-tiered-storage-helm-aws-s3/ -
Introduction to Apache Pulsar — Concepts, Architecture & Java Clients
????https://medium.com/streamthoughts/introduction-to-apache-pulsar-concepts-architecture-java-clients-71f1a30b75d6
以上是 11 月的脉动之旅,感谢小伙伴们的全程陪伴。
Apache Pulsar 社区鼓励大家积极参与开源社区,无论是文档、代码、翻译,还是技术博客,都欢迎大家积极参与,早日成为 Pulsar contributor,一起加油鸭。
????♂️Apache Pulsar 项目:
https://github.com/apache/pulsar
????♂️Contribute 流程:
http://pulsar.apache.org/en/contributing/
????♂️文档翻译流程:
https://github.com/apache/pulsar-translation