Kafka架構(gòu)探險(xiǎn)(三)——Kafka參數(shù)詳解

Kafka提供很多的參數(shù):broker參數(shù)、topic參數(shù)、producer參數(shù)、consumer參數(shù)等脉顿,方便我們對(duì)kafka的性能做調(diào)整,本博文就來(lái)歸納總結(jié)下常見(jiàn)的參數(shù)

參數(shù)的說(shuō)明是基于Kafka 2.12-2.3.0版本

詳細(xì)可以參考官網(wǎng)

broker參數(shù)

broker端的參數(shù)在Kafka目錄下的config/server.properties文件中

參數(shù)名稱 備注說(shuō)明
broker.id kafka的唯一標(biāo)志点寥,全局唯一艾疟,默認(rèn)是-1,如果不指定,則自動(dòng)生成蔽莱,也是全局唯一
log.dirs 指定了kafka持久化消息的目錄弟疆;可以是多個(gè)值,以逗號(hào)隔開(kāi)盗冷;設(shè)置多個(gè)目錄怠苔,可以提高系統(tǒng)的吞吐量
zookeeper.connect kafka依賴的zookeeper的ip和port;可以是zookeeper集群仪糖,以逗號(hào)隔開(kāi)
listeners broker監(jiān)聽(tīng)器柑司,主要用于client連接broker使用,格式:協(xié)議://ip:port,協(xié)議://ip:port,協(xié)議包括:PLAINTEXT/SSL/SASL_SSL等锅劝,如果不指定攒驰,則默認(rèn)所有的client都能連接broker
advertised.listeners 和listeners類似,主要用于laas環(huán)境下故爵,在多網(wǎng)卡的環(huán)境中玻粪,可以設(shè)置該參數(shù)值提供給外網(wǎng)的client訪問(wèn)
log.retention.{hours/minutes/ms} 控制消息數(shù)據(jù)留存的時(shí)間,同時(shí)設(shè)置優(yōu)先ms,默認(rèn)留存時(shí)間是7d
log.retention.bytes 控制消息日志保存的大小诬垂,超過(guò)該值的大小劲室,則kafka會(huì)自動(dòng)清理該分區(qū)的過(guò)期日志端文件,默認(rèn)值是1073741824结窘,值為-1時(shí)很洋,表示不會(huì)根據(jù)消息的大小來(lái)刪除消息日志
num.network.threads 控制broker端在后臺(tái)用于處理網(wǎng)絡(luò)請(qǐng)求的線程數(shù),默認(rèn)是3
num.io.threads 控制broker端處理磁盤(pán)IO的線程數(shù)晦鞋,默認(rèn)是8
message.max.bytes kafka接收最大消息的大小蹲缠,默認(rèn)是977kb
log.segment.bytes topic的分區(qū)是以一堆segment文件存儲(chǔ)的棺克,這個(gè)控制每個(gè)segment的大小悠垛,會(huì)被topic創(chuàng)建時(shí)的指定參數(shù)覆蓋
log.retention.check.interval.ms 周期性檢查是否有日志符合刪除的條件,默認(rèn)值是300s
num.recovery.threads.per.data.dir kafka broker啟動(dòng)的過(guò)程中會(huì)加載此節(jié)點(diǎn)上所有topic的log文件,如果數(shù)據(jù)量非常大會(huì)導(dǎo)致加載時(shí)間過(guò)長(zhǎng),通過(guò)修改該值可以加快加載的速度娜谊,默認(rèn)值是1
unclean.leader.election.enable 是否允許非ISR中的副本被選舉為leader确买,如果設(shè)置為true的話,broker端可能因日志截?cái)喽斐上G失
replication.factor 設(shè)置主題的副本數(shù)纱皆,一般使用default.replication.factor

topic參數(shù)

如果將broker參數(shù)看作是全局參數(shù)設(shè)置湾趾,那么topic參數(shù)就是局部參數(shù)設(shè)置,參數(shù)名稱和broker中的參數(shù)名稱是一致的派草,不過(guò)在topic中設(shè)置了搀缠,會(huì)覆蓋broker中的參數(shù)設(shè)置,常見(jiàn)的有以下幾種:

參數(shù)名稱 備注說(shuō)明
message.max.bytes 覆蓋全局的 message.max.bytes近迁,即為每個(gè)topic指定不同的最大消息的大小
retention.bytes 覆蓋全局的log.retention.bytes 每個(gè)topic設(shè)置不同的消息留存大小

producer參數(shù)

消息生產(chǎn)者發(fā)送消息到kafka指定的topic中,所以producer端的參數(shù)大多跟topic和消息有關(guān)

