亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣解析Kafka副本與ISR設計

發布時間:2021-12-15 09:15:44 來源:億速云 閱讀:164 作者:柒染 欄目:大數據

怎樣解析Kafka副本與ISR設計,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

在Kafka中一個分區日志其實就是一個備份日志,kafka利用多個相同備份日志來提高系統的可用性。這些備份日志其實就是所謂的副本。

Kafka的副本具有leader副本和follower副本之分,leader副本為客戶端提供讀寫請求,follower副本只是用于被動地從leader副本中同步數據,對外不提供讀寫服務。

Kafka的所有節點所有副本假設都在正常運行,那么leader副本會一直不變,但是所謂世界上沒有絕對穩定的系統,一旦kafa的leader副本節點出現了問題,那么follower副本需要競爭上崗成為leader副本,但是并不是所有的follower副本都有資格競爭上崗,很明顯假設一個follower落后的數據遠遠少于leader副本,它是沒有資格的。因此Kafka內部維護了一組具有資格的follower副本,他們統稱ISR。

ISR中的副本會被剔除,也會有新增。

關鍵的概念點

下圖主要講述了Kafka日志中重要概念,下圖的相關概念事關生產、消息消費、ISR以及副本同步機制。怎樣解析Kafka副本與ISR設計

  • 首條消息位移(offset):保存了該副本中所含的第一條消息的offset

  • 日志高水印值(HW):leader副本的HW決定了消費者所能消費的消息范圍,低于等于HW的消息均可被消費者消費

  • 結束位移(LEO):LEO總是指向下一條消息寫入的位置,處在leader的HW和LEO之間的消息表示還未完全備份。只有所有處于ISR中副本都更新了自己LEO以后,leader的HW才會右移表示寫入消息成功。

ISR

ISR其實就是Kafka內部維護的具有競爭上崗的一組與leader同步follower的副本集合。

follower副本與leader副本不同步的原因:

  • 同步數據請求速度追不上:follower副本在一段時間無法追上leader副本端的消息接收速度。比如follower副本的網絡I/O阻塞,這會導致follower副本同步leader副本的速度大大降低

  • 進程卡住:follower副本一段時間無法向leader發出請求,比如follower頻繁的進行GC

  • 新創建的副本:用戶主動增加副本數,新創建的副本在啟動后會追趕leader的進度,這段時間新增的follower副本通常與leader副本是不同步的

replica.lag.max.messages

該參數用來檢測同步數據請求速度追不上的問題,如果ISR中的副本消息數落后于leader副本的消息數超過了該參數的設置,將會被踢出ISR。

這個參數在kafka0.9.0.9版本之后被移除,為什么被移除呢?

肯定是有他的弊端的。考慮以下這個情況,kafka在的生產者的生產速率不是平穩的,會有高峰會有低峰,在高峰的時候,由于消息大量聚集產生,導致ISR中的消息與Leader的消息差超過了該數值,因此ISR中的副本將會被踢出。

但隨著生產消息速率的穩定和下降,并且此時follower副本也在全力追趕leader副本,當follower副本重新追上leader副本時,又會重新加入ISR。

replica.lag.max.ms

該參數用來檢測另兩種情況:如果在該時間內,follower副本無法向leader副本請求數據,那么將會被踢出ISR。

由于在新的版本中移除了replica.lag.max.messages參數的設置,因此replica.lag.max.ms也用于同步數據請求速度追不上問題的檢測,但用在次問題的檢測上時,檢測機制是只要follower副本落后于leader的時間不持續性超過該參數即視為同步,如果持續性超過該參數即視為不同步。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江口县| 中超| 大新县| 会同县| 成都市| 神木县| 武山县| 景泰县| 阜新| 盈江县| 黄平县| 铜陵市| 鸡泽县| 镇雄县| 苏尼特右旗| 探索| 江源县| 五指山市| 长治县| 连云港市| 虞城县| 都匀市| 保德县| 阿城市| 方城县| 济宁市| 焦作市| 周宁县| 福建省| 柳林县| 南投县| 凌云县| 临邑县| 东丰县| 青河县| 来凤县| 桦甸市| 云安县| 南宫市| 分宜县| 高要市|