Pulsar Message 訂閱類型


@

3,Pulsar Message

1,概論

Pulsar 是基於 發布-訂閱 式的消息中間件。

  • Producer(生產者)Message(消息) 發布Topic(主題)
  • Consumer(消費者) 訂閱 Topic(主題) 消費 Message(消息)

Message(消息)Producer(生產者) 生產發布(Publish)Topic(主題)

2,Message 構成

MessagePulsar 最基本的單元,就我而言,他是一個對數據的封裝

Message 由一下部分構成:

  • Value :存放數據的地方,默認是 Byte[] 字節數組,可以通過 Schema 修改
  • Key :數據的標簽
  • Properties :鍵/值對的自定義數據
  • Producer name :生產者的 name 值
  • Sequence ID :消息 在 Topic 的 有序序列 的 序列號
  • Publish time : 消息 發布時間
  • Event time :事件時間戳
  • TypedMessageBuilder : 消息 構造器,可以添加一些屬性來構造 消息
  • 等...

3,主題訂閱類型

Pulsar 的消息訂閱,一共有四種:

  • Exclusive
  • Failover
  • Shared
  • Key_Shared

3-1, Exclusive

  • 只允許有一個 Consumer(消費者) 加入 Subscription ,有其他 Consumer 試圖訂閱都會報錯

  • 如圖所示:

3-2,Failover

  • 允許多個 Consumer 加入同一個 Subscription ,如果 Consumer 連接異常,就由其他 Consumer 來接受消息

  • 如圖所示

3-3,Shared

  • 允許多個 Consumer 加入同一個 Subscription,消息會依次發送到不同的 Consumer
  • 同一個消息只會被一個 Consumer 消費,
  • 當一個 Consumer 連接異常,發送到該 Consumer未發送確認消息 的消息,會被重新發送給其他 Consumer

  • 如圖所示

3-4,Key_Shared

  • 允許多個 Consumer 加入同一個 Subscription
  • 擁有相同 Key 的消息會發送給同一個 Consumer

  • 如圖所示


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM