Closed chinghongfang closed 1 year ago
由刪除 9000 partition 的 topic 的動作,可以看出 WebService
CPU 負擔高是因為 partition 數量多 (-> metric 多 -> local collector 忙),而這是合理的現象,也正是 topic collector 想要解決的問題。
因為已經知道 WebService
CPU 負載的來源,且有 topic collector 解決此一問題,所以關閉此一議題。
在測試比較 topic collector 和 local collector 時,發現
WebService
啟動後 CPU 用量很高 (和使用StrictCostPartitioner
的 performance tool 相當)環境
這次的測試會把
WebService
和 performance tool 分開時間啟動,方便釐清問題。 另外,為了公平比較,WebService
改到 client 的機器啟動,在同一個機器下觀察WebService
和 performance tool 的 CPU 使用率。步驟
WebService
(local metric collect) (14:26:15)WebService
(14:34:30)指令
C1 建立
WebService
C1 ~ C9 執行 performance tool
結果
WebService
啟動時的 CPU 用量落在 10.2% ~ 24.7% 在第 3. 步驟的時候 (刪除 topic), CPU 用量有下降許多 (變成 1.1% ~ 1.8%),可以說明 partition 多的時候 metric 收集負擔大。 後面 performance tool 使用的StrictCostPartitioner
也使用相同的 metric 收集方法, CPU 用量落在 12.0% ~ 32.4%