隨著企業(yè)自己不斷增長的系統(tǒng)和設(shè)備上產(chǎn)生越來越多的數(shù)據(jù),消息和事件流的解決方案(特別是Apache Kafka)已經(jīng)得到了廣泛采用。在過去一年里,我們一直在跟蹤Apache Pulsar(Pulsar)的進(jìn)展。它是一個(gè)由Yahoo貢獻(xiàn)的知名度較低但功能強(qiáng)大的開源解決方案。Pulsar被設(shè)計(jì)成可以智能地處理、分析和傳送來自不斷擴(kuò)展的服務(wù)和應(yīng)用里產(chǎn)生的數(shù)據(jù)。因此它非常適合多個(gè)先進(jìn)的數(shù)據(jù)平臺(tái)。Pulsar也被設(shè)計(jì)成可以減輕與復(fù)雜的分布式系統(tǒng)相關(guān)的運(yùn)維負(fù)擔(dān)。
誰對Pulsar感興趣?Streamlio的CEO Kathik Ramasamy非常大度地分享了最近這個(gè)項(xiàng)目首頁的訪問者的地理信息數(shù)據(jù)。

在幾千名訪問者中,33%來自美洲,36%來自亞太地區(qū),27%來則是來自歐洲、中東和非洲地區(qū)。
雖然到目前為止,Apache Kafka是最流行的發(fā)布/訂閱模式的解決方案。但是在過去一年里,我們已經(jīng)發(fā)現(xiàn)有多家公司在使用Pulsar。事實(shí)證明,Pulsar的一些特性是這些企業(yè)所重視的,包括:
- 多層架構(gòu):由服務(wù)層(由broker來協(xié)調(diào)消息的接收、存儲(chǔ)、處理和傳遞)、存儲(chǔ)層(用Apache BookKeeper節(jié)點(diǎn)持久化消息)和處理層(通過Pulsar函數(shù)和Pulsar SQL)組成。
- 高性能和可擴(kuò)展性:Yahoo已經(jīng)使用Pulsar多年了,每天處理兩百多萬個(gè)主題里超過1000億條的消息。Pulsar可以支持超過百萬的主題,同時(shí)還能保證高吞吐量和低延遲的性能。
- 很容易增加存儲(chǔ)和服務(wù)而不必重新平衡整個(gè)集群:多層架構(gòu)允許存儲(chǔ)可以被獨(dú)立地增加。同時(shí)也允許服務(wù)和存儲(chǔ)層的擴(kuò)展不需要停機(jī)。
- 支持流行的消息模式:包括發(fā)布/訂閱消息和消息隊(duì)列。
- 多租戶:一個(gè)Pulsar集群就可以支持整個(gè)企業(yè),允許每個(gè)團(tuán)隊(duì)都有單獨(dú)的命名空間和容量。
- 持久性(無數(shù)據(jù)丟失):數(shù)據(jù)被復(fù)制多份并同步到磁盤。
- 跨區(qū)域復(fù)制:開箱即用地支持地理上分布的應(yīng)用。Pulsar支持跨集群的數(shù)據(jù)復(fù)制的不同模式。
前一代的消息系統(tǒng)主要專注于移動(dòng)數(shù)據(jù),而像Pulsar這樣的新框架增加了數(shù)據(jù)處理功能,這些功能對于將數(shù)據(jù)提供給分析和人工智能應(yīng)用至關(guān)重要。隨著互聯(lián)設(shè)備的激增、5G的來臨和機(jī)器學(xué)習(xí)以及人工智能越來越重要,這都要求企業(yè)構(gòu)建能耐夠獲取、處理和傳輸大量數(shù)據(jù)流的基礎(chǔ)設(shè)施。而且企業(yè)對能實(shí)時(shí)完成這些任務(wù)的需求也在增加。好消息是核心的數(shù)據(jù)管理、處理、傳輸和調(diào)度的關(guān)鍵模塊也在持續(xù)被改進(jìn)。自動(dòng)化的技術(shù)將能持續(xù)地降低運(yùn)維的負(fù)擔(dān)。
相關(guān)內(nèi)容:
- Jesse Anderson的《用Pulsar的功能降低運(yùn)維開銷》
- 《一張簡單的幻燈片:誰對Spark NLP感興趣?》
- 《就一張圖表明:研究人員喜愛PyTorch和TensorFlow》
- Tyler Akidau的《Streaming 101》和《Streaming 102》
- 《Apache Kafka和對于生產(chǎn)級(jí)機(jī)器學(xué)習(xí)系統(tǒng)的四個(gè)挑戰(zhàn)》
- Jay Kreps的《從零開始?jí)虼罱ˋpache Kafka》
- Karthik Ramasamy《架構(gòu)設(shè)計(jì)和構(gòu)建端到端的流式應(yīng)用》
- 《對軟件開發(fā)而言機(jī)器學(xué)習(xí)意味著什么》



