Java效能優化的5個技巧
版權宣告:本文為博主chszs的原創文章,未經博主允許不得轉載。 https://blog.csdn.net/chszs/article/details/72887387
Java效能優化的5個技巧
- 版權宣告:本文為博主chszs的原創文章,未經博主允許不得轉載。
要優化Java程式碼需要正確的分析它的工作機制,影響效能優化有幾個因素,比如垃圾收集、作業系統的設定、虛擬機器的設定等。
1. 從最小堆分配開始
推薦從最小堆分配開始。然後根據應用程式的實際需要來逐漸增加最小堆,可以通過下面的指令來指示JVM在發生OutOfMemoryError異常時傾倒堆資料:
-XX:+HeapDumpOnOutOfMemoryError
對可用記憶體的適當利用是優化應用速度的好辦法。
一開始時,堆尺寸保持在1GB~7GB之間就足以了。然後取決於老一代和新生代物件的比例進行調整。
2. 使用Java效能工具
業界有幾個Java效能工具,比如VisualVM、YourKit、Java Mission Control等,可用於跟蹤應用程式的效能。
NetBeans開發工具的Profiler也是一個很好的選擇。
3. 使用StringBuilder代替“+”操作符
對於字串的操作,其中如果用到了“+”操作符,那麼應該改用StringBuilder代替。比如上面的程式碼。
這樣使得字串值修改更容易,而且不會對垃圾收集器GC造成額外的壓力。
StringBuilder x = new StringBuilder("a");
x.append(args.length);
x.append("b");
if (args.length == 1);
x.append(args[0]);
4. 避免使用迭代器
如果程式碼像這樣:
for (String value: strings) {
// Do something useful here
}
那麼在每次執行這個程式碼時,都會建立一個新的迭代器例項,而這會消耗大量的記憶體。
故建議使用下面的程式碼:
int size = strings.size();
for (int i = 0; i < size; i++) {
String value: strings.get(i);
// Do something useful here
}
如果實際的列表物件不需要真正發生改變,那麼還可以在其陣列版本上操作,比如:
for (String value: stringArray) {
// Do something useful here
}
編寫基於索引的迭代非常有用。
5. 具有更好的並行控制
並行是把多個應用程式以彼此並行的方式執行。為了解決多請求的Web流,推薦使用帶樂觀鎖的分離實體或擴充套件的持久上下文。
此外,瞭解關聯式資料庫管理系統RDBMS和資料訪問框架的內部機制對提高資料訪問層的效能至關重要。
相關文章
- Java效能優化技巧集合Java優化
- CSS效能優化的8個技巧CSS優化
- CSS效能優化的幾個技巧CSS優化
- Apache效能優化的25個技巧Apache優化
- 5 個普通的 Java 效能技巧 - RichardJava
- Java 效能優化技巧及實戰Java優化
- 6個Python效能優化技巧Python優化
- Web效能優化系列:10個JavaScript效能提升的技巧Web優化JavaScript
- Java 效能調優的 11 個實用技巧Java
- 11 個簡單的 Java 效能調優技巧Java
- 45 個 PHP 程式效能優化的小技巧PHP優化
- 十個 Laravel 5 程式優化技巧Laravel優化
- [java][效能優化]java高階開發必會的50個效能優化Java優化
- 前端優化:9 個技巧,提高 Web 效能前端優化Web
- 前端優化 9 個技巧,提高 Web 效能前端優化Web
- MySQL效能優化的5個維度MySql優化
- SQL效能優化技巧SQL優化
- MySQL 效能優化技巧MySql優化
- jQuery 效能優化技巧jQuery優化
- PHP效能優化技巧PHP優化
- 優化 JS 條件語句的 5 個技巧優化JS
- Web開發者必知的25個Apache效能優化技巧WebApache優化
- JavaScript 效能優化技巧分享JavaScript優化
- java效能優化Java優化
- 5個介面效能提升的通用技巧
- 提高 PostgreSQL 插入效能的 5 個技巧SQL
- mpvue效能優化實戰技巧Vue優化
- web效能常見優化技巧Web優化
- javascript效能優化技巧介紹JavaScript優化
- 11個簡單的Java效能調優技巧,傻瓜都能學會!Java
- 使用Java API的5個技巧JavaAPI
- Java GC 專家系列5:Java應用效能優化的原則JavaGC優化
- 效能優化技巧知識梳理(1) 佈局優化優化
- [java基礎]11個簡單的Java效能調優技巧,傻瓜都能學會Java
- jQuery高階技巧——效能優化篇jQuery優化
- Python效能優化技巧總結Python優化
- Python 程式碼效能優化技巧Python優化
- MySQL5:效能優化MySql優化