從0.9.0.0開(kāi)始温赔,下面是消費(fèi)者的配置。
名稱 | 描述 | 類型 | 默認(rèn)值 |
---|---|---|---|
bootstrap.servers | 消費(fèi)者初始連接kafka集群時(shí)的地址列表鬼癣。不管這邊配置的什么地址陶贼,消費(fèi)者會(huì)使用所有的kafka集群服務(wù)器啤贩。消費(fèi)者會(huì)通過(guò)這些地址列表,找到所有的kafka集群機(jī)器拜秧。 | list | |
key.deserializer | 實(shí)現(xiàn)了Deserializer的key的反序列化類 | class | |
value.deserializer | 實(shí)現(xiàn)了Deserializer的value的反序列化類 | class | |
fetch.min.bytes | 每次請(qǐng)求痹屹,kafka返回的最小的數(shù)據(jù)量。如果數(shù)據(jù)量不夠枉氮,這個(gè)請(qǐng)求會(huì)等待志衍,直到數(shù)據(jù)量到達(dá)最小指標(biāo)時(shí),才會(huì)返回給消費(fèi)者聊替。如果設(shè)置大于1楼肪,會(huì)提高kafka的吞吐量,但是會(huì)有額外的等待期的代價(jià)惹悄。 | int | 1 |
group.id | 標(biāo)識(shí)這臺(tái)消費(fèi)者屬于那個(gè)消費(fèi)組春叫。如果消費(fèi)者通過(guò)訂閱主題來(lái)實(shí)現(xiàn)組管理功能,或者使用基于kafka的偏移量管理策略俘侠,這個(gè)配置是必須的象缀。 | string | "" |
heartbeat.interval.ms | 使用kafka集群管理工具時(shí),消費(fèi)者協(xié)調(diào)器之間的預(yù)計(jì)心跳時(shí)間爷速。心跳的作用是確保消費(fèi)者的session是活躍的央星,同時(shí)當(dāng)新的機(jī)器加入集群或有機(jī)器掛掉的情況下觸發(fā)再平衡操作。這個(gè)配置必須小于heartbeat.interval.ms惫东,而且應(yīng)該不大于這個(gè)值的1/3莉给。為了控制正常的負(fù)載均衡的預(yù)期時(shí)間,這個(gè)值可以設(shè)置的更小廉沮。 | int | 3000 |
max.partition.fetch.bytes | kafka集群每個(gè)分區(qū)一次返回的最大數(shù)據(jù)量颓遏。一次請(qǐng)求的最大內(nèi)存使用量應(yīng)該等于#partitions * max.partition.fetch.bytes。這個(gè)值必須與kafka集群允許的最大消息數(shù)據(jù)量差不多大小滞时,否則可能生產(chǎn)者發(fā)送了一個(gè)消息叁幢,大于消費(fèi)者配置的值。這種情況下坪稽,消費(fèi)者可能會(huì)在獲取那條消息時(shí)堵住曼玩。 | int | 1048576 |
session.timeout.ms | 使用kafka集群管理工具時(shí)檢測(cè)失敗的超時(shí)時(shí)間。如果在session超時(shí)時(shí)間范圍內(nèi)窒百,沒(méi)有收到消費(fèi)者的心跳黍判,broker會(huì)把這個(gè)消費(fèi)者置為失效,并觸發(fā)消費(fèi)者負(fù)載均衡篙梢。因?yàn)橹挥性谡{(diào)用poll方法時(shí)才會(huì)發(fā)送心跳顷帖,更大的session超時(shí)時(shí)間允許消費(fèi)者在poll循環(huán)周期內(nèi)處理消息內(nèi)容,盡管這會(huì)有花費(fèi)更長(zhǎng)時(shí)間檢測(cè)失效的代價(jià)。如果想控制消費(fèi)者處理消息的時(shí)間贬墩,還可以參考max.poll.records榴嗅。注意這個(gè)值的大小應(yīng)該在group.min.session.timeout.ms和group.max.session.timeout.ms范圍內(nèi)灰瞻。 | int | 30000 |
ssl.key.password | 私鑰存儲(chǔ)文件的私鑰密碼凡纳。可選配置栏饮。 | password | null |
ssl.keystore.location | 私鑰存儲(chǔ)文件的路徑吊说÷塾剑可選配置,并且可用來(lái)作為客戶端的雙向認(rèn)證颁井。 | string | null |
ssl.keystore.password | 私鑰存儲(chǔ)文件的存儲(chǔ)密碼厅贪。可選配置雅宾,并且只有ssl.keystore.location配置的情況下才需要配置养涮。 | password | null |
ssl.truststore.location | 信任秘鑰文件路徑。 | string | null |
ssl.truststore.password | 信任秘鑰文件密碼眉抬。 | password | null |
auto.offset.reset | 當(dāng)kafka的初始偏移量沒(méi)了贯吓,或者當(dāng)前的偏移量不存在的情況下,應(yīng)該怎么辦蜀变?下面有幾種策略:earliest(將偏移量自動(dòng)重置為最初的值)悄谐、latest(自動(dòng)將偏移量置為最新的值)、none(如果在消費(fèi)者組中沒(méi)有發(fā)現(xiàn)前一個(gè)偏移量库北,就向消費(fèi)者拋出一個(gè)異常)爬舰、anything else(向消費(fèi)者拋出異常) | string | latest |
connections.max.idle.ms | 配置時(shí)間后,關(guān)閉空閑的連接 | long | 540000 |
enable.auto.commit | 如果設(shè)為true寒瓦,消費(fèi)者的偏移量會(huì)定期在后臺(tái)提交情屹。 | boolean | true |
exclude.internal.topics | 內(nèi)部主題(比如偏移量)是否需要暴露給消費(fèi)者。如果設(shè)為true杂腰,獲取內(nèi)部主題消息的途徑就是訂閱他們垃你。 | boolean | true |
max.poll.records | 一次poll調(diào)用返回的最大消息數(shù)量。 | int | 2147483647 |
partition.assignment.strategy | 使用組管理時(shí)喂很,客戶端使用的分區(qū)策略的類名惜颇,根據(jù)這個(gè)策略來(lái)進(jìn)行消費(fèi)分區(qū)。 | list | [org.apache.kafka.clients.consumer.RangeAssignor] |
receive.buffer.bytes | SO_RCVBUF讀取數(shù)據(jù)使用的內(nèi)存大小恤筛。 | int | 65536 |
request.timeout.ms | 這個(gè)配置控制一次請(qǐng)求響應(yīng)的最長(zhǎng)等待時(shí)間。如果在超時(shí)時(shí)間內(nèi)未得到響應(yīng)芹橡,kafka要么重發(fā)這條消息毒坛,要么超過(guò)重試次數(shù)的情況下直接置為失敗。 | int | 40000 |