脉冲星 3 月脉动 | Pulsar 2.7.1 版本发布!

2023-11-11 09:10

本文主要是介绍脉冲星 3 月脉动 | Pulsar 2.7.1 版本发布!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于 Apache Pulsar

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

导语

各位小伙伴们,2021 年 3 月 Pulsar 社区月报来啦!春天伊始,Pulsar 有哪些新气象呢?和我们一起来看看吧。

感谢以下各位社区成员本月对 Pulsar 项目的支持,让 Apache Pulsar 继续发光发热!(排名不分先后,看看你有没有上榜 ????????):

congbobo184、hangc0276、eolivelli 、Huanli-Meng、 lhotari、zymap、 jerrypeng、david-streamlio、michaeljmarshall、Anonymitaet、kandersen82、klwilson227、freeznet、MarvinCai、RobertIndie、rdhabalia、fmiguelez、315157973、sijia-w、sakurafly123、tuteng、congbobo184、dlg99、timmyyuan、Jennifer88huang、yangl、aahmed-se、BewareMyPower、caladogan、gaoran10、csthomas1、wuzhanpeng、linlinnn、mauza、xiaotongwang1、limingnihao、murong00、merlimat、codelipenghui、fanjeff、patricklucas、golden-yang、mlyahmed、limingnihao 、BewareMyPower、HugeSkull、hnail、massakam、wolfstudy、bithavoc

重要进展

Broker

Broker:支持获取应用的 BlacklogQuota
https://github.com/apache/pulsar/pull/9828

Broker:支持获取应用的 SubscriptionDispatchRate
https://github.com/apache/pulsar/pull/9827

Broker:将待处理的读订阅指标添加到 stats-internal。
https://github.com/apache/pulsar/pull/9788

Broker:为 PulsarService#getAdminClient 添加 NPE 检查。
https://github.com/apache/pulsar/pull/9782

Broker:防止使用无效的 broker 或 proxy configuration 设置授权。
https://github.com/apache/pulsar/pull/9746

Broker:将 getWorkerService 方法更改为抛出 UnsupportedOperationException
https://github.com/apache/pulsar/pull/9738

Broker:如果响应已经提交,则不添加 broker-address 标头。
https://github.com/apache/pulsar/pull/9744

Broker:验证 /offload 请求的参数。
https://github.com/apache/pulsar/pull/9737

Broker:支持获取已应用的 PersistencePolicies
https://github.com/apache/pulsar/pull/9831

Broker:支持获取已应用的 clusterSubscribeRate
https://github.com/apache/pulsar/pull/9832

Broker:支持获取已应用 dispatchRate
https://github.com/apache/pulsar/pull/9824

Broker:支持获取压缩阀值。
https://github.com/apache/pulsar/pull/10038

Build

Build:从 Pulsar docker 镜像中删除 .deb包。
https://github.com/apache/pulsar/pull/9811

Build:将 pulsar-io-kafka-connect-adaptor 拆分为 JAR 和 NAR 模块。
https://github.com/apache/pulsar/pull/9808

Build:启用详细的 Java 编译器告警。
https://github.com/apache/pulsar/pull/9780

Build:设置项目版本时,更新 terraform 文件中的 Pulsar 版本。
https://github.com/apache/pulsar/pull/9775

C++

C++ client:从 C++ 库中删除 gtest 文件。
https://github.com/apache/pulsar/pull/9816

C++ Client:实现 C++ producer 中内存限制。
https://github.com/apache/pulsar/pull/9676

CI

CI:在重试或继续执行下一测试之前,清除测试失败的状态。
https://github.com/apache/pulsar/pull/9823

CI:在CI测试中添加 apache-rat check。
https://github.com/apache/pulsar/pull/9815

CI:将集成测试命令重构为 run_integration_group.sh 脚本。
https://github.com/apache/pulsar/pull/9770

CI:使用 DiagnosticCommand JMX MBean 实现线程转储。
https://github.com/apache/pulsar/pull/9766

CI:通过仅涵盖选定的 connectors 来减小集成测试镜像的大小。
https://github.com/apache/pulsar/pull/9807

Client

Go client:将 JWT-Go 版本更新为 v4。
https://github.com/apache/pulsar-client-go/pull/481

Pulsar Client:支持输出GenericRecord 内容。
https://github.com/apache/pulsar/pull/9785

WebSocket Client:支持浏览器客户端进行 token 身份验证。
https://github.com/apache/pulsar/pull/9886

Pulsar-client:Pulsar REST API、pulsar-admin 和 pulsar-client CLI 工具增加获取 Pulsar 版本的命令。
https://github.com/apache/pulsar/pull/9975

Client: 支持为 MultiTopicsReaderImpl 设置多 topic。
https://github.com/apache/pulsar/pull/9995

