欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:Kafka 核心屬性速覽

柚子快報激活碼778899分享:Kafka 核心屬性速覽

http://yzkb.51969.com/

目錄

1. 背景? ??

2. Kafka的核心屬性

2.1.?Broker

2.2.?Partitions

2.3. Replicas

3. 實踐

4. 參考

1. 背景? ??

????????Kafka是一個流行隊列組件(在AWS上叫MSK),其他的隊列還有rocketMQ、rabbitMQ。就我個人而言,我只是一個使用者(調(diào)包俠),很多技術(shù)細(xì)節(jié)我記不住,尤其是這幾個MQ有什么優(yōu)勢和缺點,只能尷尬一笑。所以快速記錄一下kafka的核心屬性,方便查閱。

2. Kafka的核心屬性

2.1.?Broker

????????Broker是Kafka中的一個服務(wù)器實例,包含了一些消息和數(shù)據(jù)。Broker用來存儲收到的消息,并處理消費者和生產(chǎn)者的請求。Kafka集群通常由多個Broker組成。

圖2.1-1 Broker和Topic

2.2.?Partitions

????????在Kafka中,每個topic被分割成一個或多個分區(qū)(partition),每個分區(qū)都是一個有序的消息隊列。生產(chǎn)者可以對一個topic的多個分區(qū)同時進(jìn)行寫操作,消費者也可以對多個分區(qū)進(jìn)行讀操作,使得系統(tǒng)的吞吐量得到提升。

圖2.2-1 Partitions=3,一個Topic被分成3個部分

2.3. Replicas

????????為了確保數(shù)據(jù)的可靠性和高可用性,Kafka會對每一個分區(qū)(partition)進(jìn)行備份,每個分區(qū)有一個或多個副本(replica)。這些副本分布在不同的Broker上,其中一個副本作為主副本(leader),接收所有的讀寫請求,其他副本為備份副本(follower),只負(fù)責(zé)復(fù)制主副本中的數(shù)據(jù)。

????????總的來說,Broker是Kafka的基本組成單位,其中存儲了topic的數(shù)據(jù),每個topic又被分成一個或多個分區(qū),為了使數(shù)據(jù)不丟失,每個分區(qū)會在不同的Broker上保存副本,這就是數(shù)據(jù)的復(fù)制機(jī)制。

圖2.3-1?Partitions=3,Replicas=3. 每個部分有3個副本,以作主備

3. 實踐

???????我們可以使用流行的開源Kafka portal UI工具,在創(chuàng)建Topic界面(如圖-3),我們可以看到如下圖的每一個屬性。

圖-3 Kafka新建Topic的屬性設(shè)置

Broker:集群配置,由Kafka服務(wù)提供時就需要決定,至于配置者,由服務(wù)提供商設(shè)置,當(dāng)然,這取決于使用者的需求和預(yù)算。

Topic Name:必填項,定義這個Topic的名字,Topic名字是區(qū)分不同業(yè)務(wù)的重要憑證。

Number of partitions:對應(yīng)核心屬性Partitions。Kafka的topic由一個或多個分區(qū)組成,這個數(shù)值表示你希望為當(dāng)前topic創(chuàng)建的分區(qū)數(shù)量。每個分區(qū)都是消息的有序且不可變的序列,這些消息連續(xù)的寫入分區(qū)并被賦予一個連續(xù)的id號,稱為offset。

Cleanup policy:控制了Kafka如何處理日志。具體來說,這涉及到Kafka如何管理存儲空間,包括刪除舊消息以釋放空間。有兩種可用的清理策略,分別是 "delete" 和 "compact"。

delete

????????這是默認(rèn)策略,當(dāng)日志達(dá)到一定的大小或者一段時間后(根據(jù)你的配置設(shè)定),舊的記錄會被刪除,以釋放空間。這個策略對于那些只對近期數(shù)據(jù)感興趣的用例來說非常有用。

compact

????????這個策略會保留最近的每一個唯一鍵的記錄,換句話說,對于具有相同鍵的記錄,只有最近的記錄會被保留。這個策略對于那些希望保留所有狀態(tài)更新的用例來說是有用的,例如在流處理中的狀態(tài)存儲。

????????你可以在創(chuàng)建主題的時候選擇清理策略,在創(chuàng)建之后也可以通過修改配置來改變策略。

Replication Factor

????????復(fù)制因子,對應(yīng)核心屬性Replicas。是一個設(shè)置項,用來指定我們希望為每一個 partition 創(chuàng)建多少個副本。舉個例子,如果我們設(shè)置 Replication Factor 為 3,那么每當(dāng)生產(chǎn)者向 Kafka 發(fā)送一條消息時,Kafka 會在 3 個 broker 上分別存儲這條消息的副本。這樣,即使有 1 或者 2 個 broker 宕機(jī),我們?nèi)匀豢梢詮氖S嗟?broker 上獲取這條消息。

????????當(dāng)然,這個 "Replication Factor" 的設(shè)定需要考慮實際情況。比如說,如果我們的 Kafka 集群只有兩個 broker,那么 replication factor 的值設(shè)定就不能超過 2,因為沒有足夠的 broker 來存儲更多的副本。同樣,如果我們的 Kafka 集群 broker 非常多,例如有 10 臺,那么我們可能就不需要把 replication factor 設(shè)得太大,如設(shè)為 10,因為這會增加 Kafka 的存儲負(fù)擔(dān)和網(wǎng)絡(luò)傳輸壓力,而且大多數(shù)場景下,10 臺 broker 不會同時宕機(jī),可以適當(dāng)降低這個值。

Min In Sync Replicas

? ? ? ? 此值是關(guān)于數(shù)據(jù)可用性和持久性的設(shè)置。它定義了Producer在認(rèn)為寫操作成功前需要等待多少個副本在同步狀態(tài),即已經(jīng)接收到寫操作。例如,如果你將其設(shè)置為2,那在一個寫操作完成并返回ACK成功之前,至少需要有兩個副本(包括Leader本身)將數(shù)據(jù)寫入。

????????使用一個現(xiàn)實世界的比喻來理解的話,可以將"Replication Factor"想象成你家有多少把鑰匙,而"Min In Sync Replicas"則是在你離家時,你希望至少有幾把鑰匙放在安全的地方。所以,雖然這兩個設(shè)置都涉及到副本,但它們關(guān)注的是不同的方面并起到各自的作用。

Time to retain data (in ms)

????????這個設(shè)置項決定了每一條消息在Kafka中被保存的時間。超過這個時間,消息將會被清理掉以釋放空間。單位是毫秒。例如,如果你設(shè)置的是86400000毫秒,那么數(shù)據(jù)會被保存24小時。

Max size on disk in GB

????????這個設(shè)置項決定了一個topic能占用的磁盤空間的大小。如果一個topic的大小超過了這個設(shè)置,那么Kafka會開始刪除這個topic的舊消息,直到其大小低于設(shè)置的最大值。單位是GB。

Maximum message size in bytes

????????這個設(shè)置項限制了Kafka接收的單條消息的最大大小。如果生產(chǎn)者試圖發(fā)送大于這個設(shè)置值的消息,那么消息將不會被接收。單位是字節(jié)。這個設(shè)置需要根據(jù)你的使用場景來進(jìn)行調(diào)整。如果你的應(yīng)用需要發(fā)送較大的消息,那么你可能需要調(diào)高這個值。

4. 參考

ChatGPT

https://www.cnblogs.com/sujing/p/10960832.html

柚子快報激活碼778899分享:Kafka 核心屬性速覽

http://yzkb.51969.com/

精彩文章

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19180582.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