當前位置:才華齋>IT認證>JAVA認證>

Java程式效能的調優

JAVA認證 閱讀(7.87K)

Java 技術具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用於PC、資料中心、遊戲控制檯、科學超級計算機、行動電話和網際網路,同時擁有全球最大的開發者專業社群。下面小編準備了關於Java程式效能調優的文章,提供給大家參考!

Java程式效能的調優

在《Java TM Platform Performance》一書中,定義瞭如下五個方面來作為評判效能的標準:

1) 運算的效能——哪一個演算法的執行效能最好?

2) 記憶體的分配——程式執行時需要耗費多少記憶體?

3) 啟動的時間——程式啟動需要多長時間?這在Web專案中的影響不大,但要注意部分程式需要部署或執行在客戶端時的情形(比如applet程式)。

4) 程式的可伸縮性——在壓力負載的情況下,程式的效能如何?

5) 效能的感知——使用者在什麼情況下會覺得程式的效能不好?

以上五個方面,在具體的使用場景可以有選擇的去評判。至於這五方面的效能調優,在後續的章節中將會陸續的給以相應的效能調優策略。

  調優的規則

我們只需要關心對我們程式有影響,可以察覺到的效能問題,而不是每一個類中的每一個方法我們都需要想方設法的提高效能。如果程式的效能沒有達到我們所期望的要求,我們才需要考慮如何優化效能。同樣的,晦澀的程式碼雖然提高了程式的效能,但同時可能帶給我們的是維護的噩夢。我們需要折中的考慮以上兩種情況,使得程式的程式碼是優美的`,並且執行的足夠快,達到客戶所期望的效能要求。

優化程式碼甚至會導致不良的結果,Donald Knuth(一位比較牛比較有影響的人物,具體是誰,我也忘了,誰知道,可以告訴我一下,謝謝!)曾說過,“Premature optimization is the root of all evil”。在開始效能調優前,需要先指出不優化程式碼的一些理由。

1) 如果優化的程式碼已經正常工作,優化後可能會引入新的bug;

2) 優化程式碼趨向於使程式碼更難理解和維護;

3) 在一個平臺上優化的程式碼,在另一個平臺上可能更糟;

4) 花費很多時間在程式碼的優化上,提高了很少的效能,卻導致了晦澀的程式碼。 確實,在優化前,我們必須認真的考慮是否值得去優化。

  調優的步驟

一般我們提高應用程式的效能劃分為以下幾個步驟:

1) 明確應用程式的效能指標,怎樣才符合期望的效能需求;

2) 在目標平臺進行測試;

3) 如果效能已經達到效能指標,Stop;

4) 查詢效能瓶頸;

5) 修改效能瓶頸;

6) 返回到第2步。