本方案出自《storm應用實踐:實時事務處理之政策》,簡略的寫了一部分,詳細的方法就看書吧
1)叢集中工作程序沖突:
解決:通過檢視stormUI cluster summary中的free slots是否為零(為零表示新拓撲無法部署,沒有可用空程序)
2)拓撲停止或者不執行:
一般是因為沒有可用空程序了,可以通過減少現存拓撲在用的工作程序數量或者增加叢集總的程序數量(修改jvm預設記憶體配置/添加工作程序數量(添加端口)或者增加節點)
3)slot或者jvm記憶體沖突:
通過配置GC日志記錄進行日志分析OOM(outofmemary)錯誤
4)節點間記憶體沖突
開啟記憶體交換(不考慮傳輸延遲)
或者降低工作程序使用的總體記憶體量(減少整體工作程序的數量/降低jvm空間大小)
或者為每個節點增加記憶體
5)cpu資源沖突:
增強cpu
減少每個工作節點上的工作程序數量來分擔jvm上的負載
6)節點間io沖突:
磁盤io
減少磁盤寫入/換固态/不寫入NFS類型的網絡檔案系統
網絡io
換快網/減少每個節點上的工作程序/增加socket端口數量