大話Java性能優(yōu)化_第1頁
大話Java性能優(yōu)化_第2頁
大話Java性能優(yōu)化_第3頁
大話Java性能優(yōu)化_第4頁
大話Java性能優(yōu)化_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

大話Java性能優(yōu)化讀書筆記模板01思維導(dǎo)圖目錄分析讀書筆記內(nèi)容摘要作者介紹精彩摘錄目錄0305020406思維導(dǎo)圖大話性能知識優(yōu)化性能建議程序優(yōu)化對象小結(jié)建議方法機制性能概念類技術(shù)架構(gòu)程序本書關(guān)鍵字分析思維導(dǎo)圖內(nèi)容摘要內(nèi)容摘要本書主要提供Java性能調(diào)優(yōu)方面的參考建議及經(jīng)驗交流。作者力求做到知識的綜合傳播,而不是僅僅只針對Java虛擬機調(diào)優(yōu)進行講解,另外力求每一章節(jié)都有實際的案例支撐。具體包括:性能優(yōu)化策略、程序編寫及硬件服務(wù)器的基礎(chǔ)知識、JavaAPI優(yōu)化建議、算法類程序的優(yōu)化建議、并行計算優(yōu)化建議、Java程序性能監(jiān)控及檢測、JVM原理知識、其他相關(guān)優(yōu)化知識等。通讀本書后,讀者可以深入了解Java性能調(diào)優(yōu)的許多主題及相關(guān)的綜合性知識。讀者也可以把本書作為參考,對于感興趣的主題,直接跳到相應(yīng)章節(jié)尋找答案。總的來說,性能調(diào)優(yōu)在很大程度上是一門藝術(shù),解決的Java性能問題越多,技藝才會越精湛。我們不僅要關(guān)心JVM的持續(xù)演進,也要積極地去了解底層的硬件平臺和操作系統(tǒng)的進步。目錄分析1.1為什么需要調(diào)優(yōu)1.2性能優(yōu)化的參考因素1.3性能調(diào)優(yōu)分類方法1.4本章小結(jié)第1章性能調(diào)優(yōu)策略概述1.2性能優(yōu)化的參考因素1.2.1傳統(tǒng)計算機體系的分歧1.2.2導(dǎo)致系統(tǒng)瓶頸的計算資源1.2.3程序性能衡量指標(biāo)1.2.4性能優(yōu)化目標(biāo)1.2.5性能優(yōu)化策略1.3性能調(diào)優(yōu)分類方法1.3.1業(yè)務(wù)方面1.3.2基礎(chǔ)技術(shù)方面1.3.3組件方面1.3.4架構(gòu)方面1.3.5層次方面2.2新興技術(shù)2.1服務(wù)器知識第2章優(yōu)化前的準(zhǔn)備知識2.1服務(wù)器知識2.1.1內(nèi)存2.1.2GPU/CPU2.1.3硬盤2.1.4網(wǎng)絡(luò)架構(gòu)3.1面向?qū)ο蠹盎A(chǔ)類型3.2集合類概念3.3字符串概念3.4引用類型概念第3章JavaAPI調(diào)用優(yōu)化建議3.6本章小結(jié)3.5其他相關(guān)概念第3章JavaAPI調(diào)用優(yōu)化建議3.1面向?qū)ο蠹盎A(chǔ)類型3.1.1采用Clone()方式創(chuàng)建對象3.1.2避免對boolean判斷3.1.3多用條件操作符3.1.4靜態(tài)方法替代實例方法3.1.5有條件地使用final關(guān)鍵字3.1.6避免不需要的instanceof操作3.1.7避免子類中存在父類轉(zhuǎn)換3.1.8建議多使用局部變量3.1.9運算效率最高的方式—位運算3.2集合類概念3.2.1快速刪除List里面的數(shù)據(jù)3.2.2集合內(nèi)部避免返回null3.2.3ArrayList、LinkedList比較3.2.4Vector、HashTable比較3.2.5HashMap使用經(jīng)驗3.2.6EnumSet、EnumMap3.2.7HashSet使用經(jīng)驗3.2.8LinkedHashMap、TreeMap比較3.2.9集合處理優(yōu)化新方案3.3字符串概念3.3.1String對象3.3.2善用String對象的SubString方法3.3.3用charat()代替startswith()3.3.4在字符串相加的時候,使用''代替""3.3.5字符串切割3.3.6字符串重編碼3.3.7合并字符串3.3.8正則表達式不是萬能的3.4引用類型概念3.4.1強引用(StrongReference)3.4.2軟引用(SoftReference)3.4.3弱引用(WeakReference)3.4.4引用隊列3.4.5虛引用(PhantomReference)3.5其他相關(guān)概念3.5.1JNI技術(shù)提升3.5.2異常捕獲機制3.5.3ExceptionUtils類3.5.4循環(huán)技巧3.5.5替換switch3.5.6優(yōu)化循環(huán)3.5.7使用arrayCopy()3.5.8使用Buffer進行I/O操作3.5.9使用clone()代替new4.1算法優(yōu)化概述4.2設(shè)計模式4.3I/O及網(wǎng)絡(luò)相關(guān)優(yōu)化4.4數(shù)據(jù)應(yīng)用優(yōu)化第4章程序設(shè)計優(yōu)化建議4.6本章小結(jié)4.5其他優(yōu)化第4章程序設(shè)計優(yōu)化建議4.1算法優(yōu)化概述4.1.1常用算法邏輯描述4.1.2多核算法優(yōu)化原理4.1.3Java算法優(yōu)化實踐4.2設(shè)計模式4.2.1設(shè)計模式的六大準(zhǔn)則4.2.2單一對象控制4.2.3并行程序設(shè)計模式4.2.4接口適配4.2.5訪問方式隔離4.3I/O及網(wǎng)絡(luò)相關(guān)優(yōu)化4.3.1I/O操作優(yōu)化4.3.2Socket編程4.3.3NIO2.0文件系統(tǒng)4.4數(shù)據(jù)應(yīng)用優(yōu)化4.4.1關(guān)系型數(shù)據(jù)庫優(yōu)化4.4.2向HBase插入大量數(shù)據(jù)4.4.3解決海量數(shù)據(jù)緩存4.5其他優(yōu)化4.5.1Web系統(tǒng)性能優(yōu)化建議4.5.2死鎖情況解決方案4.5.3JavaBeans組件5.1并行程序優(yōu)化概述5.2鎖機制對比5.3增加程序并行性5.4JDK類庫使用5.5本章小結(jié)12345第5章Java并行程序優(yōu)化建議5.1并行程序優(yōu)化概述5.1.1資源限制帶來的挑戰(zhàn)5.1.2進程、線程、協(xié)程5.1.3使用多線程的原因5.1.4線程不安全范例5.1.5重排序機制5.1.6實例變量的數(shù)據(jù)共享5.1.7生產(chǎn)者與消費者模式5.1.8線程池的使用5.2鎖機制對比5.2.1鎖機制概述5.2.2Synchronized使用技巧5.2.3Volatile的使用技巧5.2.4隊列同步器5.2.5可重入鎖5.2.6讀寫鎖5.2.7偏向鎖和輕量級鎖5.3增加程序并行性5.3.1并發(fā)計數(shù)器5.3.2減少上下文切換次數(shù)5.3.3針對Thread類的更新5.3.4Fork/Join框架5.3.5Executor框架5.4JDK類庫使用5.4.1原子值5.4.2并行容器5.4.3非阻塞隊列5.4.4阻塞隊列5.4.5并發(fā)工具類6.1監(jiān)控計算機設(shè)備層6.3本章小結(jié)6.2監(jiān)控JVM活動第6章JVM性能測試及監(jiān)控6.1監(jiān)控計算機設(shè)備層6.1.1監(jiān)控CPU6.1.2監(jiān)控內(nèi)存6.1.3監(jiān)控磁盤6.1.4監(jiān)控網(wǎng)絡(luò)6.2監(jiān)控JVM活動6.2.1監(jiān)控垃圾收集目的6.2.2GC垃圾回收報告分析6.2.3圖形化工具6.2.4GC跟蹤示例7.1JVM相關(guān)概念7.2JVM系統(tǒng)架構(gòu)7.3垃圾回收機制相關(guān)7.4實用JVM實驗7.5本章小結(jié)12345第7章JVM性能調(diào)優(yōu)建議7.1JVM相關(guān)概念7.1.1內(nèi)存使用相關(guān)概念7.1.2字節(jié)碼相關(guān)知識7.1.3自動內(nèi)存管理7.2JVM系統(tǒng)架構(gòu)7.2.1JVM的基本架構(gòu)7.2.2JVM初始化過程7.2.3JVM架構(gòu)模型與執(zhí)行引擎7.2.4解釋器與JIT編譯器7.2.5類加載機制7.2.6虛擬機7.3垃圾回收機制相關(guān)7.3.1GC相關(guān)概念7.3.2垃圾回收算法7.3.3垃圾收集器7.4實用JVM實驗7.4.1將新對象預(yù)留在年輕代7.4.2大對象進入年老代7.4.3設(shè)置對象進入年老代的年齡7.4.4穩(wěn)定與震蕩的堆大小7.4.5吞吐量優(yōu)先案例7.4.6使用大頁案例7.4.7降低停頓案例7.4.8設(shè)置最大堆內(nèi)存7.4.9設(shè)置最小堆內(nèi)存8.1Java現(xiàn)有機制及未來發(fā)展8.2系統(tǒng)架構(gòu)優(yōu)化建議8.3與編程無關(guān)8.4本章小結(jié)第8章其他優(yōu)化建議8.1Java現(xiàn)有機制及未來發(fā)展8.1.1Java體系結(jié)構(gòu)變化歷史8.1.2Java語言面臨的挑戰(zhàn)8.1.3Java8的新特性8.1.4Java語言前景8.1.5物聯(lián)網(wǎng):Java和你是一對8.1.6Java模塊化發(fā)展8.1.7OpenJDK的發(fā)展8.2系統(tǒng)架構(gòu)優(yōu)化建議8.2.1系統(tǒng)架構(gòu)調(diào)優(yōu)8.2.2Java項目優(yōu)化方式分享8.2.3面向服務(wù)架構(gòu)8.2.4程序隔離技術(shù)8.2.5團隊并行開發(fā)準(zhǔn)則8.3與編程無關(guān)8

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論