apache kafka配置中request.required.acks含義

Kafka producer的ack有3中機制,初始化producer時的producerconfig能夠經過配置request.required.acks不一樣的值來實現。服務器

0:這意味着生產者producer不等待來自broker同步完成的確認繼續發送下一條(批)消息。此選項提供最低的延遲但最弱的耐久性保證(當服務器發生故障時某些數據會丟失,如leader已死,但producer並不知情,發出去的信息broker就收不到)。性能

1:這意味着producer在leader已成功收到的數據並獲得確認後發送下一條message。此選項提供了更好的耐久性爲客戶等待服務器確認請求成功(被寫入死亡leader但還沒有複製將失去了惟一的消息)。ui

-1:這意味着producer在follower副本確認接收到數據後纔算一次發送完成。 
此選項提供最好的耐久性,咱們保證沒有信息將丟失,只要至少一個同步副本保持存活。
spa

三種機制,性能依次遞減 (producer吞吐量下降),數據健壯性則依次遞增。同步

相關文章
相關標籤/搜索