Java 性能調優指南 Java性能调优指南
查理·亨特 (Charlie Hunt), Monica Beckwith, Poonam Parhar, Bengt Rutisson
- 出版商: 電子工業
- 出版日期: 2017-04-01
- 定價: $414
- 售價: 8.5 折 $352
- 語言: 簡體中文
- 頁數: 165
- 裝訂: 平裝
- ISBN: 7121309815
- ISBN-13: 9787121309816
-
相關分類:
Java 程式語言、軟體工程
- 此書翻譯自: Java Performance Companion
已絕版
買這商品的人也買了...
-
$680$537 -
$403實戰 Java 虛擬機 (JVM 故障診斷與性能優化)
-
$400$316 -
$780$616 -
$360$284 -
$403Java 性能權威指南 (Java Performance: The Definitive Guide)
-
$352區塊鏈技術指南
-
$332巧用 Gradle 構建 Android 應用
-
$505分佈式系統常用技術及案例分析
-
$281Java 線程與並發編程實踐
-
$301精通 Spring MVC 4 (Mastering Spring MVC 4)
-
$505Spring MVC 實戰
-
$454Spring Cloud 微服務實戰
-
$790$616 -
$590$460 -
$390$332 -
$403Tomcat 架構解析
-
$480$379 -
$500$395 -
$301區塊鏈開發指南
-
$958深度學習
-
$580$458 -
$379MyBatis 技術內幕
-
$490$245 -
$580$458
相關主題
商品描述
本書主要展示瞭如何在當今先進的多核硬件和復雜的操作系統環境下,系統且主動地提高Java 性能。本書對Charlie Hunt 和Binu John 的經典圖書Java Performance 進行延伸,提供了兩個前所未有的、強大的Java 平臺創新細節:Garbage First(G1)垃圾收集器和HotSpot 虛擬機服務代理。閱讀本書,你就可以在任何情況下從JDK8 或9 中發揮Java 的最大性能。
作者簡介
Charlie Hunt(芝加哥,伊利諾伊州)目前是一名在Oracle主導各種Java SE和HotSpot VM項目的JVM工程師,他的首要關注點在維持吞吐量和延遲的同時減少內存佔用量。他也是JavaTM Performance一書的第一作者。他是JavaOne大會的常任主持,並被公認為是Java超級明星。他同樣是很多會議的發言人,包括QCon、Velocity、GoTo和Dreamforce。Charlie之前為Oracle主導過各種Java SE和HotSpot VM項目,經歷過多個不同性能的崗位,包括在Salesforce.com擔任性能工程架構師,以及在Oracle和Sun Microsystems擔任HotSpot VM性能架構師。他在1998年寫下了他的第一個Java應用程序,在1999年作為Java高級架構師加入Sun Microsystems,從那以後一直對Java和JVM的性能抱有熱情。
Monica Beckwith是一位獨立的性能顧問,主要從事優化基於Java虛擬機的服務級系統的客戶應用程序。她過去的工作經歷包括Oracle、Sun Microsystems和AMD。Monica曾經從事用Java HotSpot VM優化JIT編譯器、生成代碼、JVM啟發式算法,以及垃圾收集和垃圾收集器方面的工作。她是許多會議上的固定發言人並多次發表主題為垃圾收集、Java內存模型等的文章。Monica領導過Oracle的G1垃圾收集器性能團隊,並被人稱為JavaOne搖滾明星。
Poonam Parhar (聖克拉拉,加利福利亞州)現在是一名在Oracle的JVM支持工程師,她的主要工作職責是解決針對JRockit和HotSpot VM的客戶升級問題。她喜歡調試和排除故障,並且一直關注著HotSpot VM適用性和可維護性的提升。她明確了HotSpot VM裡很多複雜的垃圾收集問題,並且為了能更方便進行故障排除和修復垃圾收集器相關的問題,她一直致力於提升調試工具和產品可維護性。她為可適用性代理調試器做出很多貢獻,並為它開發了一個VisualVM插件。她在2011年的JavaOne會議上分享了“適用於SA的VisualVM插件”。
Bengt Rutisson(斯德哥爾摩,瑞典)是一名Oracle的JVM工程師,他在HotSpot工程團隊工作。過去十年一直從事關於JVM裡的垃圾收集器的工作,他最初接觸的是JRockit VM,隨後六年使用HotSpot VM。Bengt是OpenJDK項目中的積極參與者,在特性、穩定性修復以及性能增強方面做出了許多貢獻。
目錄大綱
第1章Garbage First綜述1
術語1
並行垃圾收集器2
串行垃圾收集器4
並發標記清除(CMS)垃圾收集器5
收集器的概括總結7
Garbage First(G1)垃圾收集器8
G1設計10
巨型(Humongous)對象12
Full垃圾收集12
並發週期13
堆空間調整13
引用14
第2章深入Garbage First垃圾收集器15
背景15
G1中的垃圾收集16
年輕代17
年輕代收集暫停18
對像老化與老年代19
巨型分區19
混合收集22
收集集合及其重要性24
已記憶集合及其重要性24
並發優化線程以及柵欄28
G1 GC的並發標記30
並發標記階段34
初始標記34
根分區掃描34
並發標記34
重新標記36
清除36
轉移失敗與Full收集37
引用38
第3章Garbage First垃圾收集器性能優化39
年輕代收集的各階段39
所有並行活動的開始41
外部根分區42
已記憶集合和已處理緩衝區42
已記憶集合總結44
轉移和回收47
終止47
GC外部的並行活動48
所有並行活動總結48
所有串行活動的啟 動48
其他串行活動49
年輕代調優50
並發標記階段調優52
混合垃圾收集階段回顧54
混合垃圾收集階段調優56
避免轉移失敗59
引用處理60
觀察引用處理60
引用處理調優62
引用65
第4章The Serviceability Agent 67
SA是什麼67
為什麼要用SA 68
SA組件68
JDK中的SA二進製文件69
SA的JDK版本說明69
SA如何獲得Hotspot虛擬機的內部數據結構70
SA版本對照71
SA調試工具72
HSDB 72
HSDB工具80
命令行Hotspot調試器CLHSDB 100
其他工具103
CoreDump和崩潰Dump文件109
調試非本地生成的Core文件109
SA的共享庫問題110
消除共享庫問題110
SA的系統屬性111
SA的環境變量113
JDI實現114
擴展SA工具115
VisualVM的SA插件118
VisualVM中怎樣安裝SA插件119
SA插件使用119
SA插件功能120
用SA做故障分析124
內存溢出錯誤分析124
診斷語言層死鎖132
事後分析Hotspot虛擬機崩潰137
附錄虛擬機命令行附加參數探秘145
索引155