Client:使用不同的 listener-threads 处理不同分区 topic 的消息。
https://github.com/apache/pulsar/pull/10017

Transaction

Transactions:对 End transaction 操作进行重试。
https://github.com/apache/pulsar/pull/9236

Transactions:支持检查 transaction 状态。
https://github.com/apache/pulsar/pull/9776

Transactions:实现 transaction 缓冲区快照。
https://github.com/apache/pulsar/pull/9490

Transactions:清除 transaction buffer 中取消的 transaction。
https://github.com/apache/pulsar/pull/9974

其他

Common:优化 ConcurrentOpenHashMap,缩短读锁死的持续时间。
https://github.com/apache/pulsar/pull/9787

WebSocket:在 WebSocket 服务器中支持 pong 逻辑。
https://github.com/apache/pulsar/pull/10035

WebSocket:允许 WebSocket proxy 在不解密的情况下将消息传递给客户端消费。
https://github.com/apache/pulsar/pull/10026

Authentication: 在AuthenticationTls 中支持序列化 stream-provider 字段。
https://github.com/apache/pulsar/pull/10020

Kafka:在 KafkaBytesSource 中支持 KeyValue
https://github.com/apache/pulsar/pull/10002

Pulsar SQL:支持查询大写的 topic。
https://github.com/apache/pulsar/pull/9980

Utils:转储 pulsar-perf 的 JVM 信息。
https://github.com/apache/pulsar/pull/9769

Deployment:更新 Ansible 的部署配置中 Pulsar 的版本至 2.7.0。
https://github.com/apache/pulsar/pull/9774

Pulsar-admin:添加命令以获取 leader broker 的 service URL。
https://github.com/apache/pulsar/pull/9799

Pulsar-Discovery:在 discoveryservice 中将 ZooKeeper 替换为 MetadataStore
https://github.com/apache/pulsar/pull/9967

Schema:将 Apache Avro 升级到 1.10.2 版本。
https://github.com/apache/pulsar/pull/9898

Metrics:添加 broker 连接指标。
https://github.com/apache/pulsar/pull/9876

Pulsar IO:Kafka source connector 支持管理 Avro 编码的消息。
https://github.com/apache/pulsar/pull/9448

Test::将 TestNG 组添加到 Pulsar broker。
https://github.com/apache/pulsar/pull/9712

Bug 修复

Broker

Broker:修复 2.7 分支上 Topic 为空时 hasMessageAvailable() 导致的错误。
https://github.com/apache/pulsar/pull/9798

Broker:修复 2.7 分支上获取 topic 应用策略时未检查 topic 所有权的问题。
https://github.com/apache/pulsar/pull/9781

Broker:修复主分支上获取 topic 应用策略时未检查 topic 所有权的问题。
https://github.com/apache/pulsar/pull/9767

Broker:修复PersistentReplicator 中的 NPE 和线程安全问题。
https://github.com/apache/pulsar/pull/9763

Broker:修复如果达到最大订阅限制,consumer 无法使用较旧的订阅来消费消息的问题。
https://github.com/apache/pulsar/pull/9758

Broker:即使 Web 服务无法关闭,也可以继续正常关闭 broker 服务。
https://github.com/apache/pulsar/pull/9835

Broker:记录在 ExecutorProvider 中超时后,在关闭时未终止的线程栈轨迹的日志。
https://github.com/apache/pulsar/pull/9840

Broker:支持在 broker.conf 文件中禁用 tenants/namespaces 强制删除。
https://github.com/apache/pulsar/pull/9819

Broker:允许 broker 发现并解锁卡住的订阅。
https://github.com/apache/pulsar/pull/9789

Broker:修复 zkBookieRackAffinityMapping 漏洞,支持 BookKeeper 的 dnsResolver
https://github.com/apache/pulsar/pull/9894

Broker:修复在 key_shared 订阅模式下无法消费非持久消息的问题。
https://github.com/apache/pulsar/pull/9826

Broker:修复更新 lastLedgerCreationInitiationTimestamp 时出现的时间单位错误的问题。
https://github.com/apache/pulsar/pull/10049

C++

C++:修复已暂停的零队列 consumer 仍预取消息的问题。
https://github.com/apache/pulsar/pull/10036

C++:支持简单地配置调试级别的日志。
https://github.com/apache/pulsar/pull/10031

C++:修复从接收到的消息 ID 中获取 topic 名称时的分割错误。
https://github.com/apache/pulsar/pull/10006

Client

Java client:修复 ClientCnx 中的 NPE。
https://github.com/apache/pulsar/pull/9761

Go client:修复 lookup service 中的 socket 泄漏的问题。
https://github.com/apache/pulsar-client-go/pull/478

Client:确保可以关闭单 topic 的 consumer。
https://github.com/apache/pulsar/pull/9849

