如何進行實時任務優化 《阿里巴巴大資料之路》

2021-10-22 15:14:18 字數 743 閱讀 2773

如何進行實時任務優化

獨佔資源和共享資源的策 略

在一台機器中, 共享資源池可以被多個實時 任務搶占, 如果乙個任 務在執行時 80% 以上的時間都需要去搶資源 ,這時候就需要考慮給它分 配更多的獨佔資源, 避免搶不到 cpu 資源導致吞吐量急劇下降。

合理選擇快取機制, 盡量降低讀寫庫次數

記憶體讀寫效能是最好的, 根據業務的特性選擇不同的 快取機制, 讓 最熱和最可能使用的資料留 在記憶體中, 讀寫庫次數降低後, 吞吐量自 然

就上公升了。

計算單元合併, 降低拓撲層級

拓撲結構層級越深 , 效能越差, 因為資料在每個節點間傳輸時 , 大 部分是需要經過序列化和反序 列化的, 而這個過程非常消耗 cpu 和時間 。

記憶體物件共享, 避免字元拷貝

在海量資料處理中, 大部分物件都是以字串形 式存在的, 在不同 執行緒間合理共享物件, 可以大幅降低字元拷貝帶來 的效能消耗, 不過要

注意不合理使用帶來的記憶體溢 出問題。

在高吞吐量和低延時間取平衡

高吞吐量和低延時這兩個特性是一對矛盾體,

當把多個讀寫庫操作

或者 ack 操作合併成乙個時, 可以大幅降低因為網路請求帶來的消耗, 不過也會導致延時高一些, 在業務上衡量進行取捨。

springboot如何進行優化

這一部分分為三個部分,啟動部分的優化,tomcat引數設定和記憶體調優 configuration enableautoconfiguration 用 bean 註解顯式配置,以便被 spring 掃瞄到 bean public messagecontroller messagecontroller...

如何進行java系統優化

上面這個核心字多點說也就是 更多使用者訪問 更短響應時間 資料正確性。優化的過程,我的想法就是先順藤摸瓜,沿著乙個請求發生的路徑一路看過去,測量一下每個點上消耗的時間,會發現很多消耗時間多的點,都是值得你去優化的地方。然後再考慮在每個點上發生了擁擠導致響應時間變長了又該怎麼解決。當然也不需要一上來就...

如何進行mysql的優化

1 設計表的時候考慮選擇什麼樣的儲存引擎,myisam不之策事務,但查詢速度快,不過現在一般採用的都是inndb,能符合95 的專案需求。2 避免全表查詢的操作。3 在where 和 order by 的字段建立索引。但索引不是越多越好,會使insert 和update 的速度變慢。4 盡量不要採用...