1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. Java程序性能的調優

        時間:2024-06-26 18:37:44 JAVA認證 我要投稿
        • 相關推薦

        Java程序性能的調優

          Java 技術具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于PC、數據中心、游戲控制臺、科學超級計算機、移動電話和互聯網,同時擁有全球最大的開發者專業社群。下面小編準備了關于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步。

        【Java程序性能的調優】相關文章:

        影響Java EE性能的因素10-05

        如何編譯java程序09-28

        實現鼠標畫圖的Java程序06-22

        java編寫即時聊天程序08-26

        Java程序開發與運行環境06-21

        關于JAVA字符串的拼接與性能06-07

        sun認證java程序員07-20

        sun認證java程序員須知Java日志框架09-11

        java程序中如何調用linux命令08-27

        初級java程序員面試要求06-02

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>