最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Kafka 消息是采用 Pull 模式,還是 Push 模式?

2023-02-27 22:09 作者:凱小吧  | 我要投稿

Kafka 最初考慮的問題是,customer 應(yīng)該從 brokes 拉取消息還是 brokers 將消息推送到

consumer,也就是 pull 還 push。

在這方面,Kafka 遵循了一種大部分消息系統(tǒng)共同的傳統(tǒng)的設(shè)計:

producer 將消息推送到 broker,consumer 從 broker 拉取消息

一些消息系統(tǒng)比如 Scribe 和 ApacheFlume 采用了 push 模式,將消息推送到下游的 consumer。

這樣做有好處也有壞處:

由 broker 決定消息推送的速率,對于不同消費速率的 consumer 就不太好處理了。消息系統(tǒng)都致力于讓 consumer 以最大的速率最快速的消費消息,但不幸的是,push 模式下,當 broker 推送的速率遠大于 consumer 消費的速率時, consumer 恐怕就要崩潰了。

最終 Kafka 還是選取了傳統(tǒng)的 pull 模式

Pull 模式的另外一個好處是 consumer 可以自主決定是否批量的從 broker 拉取數(shù)據(jù)。Push 模式必須在不知道下游 consumer 消費能力和消費策略的情況下決定是立即推送每條消息還是緩存之后批量推送。如果為了避免 consumer 崩潰而采用較低的推送速率,將可能導致一次只推送較少的消息而造成浪費。

Pull 模式下,consumer 就可以根據(jù)自己的消費能力去決定這些策略

Pull 有個缺點是,如果 broker 沒有可供消費的消息,將導致 consumer 不斷在循環(huán)中輪詢,

直到新消息到 t 達。為了避免這點,Kafka 有個參數(shù)可以讓 consumer 阻塞知道新消息到達

Kafka 消息是采用 Pull 模式,還是 Push 模式?的評論 (共 條)

分享到微博請遵守國家法律
贺兰县| 上栗县| 绵竹市| 五原县| 景谷| 台湾省| 永吉县| 江西省| 新兴县| 区。| 双峰县| 蓬溪县| 察隅县| 探索| 曲周县| 朝阳县| 丘北县| 钟山县| 苍溪县| 盖州市| 井陉县| 民丰县| 龙南县| 和龙市| 鸡西市| 文安县| 阜康市| 寿宁县| 东方市| 台州市| 康保县| 清涧县| 宁都县| 双牌县| 安新县| 中宁县| 沁源县| 璧山县| 宜兴市| 宕昌县| 邓州市|