Client:修复从字节数组反序列化时未设置批处理大小的问题。
https://github.com/apache/pulsar/pull/9855

Client:修复当达到最大订阅数时执行的无用重试的问题。
https://github.com/apache/pulsar/pull/9991

Functions

Functions:启用服务器端路由以存储状态。
https://github.com/apache/pulsar/pull/9978

Functions:传递来自 Pulsar source 的记录属性。
https://github.com/apache/pulsar/pull/9943

Schema

Schema:暴露 struct schema 的原始记录。
https://github.com/apache/pulsar/pull/9614

Schema:修复当 consumer 订阅没有 shcema 的空 topic 时,未添加 schema 的问题。
https://github.com/apache/pulsar/pull/9853

Schema:添加 schema 类型验证。
https://github.com/apache/pulsar/pull/9797

Schema:修复因 SchemaInfo 属性为空而引起的 NPE 问题。
https://github.com/apache/pulsar/pull/9985

Schema:修复由 topic 使用 schema KeyValue <GenericRecord, GenericRecord> 引起的 OutOfMemoryError 错误。
https://github.com/apache/pulsar/pull/9981

其他

Maven:添加 jersey-client 作为 pulsar-client-auth-sasl 的依赖。
https://github.com/apache/pulsar/pull/10055

Build:修复在 Docker 中构建 wheel 文件时可能出现的名称不匹配的错误。
https://github.com/apache/pulsar/pull/10051

Flaky test:修复 CurrentLedgerRolloverIfFullTest flaky test。
https://github.com/apache/pulsar/pull/10004

Transactions:修复 transaction 日志的追加同步问题。
https://github.com/apache/pulsar/pull/9238

Topic:当禁用自动创建功能时,仍可以自动创建 topic partition。
https://github.com/apache/pulsar/pull/9786

Consumer:删除断开连接的 consumer,以进行自动发现。
https://github.com/apache/pulsar/pull/9660

Pulsar-perf:修复 pulsar-perf CLI 工具,确保与以前版本的兼容。
https://github.com/apache/pulsar/pull/9838

CI:修复 transaction flaky test。
https://github.com/apache/pulsar/pull/9934

Build:修复 ahc-default.properties 文件的阴影。
https://github.com/apache/pulsar/pull/10007

技术干货

•Taking an In-Depth Look at How to Achieve Isolation in Pulsar[1]•How To Get Started With Apache Pulsar On Docker[2]•译文 | Apache Pulsar 集群如何确保消息不丢•Apache Pulsar 在能源互联网领域的落地实践•StreamNative 宣布开源 AWS SQS Connector•Apache BookKeeper 4.13.0发布•博文推荐|Pulsar 存储空间不释放的问题分析与解决方法•译文|选择 Apache Pulsar 而非 Kafka 的 10 个理由•Apache Pulsar PMC成员翟佳:Pulsar 2021 展望与规划•博文推荐 | 一文带你看懂 Pulsar 的消息保留和过期策略•博文推荐|深度解析如何在 Pulsar 中实现隔离•译文|借助 Pulsar Functions 迁移到无服务应用程序


以上就是 2021 年 3 月份的脉动之旅。Apache Pulsar 正在快速成长,感谢来自大家的支持!

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

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

相关阅读

•脉冲星 2 月脉动 | Pulsar 的正月•脉冲星 1 月脉动 | Pulsar Flink Connector 2.7.0 发布

引用链接

[1] Taking an In-Depth Look at How to Achieve Isolation in Pulsar: https://streamnative.io/en/blog/tech/2021-03-02-taking-an-in-depth-look-at-how-to-achieve-isolation-in-pulsar
[2] How To Get Started With Apache Pulsar On Docker: https://www.lionbloggertech.com/apache-pulsar-on-docker/?utm_source=ReviveOldPost&utm_medium=social&utm_campaign=ReviveOldPost
[3] 新手向|非技术人员如何参与 Pulsar 项目进行贡献: http://mp.weixin.qq.com/s?__biz=MzUxOTc4NDc2MQ==&mid=2247485062&idx=1&sn=0f44cc772d46ac0c937eea478bcadb18&chksm=f9f516d0ce829fc67b0c08e9ee08263314785b0fe5c3064593755bfad4134c2795b8e3eb998d&scene=21#wechat_redirect


点击「阅读原文」,为 Pulsar 点赞!

这篇关于脉冲星 3 月脉动 | Pulsar 2.7.1 版本发布!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/389004

相关文章

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提

JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)

《JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)》本文介绍了如何在Windows系统上配置多版本JDK(以JDK8和JDK17为例),并通过图文结合的方式给大家讲解了详细步骤,具有... 目录第一步 下载安装JDK第二步 配置环境变量第三步 切换JDK版本并验证可能遇到的问题前提:公司常