怎樣才能編寫高性能 Java 代碼

性能指標

在開始優化應用程序的性能之前,我們需要理解諸如可擴展性、性能、可用性等方面的非功能需求。

以下是典型Web應用程序常用的一些性能指標:

應用程序平均響應時間

系統必須支持的平均併發用戶數

在負載高峰期間,預期的每秒請求數

這些指標可以通過使用多種監視工具監測到,它們對分析性能瓶頸和性能調優有著非常大的作用。

創建對象:

避免在循環體中創建對象,循環前應該創建對象,避免浪費更多內存空間和增加GC負擔

這種情況在我們的實際應用中經常遇到,而且我們很容易犯類似的錯誤,例如下面的代碼:

for (int i = 0; i < 10000; i ++) {

Object obj = new Object(); //每次都在棧中創建了對象引用obj

System.out.println("obj= "+ obj);

}

怎樣才能編寫高性能 Java 代碼

上面代碼的書寫方式相信對你來說不會陌生,也許在以前的應用開發中你也這樣做過,尤其是在枚舉一個Vector對象中的對象元素的操作中經常會這樣書寫,但這卻違反了上述規則,因為這樣會浪費較大的內存空間,正確的方法如下所示:

Object obj = null; //在循環外創建對象引用,只是在棧中創建了一個對象引用obj

for (int i = 0; i < 10000; ++i) {

obj = new Object();

System.out.println("obj= "+ obj);

}

怎樣才能編寫高性能 Java 代碼

監控應用程序

要使用Retrace進行Java應用程序的開發,首先需要在Stackify上申請免費試用賬號。然後,將我們自己的Spring Boot應用程序配置為Linux服務。我們還需要在託管應用程序的服務器上安裝Retrace代理,按照這篇文章所述的操作即可。

Retrace代理和要監控的Java應用程序啟動後,我們就可以到Retrace儀表板上單擊AddApp按鈕添加應用了。添加應用完成之後,Retrace將開始監控應用程序了。

尚學堂立志解決中國教育不公平和低效率問題,幫助千千萬萬被傳統教育方式耽誤的人,傳授實用、前沿的知識,成就學員個人理想,為愛你的人和你愛的人創造美好的生活。尚學堂12大精英團隊+各類實戰項目,真正實現1+1>10的目標效果。幫助學員迅速成長,持久騰飛,成就學員“高富帥”人生。


分享到:


相關文章: