Apache Pulsar 2023 年度回顧
前兩天 Pulsar 社區發布了 2023 年年度回顧,去年我也花了一些時間參與社區,所以其中一些內容感受挺明顯的,以下就是對一些重點內容的提煉。
2023 年是一個重要的里程碑,參與主倉庫貢獻的開發者達到了 600 位。 自從 Pulsar 從 2018 畢業成為 Apache 頂級項目至今一共又 12K+ 的代碼提交次數、639 位貢獻者、12.2k star、3.5k fork、10k+ 的 slack 用戶。
2023 高光時刻
第一個 LTS 3.0 里程碑版本
圖片
社區發布 Apache Pulsar 3.0,這是第一個長期支持 (LTS) 版本,從 Pulsar 3.0 開始,可以滿足不同用戶對穩定性和新功能的需求,同時減輕維護歷史版本的負擔。
以往的版本發布周期很短,一般是 3~4 個月,為了可以跟上社區新版,往往需要不停的升級,對維護中的負擔較大。
今后的維護時間表如上圖,以穩定為主的團隊可以選擇 LTS 版本,追求新功能的團隊可以選擇 feature 版本。
新的官方網站
https://pulsar.apache.org/官方網站得到了新的設計。
Pulsar Admin Go Library
提供了 Pulsar Admin Go 的客戶端,方便 Go 用戶管理 Pulsar 資源
使用 OTel 增強 Pulsar 的可觀測系統
PIP-264 提案已經獲得了社區批準開始開發,它將解決 topic 數量達到 50k~100M 的可觀測性問題。 同時 Pulsar 社區已經為 OpenTelemetry 提交了兩個特性 Near-zero memory allocations metric filtering upon collection 已經作為了 OpenTelemetry 的規范。
主要事件回顧
2023 年,Pulsar 社區在全球范圍內舉辦了一系列活動。
- Pulsar Summit Europe 2023
- CommunityOverCode Asia 2023
- CommunityOverCode NA 2023
- Pulsar Summit NA 2023
社區成長
沒有貢獻者社區很難發展,2023年加入了許多新面孔。
- 639 位貢獻者
- 13.4k Github star
- 3.5k fork
- 新增 8 位 Committers
- 新增 6 位 PMC
- 10k+ slack 用戶
- 20M+ docker pulls
項目發布
2023年,社區發布了兩個 major version 和 12 個 minor version 版本;最大的里程碑依然是發布了首個 LTS 版本 Pulsar3.0。 超過了 140 個貢獻者提交了大約 1500 次提交。
同時也帶來了一些重要的特性,比如新版本的負載均衡器,大規模的延時消息支持。
更新了以下一些客戶端:
- Pulsar C++ Client 3.4.2
- Pulsar Go Client 0.11.1
- Pulsar Node.js Client 1.9.0
- Pulsar Python Client 3.3.0
- Pulsar Manager 0.4.0
- Pulsar Helm Chart 3.1.0
- Pulsar dotnet Client 3.1.1
- Reactive Client for Apache Pulsar 0.1.0
生態系統
2023 年Pulsar 社區也與多個開源項目進行了集成:
- Quarkus Extension for Apache Pulsar,通過事件驅動在 Quarkus 使用 Pulsar。
- Spring for Apache Pulsar 提供了 PulsarTemplate 用于生產消息,PulsarListener 注解可以方便的消費消息,在 spring 生態下更容易集成 Pulsar
- Oxia:可以使用 Oxia 提到 zookeeper 從而突破 Pulsar 支持 1M topic 的限制。
2024年計劃
OTel
繼續推進使用 OpenTelemetry 替換現有的可觀測性系統
限流重構
PIP-322 Pulsar Rate Limiting Refactoring限流重構已經被合并,將在 3.2 版本中發布。
移除 Pulsar SQL 模塊
將 SQL 模塊移除后有效的減少了鏡像大小以及構建時間。
事件
2024 年將會繼續舉辦活動,包括 Pulsar Summit North America 和 Pulsar Summit APAC。在這里可以查看以往的活動。
??參考鏈接:
- https://youtube.com/playlist?list=PLqRma1oIkcWhOZ6W-g4D_3JNxJzYnwLNX&si=o6G-fRcNgW9zqHGa
- https://github.com/apache/pulsar/wiki/Community-Meetings
- https://pulsar.apache.org/blog/2024/01/12/pulsar-2023-year-in-review/