日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在 KafkaProducer 中大部分的參數都有合理的默認值,一般不需要修改它們。不過了解這些參數可以讓我們更合理地使用生產者客戶端,其中還有一些重要的參數涉及程序的可用性和性能,如果能夠熟練掌握它們,也可以讓我們在編寫相關的程序時能夠更好地進行性能調優與故障排查。下面挑選一些重要的參數進行講解。

1. acks

這個參數用來指定分區中必須要有多少個副本收到這條消息,之后生產者才會認為這條消息是成功寫入的。acks 是生產者客戶端中一個非常重要的參數,它涉及消息的可靠性和吞吐量之間的權衡。acks 參數有3種類型的值(都是字符串類型)。

acks = 1。默認值即為1。生產者發送消息之后,只要分區的 leader 副本成功寫入消息,那么它就會收到來自服務端的成功響應。如果消息無法寫入 leader 副本,比如在 leader 副本崩潰、重新選舉新的 leader 副本的過程中,那么生產者就會收到一個錯誤的響應,為了避免消息丟失,生產者可以選擇重發消息。如果消息寫入 leader 副本并返回成功響應給生產者,且在被其他 follower 副本拉取之前 leader 副本崩潰,那么此時消息還是會丟失,因為新選舉的 leader 副本中并沒有這條對應的消息。acks 設置為1,是消息可靠性和吞吐量之間的折中方案。

acks = 0。生產者發送消息之后不需要等待任何服務端的響應。如果在消息從發送到寫入 Kafka 的過程中出現某些異常,導致 Kafka 并沒有收到這條消息,那么生產者也無從得知,消息也就丟失了。在其他配置環境相同的情況下,acks 設置為0可以達到最大的吞吐量。

acks = -1 或 acks = all。生產者在消息發送之后,需要等待 ISR 中的所有副本都成功寫入消息之后才能夠收到來自服務端的成功響應。在其他配置環境相同的情況下,acks 設置為 -1(all) 可以達到最強的可靠性。但這并不意味著消息就一定可靠,因為ISR中可能只有 leader 副本,這樣就退化成了 acks=1 的情況。

注意 acks 參數配置的值是一個字符串類型,而不是整數類型。舉個例子,將 acks 參數設置為0,需要采用下面這兩種形式:

而不能配置成下面這種形式:

這樣會報出如下的異常:

這個參數用來限制生產者客戶端能發送的消息的最大值,默認值為1048576B,即1MB。一般情況下,這個默認值就可以滿足大多數的應用場景了。

Kafka 可以保證同一個分區中的消息是有序的。如果生產者按照一定的順序發送消息,那么這些消息也會順序地寫入分區,進而消費者也可以按照同樣的順序消費它們。

4. compression.type

這個參數用來指定消息的壓縮方式,默認值為“none”,即默認情況下,消息不會被壓縮。該參數還可以配置為“gzip”“snAppy”和“lz4”。對消息進行壓縮可以極大地減少網絡傳輸量、降低網絡I/O,從而提高整體的性能。消息壓縮是一種使用時間換空間的優化方式,如果對時延有一定的要求,則不推薦對消息進行壓縮。

這個參數用來指定在多久之后關閉閑置的連接,默認值是540000(ms),即9分鐘。

6. linger.ms

這個參數用來指定生產者發送 ProducerBatch 之前等待更多消息(ProducerRecord)加入 ProducerBatch 的時間,默認值為0。生產者客戶端會在 ProducerBatch 被填滿或等待時間超過 linger.ms 值時發送出去。增大這個參數的值會增加消息的延遲,但是同時能提升一定的吞吐量。這個 linger.ms 參數與 TCP 協議中的 Nagle 算法有異曲同工之妙。

這個參數用來設置 Socket 接收消息緩沖區(SO_RECBUF)的大小,默認值為32768(B),即32KB。如果設置為-1,則使用操作系統的默認值。如果 Producer 與 Kafka 處于不同的機房,則可以適地調大這個參數值。

- END -

分享到:
標簽:Kafka
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定