參數(shù)名稱 備注說(shuō)明
key.serializer 消息序列化艺普,可以指定系統(tǒng)已經(jīng)提供的序列化方式,也可以自定義序列化方式 ,自定義需要實(shí)現(xiàn)org.apache.kafka.common.serialization.Serializer接口歧譬,參數(shù)值是序列化處理器的全路徑名
value.serializer 跟key.serializer一樣
acks 控制producer生產(chǎn)消息的持久性岸浑,值范圍有0、1瑰步、all
buffer.memory 指定producer端用于緩存消息的緩沖區(qū)大小矢洲,單位是字節(jié),默認(rèn)是32MB
compression.type 消息壓縮的類型,默認(rèn)是none,值范圍:GZIP缩焦、Snappy读虏、LZ4
retries 消息重試的次數(shù)
batch.size producer端批量發(fā)送消息的批大小
request.timeout.ms broker響應(yīng)producer端的超時(shí)時(shí)間大小,默認(rèn)是30s
max.block.ms 內(nèi)存緩沖區(qū)在填滿時(shí),producer處于阻塞狀態(tài)袁滥,并停止接收新的消息而不是拋出異常
max.in.flight.requests.per.connection 限制了producer在單個(gè)broker鏈接上能否發(fā)送的未響應(yīng)請(qǐng)求的數(shù)量掘譬,如果設(shè)置成1,則可以保證消息的順序性

consumer參數(shù)

參數(shù)名稱 備注說(shuō)明
group.id 指定consumer group 的名字
key.deserializer 為消息的key反序列化呻拌,也可以自定義葱轩,需要實(shí)現(xiàn)org.apache.kafka.common.serialization.Deserializer接口
value.deserializer 為消息體反序列化,跟key.deserializer類似
session.timeout.ms consumer group檢測(cè)組內(nèi)成員發(fā)送崩潰的時(shí)間(coordinator檢測(cè)失敗的時(shí)間)
max.poll.interval.ms consumer處理邏輯最大的時(shí)間
auto.offset.reset 指定了無(wú)位移或位移移界(即consumer要消費(fèi)的消息的位移不在當(dāng)前消息日志的合理區(qū)間范圍)時(shí)kafka的應(yīng)對(duì)策略藐握,有三個(gè)值:earliest靴拱、latest、none
enable.auto.commit 指定consumer是否自動(dòng)提交位移
fetch.max.bytes 指定consumer端單次獲取數(shù)據(jù)的最大字節(jié)數(shù)猾普,若消息的內(nèi)容很大袜炕,則該值應(yīng)該調(diào)更大點(diǎn),否則這個(gè)消息無(wú)法被消費(fèi),默認(rèn)是52428800
max.poll.records 控制單次poll調(diào)用返回的最大消息數(shù)初家,默認(rèn)是500條
heartbeat.interval.ms coordinator要開(kāi)啟新一輪的rebalance時(shí)偎窘,該參數(shù)控制consumer group的成員何時(shí)得知新的rebalance,該值必須要小于session.timeout.ms
connections.max.idle.ms Kafka定義關(guān)閉空閑Socket的時(shí)間間隔溜在,默認(rèn)是9分鐘
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末陌知,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子掖肋,更是在濱河造成了極大的恐慌仆葡,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件志笼,死亡現(xiàn)場(chǎng)離奇詭異沿盅,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)纫溃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)腰涧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人紊浩,你說(shuō)我怎么就攤上這事窖铡∽岷埽” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵万伤,是天一觀的道長(zhǎng)窒悔。 經(jīng)常有香客問(wèn)我,道長(zhǎng)敌买,這世上最難降的妖魔是什么简珠? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮虹钮,結(jié)果婚禮上聋庵,老公的妹妹穿的比我還像新娘。我一直安慰自己芙粱,他們只是感情好祭玉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著春畔,像睡著了一般脱货。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上律姨,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天振峻,我揣著相機(jī)與錄音,去河邊找鬼择份。 笑死扣孟,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的荣赶。 我是一名探鬼主播凤价,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼拔创!你這毒婦竟也來(lái)了利诺?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤伏蚊,失蹤者是張志新(化名)和其女友劉穎立轧,沒(méi)想到半個(gè)月后格粪,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體躏吊,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年帐萎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了比伏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡疆导,死狀恐怖赁项,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤悠菜,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布舰攒,位于F島的核電站,受9級(jí)特大地震影響悔醋,放射性物質(zhì)發(fā)生泄漏摩窃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一芬骄、第九天 我趴在偏房一處隱蔽的房頂上張望猾愿。 院中可真熱鬧,春花似錦账阻、人聲如沸蒂秘。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)姻僧。三九已至,卻和暖如春蒲牧,著一層夾襖步出監(jiān)牢的瞬間段化,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工造成, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留显熏,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓晒屎,卻偏偏與公主長(zhǎng)得像喘蟆,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子鼓鲁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353