2017-03-09 28 views
0

我們最近在生產中發現了一些消費者羣體在消費者離開小組時重新平衡分鐘數的問題。什麼因素決定消費羣體再平衡時間?

這個特定的消費羣在任何時候都有大約8-10位消費者會員,並且訂購了大約15個主題,每個主題都有32個分區。

基本上試圖找出我們應該看看做什麼,以便重新平衡需要更少的時間。 (例如,我們是否嘗試減少每組用戶的數量?減少每個主題的分區數量等)

回答

0

好的,所以經過重大的試驗和錯誤發現,重新平衡時間的最大因素是特定消費者羣體試圖訂閱的總主題&分區的數量。

我們有一個消費者團體,基本上覆蓋了大約20個左右主題的600多個分區。通過改變我們的投票策略等,我們可以將每個主題轉移到一個消費羣體,並且時間大幅度減少。

0

從Kafka0.10.1開始,有兩個配置會影響重新平衡:session.timeout.msmax.poll.interval.ms

session.timeout.ms設置爲相對較低的值可以使協調員更快速地檢測故障並及時觸發重新平衡。

max.poll.interval.ms設置爲相對較低的值意味着重新平衡通常會快速完成,但提交失敗的風險將會增加,這是一種折衷。

+0

gotcha,所以我們將max.poll.interval.ms設置爲較高值的事實可能是導致重新平衡需要這麼長時間的原因?對於這兩種設置的比例是否有很好的參考,或者只是找出最適合您的東西? – ebensing

+0

你必須弄清楚你想要重新平衡需要多長時間,然後將'max.poll.interval.ms'設置爲該值,看看是否一切正常。如果這會觸發更多的重新平衡,請嘗試降低「max.poll.records」 – amethystic