自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Kafka 的生成者、消費(fèi)者、broker 的基本概念

網(wǎng)絡(luò) Kafka
kafka是一款基于發(fā)布與訂閱的消息系統(tǒng)。它一般被稱為“分布式提交日志”或者“分布式流平臺(tái)”。文件系統(tǒng)或者數(shù)據(jù)庫提交日志用來提供所有事物的持久化記錄,通過重建這些日志可以重建系統(tǒng)的狀態(tài)。同樣地,kafka的數(shù)據(jù)是按照一定順序持久化保存的,可以按需讀取。

kafka是一款基于發(fā)布與訂閱的消息系統(tǒng)。它一般被稱為“分布式提交日志”或者“分布式流平臺(tái)”。文件系統(tǒng)或者數(shù)據(jù)庫提交日志用來提供所有事物的持久化記錄,通過重建這些日志可以重建系統(tǒng)的狀態(tài)。同樣地,kafka的數(shù)據(jù)是按照一定順序持久化保存的,可以按需讀取。

1、kafka拓?fù)浣Y(jié)構(gòu)

2、Kafka的特點(diǎn)

同時(shí)為分布和訂閱提供高吞吐量。據(jù)了解,Kafka每秒可以生產(chǎn)約25萬條消息(50MB),每秒處理55萬條消息(110MB)這里說條數(shù),可能不上特別準(zhǔn)確,因?yàn)橄⒌拇笮】赡懿灰恢拢?/p>

可進(jìn)行持久化操作,將消息持久化到到磁盤,以日志的形式存儲(chǔ),因此可用于批量消費(fèi),例如ETL,以及實(shí)時(shí)應(yīng)用程序。 通過將數(shù)據(jù)持久化到硬盤以及replication防止數(shù)據(jù)丟失。
分布式系統(tǒng),易于向外拓展。所有的Producer、broker和consumer都會(huì)有多個(gè),均為分布式。無需停機(jī)即可拓展機(jī)器。

消息被處理的狀態(tài)是在consumer端維護(hù),而不是由server端維護(hù),當(dāng)失敗時(shí)能自動(dòng)平衡。
支持Online和offline的場(chǎng)景。

3、Kafka的核心概念

名詞 解釋
Producer 消息的生成者
Consumer 消息的消費(fèi)者
ConsumerGroup 消費(fèi)者組,可以并行消費(fèi)Topic中的partition的消息
Broker 緩存代理,Kafka集群中的一臺(tái)或多臺(tái)服務(wù)器統(tǒng)稱broker.
Topic Kafka處理資源的消息源(feeds of messages)的不同分類
Partition Topic物理上的分組,一個(gè)topic可以分為多個(gè)partion,每個(gè)partion是一個(gè)有序的隊(duì)列。partion中每條消息都會(huì)被分 配一個(gè) 有序的Id(offset)
Message 消息,是通信的基本單位,每個(gè)producer可以向一個(gè)topic(主題)發(fā)布一些消息
Producers 消息和數(shù)據(jù)生成者,向Kafka的一個(gè)topic發(fā)布消息的 過程叫做producers
Consumers 消息和數(shù)據(jù)的消費(fèi)者,訂閱topic并處理其發(fā)布的消費(fèi)過程叫做consumers

3.1 Producers的概念

消息和數(shù)據(jù)生成者,向Kafka的一個(gè)topic發(fā)布消息的過程叫做producers
Producer將消息發(fā)布到指定的Topic中,同時(shí)Producer也能決定將此消息歸屬于哪個(gè)partition;比如基于round-robin方式 或者通過其他的一些算法等;
異步發(fā)送批量發(fā)送可以很有效的提高發(fā)送效率。kafka producer的異步發(fā)送模式允許進(jìn)行批量發(fā)送,先將消息緩存到內(nèi)存中,然后一次請(qǐng)求批量發(fā)送出去。

3.2 broker的概念:

Broker沒有副本機(jī)制,一旦broker宕機(jī),該broker的消息將都不可用。
Broker不保存訂閱者的狀態(tài),由訂閱者自己保存。
無狀態(tài)導(dǎo)致消息的刪除成為難題(可能刪除的消息正在被訂閱),Kafka采用基于時(shí)間的SLA(服務(wù)保證),消息保存一定時(shí)間(通常7天)后會(huì)刪除。
消費(fèi)訂閱者可以rewind back到任意位置重新進(jìn)行消費(fèi),當(dāng)訂閱者故障時(shí),可以選擇最小的offset(id)進(jìn)行重新讀取消費(fèi)消息

3.3 Message組成

Message消息:是通信的基本單位,每個(gè)producer可以向一個(gè)topic發(fā)布消息。
Kafka中的Message是以topic為基本單位組織的,不同的topic之間是相互獨(dú)立的,每個(gè)topic又可以分成不同的partition每個(gè)partition儲(chǔ)存一部分
partion中的每條Message包含以下三個(gè)屬性:
offset long
MessageSize int32
data messages的具體內(nèi)容

3.4 Consumers的概念

消息和數(shù)據(jù)消費(fèi)者,訂閱topic并處理其發(fā)布的消息的過程叫做consumers. 在kafka中,我們可以認(rèn)為一個(gè)group是一個(gè)“訂閱者”,一個(gè)topic中的每個(gè)partions只會(huì)被一個(gè)“訂閱者”中的一個(gè)consumer 消費(fèi),不過一個(gè)consumer可以消費(fèi)多個(gè)partitions中的消息 注: Kafka的設(shè)計(jì)原理決定,對(duì)于一個(gè)topic,同一個(gè)group不能多于partition個(gè)數(shù)的consumer同時(shí)消費(fèi),否則將意味著某些 consumer無法得到消息

責(zé)任編輯:梁菲 來源: 阿里云云棲號(hào)
相關(guān)推薦

2023-06-01 08:08:38

kafka消費(fèi)者分區(qū)策略

2015-08-26 09:39:30

java消費(fèi)者

2021-12-28 12:01:59

Kafka 消費(fèi)者機(jī)制

2021-07-08 05:52:34

Kafka架構(gòu)主從架構(gòu)

2009-08-13 13:14:31

C#生產(chǎn)者和消費(fèi)者

2021-06-28 11:45:28

Kafka消費(fèi)者參數(shù)

2014-12-10 21:50:44

AdMaster

2015-09-16 10:58:53

物聯(lián)網(wǎng)

2024-03-14 11:58:43

2015-06-15 11:29:34

數(shù)據(jù)中心綠色數(shù)據(jù)中心

2021-12-22 11:00:05

模型Golang語言

2021-08-31 10:26:24

存儲(chǔ)

2012-06-21 10:35:52

2021-10-28 19:20:28

架構(gòu)消費(fèi)者物聯(lián)網(wǎng)

2022-07-07 09:00:49

RocketMQ消費(fèi)者消息消費(fèi)

2011-07-22 16:25:38

CA TechnoloIT消費(fèi)化

2011-08-05 16:21:24

2012-02-14 12:31:27

Java

2022-08-02 10:01:42

架構(gòu)

2021-04-21 10:49:36

穩(wěn)定幣比特幣貨幣
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)