无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(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 模式?的評論 (共 條)

分享到微博請遵守國家法律
佳木斯市| 离岛区| 高雄县| 正蓝旗| 太谷县| 东阳市| 桂东县| 崇仁县| 鄯善县| 玉环县| 湖北省| 北票市| 伊春市| 肇东市| 萍乡市| 什邡市| 炉霍县| 合阳县| 定日县| 潼南县| 神农架林区| 牙克石市| 西乌| 普陀区| 绵阳市| 福海县| 上高县| 宁晋县| 保山市| 枞阳县| 孝感市| 台北县| 桃源县| 通渭县| 汉阴县| 宁城县| 休宁县| 项城市| 日喀则市| 济南市| 册亨县|