詳解Kafka訊息佇列的兩種模式

2021-10-24 07:14:16 字數 452 閱讀 9147

1. 點對點模式(一對一)

訊息生產者生產訊息傳送到queue中,然後訊息消費者從queue中取出並且消費訊息。訊息被消費以後,queue中不再儲存該條訊息,所以訊息消費者不可能消費到已經被消費的訊息。queue支援存在多個消費者,但是對乙個訊息而言,只會有乙個消費者消費。

2. 發布/訂閱模式(一對多)

訊息生產者(發布)將訊息發布到topic中,同時有多個訊息消費者(訂閱)消費該訊息。和點對點方式不同,發布到topic的訊息會被所有訂閱者消費。

3)模式缺點:當資料拉取方式為消費者被動接受時,消費者的消費速度可能跟不上生產者的生產速度。

訊息佇列的兩種模式

支援訂閱組的發布訂閱模式 發布訂閱模式下,當發布者訊息量很大時,顯然單個訂閱者的處理能力是不足的。實際上現實場景中是多個訂閱者節點組成乙個訂閱組負載均衡消費topic訊息即分組訂閱,這樣訂閱者很容易實現消費能力線性擴充套件。可以看成是乙個topic下有多個queue,每個queue是點對點的方式,q...

ActiveMQ的兩種訊息模式,主題 佇列

1 開發的模式流程如下 2 佇列模式queue 如果生產者產生了100條訊息,那麼兩個消費同時在的話,會分工合作來接收這100條訊息。就是每個消費者接收到50條來處理。3 主題模式topic 如果生產者產生了100條訊息,消費者在還沒有訂閱這個主題之前,是不會接收到這100條訊息的。消費者只有在訂閱...

兩種常用的佇列

與棧相反,佇列是一種先進先出的線性表。它只允許在表的一端進行插入,而在另一端刪除元素。和線性表類似,佇列也可以有兩種儲存表示。用鍊錶表示的佇列簡稱鏈佇列。下面是帶頭結點的單鏈佇列的實現 1 include 2 include 34 typedef char qelemtype 5 單鏈佇列節點 6 ...