注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)計(jì)算機(jī)組織與體系結(jié)構(gòu)大話Java性能優(yōu)化

大話Java性能優(yōu)化

大話Java性能優(yōu)化

定 價(jià):¥89.00

作 者: 周明耀
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: Java Java Script J2EE 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

購(gòu)買這本書可以去


ISBN: 9787121284816 出版時(shí)間: 2016-04-01 包裝: 平塑勒
開本: 頁(yè)數(shù): 564 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書主要提供Java性能調(diào)優(yōu)方面的參考建議及經(jīng)驗(yàn)交流。作者力求做到知識(shí)的綜合傳播,而不是僅僅只針對(duì)Java虛擬機(jī)調(diào)優(yōu)進(jìn)行講解,另外力求每一章節(jié)都有實(shí)際的案例支撐。具體包括:性能優(yōu)化策略、程序編寫及硬件服務(wù)器的基礎(chǔ)知識(shí)、Java API優(yōu)化建議、算法類程序的優(yōu)化建議、并行計(jì)算優(yōu)化建議、Java程序性能監(jiān)控及檢測(cè)、JVM原理知識(shí)、其他相關(guān)優(yōu)化知識(shí)等。通讀本書后,讀者可以深入了解Java性能調(diào)優(yōu)的許多主題及相關(guān)的綜合性知識(shí)。讀者也可以把本書作為參考,對(duì)于感興趣的主題,直接跳到相應(yīng)章節(jié)尋找答案??偟膩?lái)說(shuō),性能調(diào)優(yōu)在很大程度上是一門藝術(shù),解決的Java性能問(wèn)題越多,技藝才會(huì)越精湛。我們不僅要關(guān)心JVM的持續(xù)演進(jìn),也要積極地去了解底層的硬件平臺(tái)和操作系統(tǒng)的進(jìn)步。

作者簡(jiǎn)介

  12年投資銀行項(xiàng)目、分布式計(jì)算項(xiàng)目工作經(jīng)驗(yàn),IBM開發(fā)者論壇專家作者。一名IT技術(shù)狂熱愛(ài)好者,一名頑強(qiáng)到底的工程師。我推崇技術(shù)創(chuàng)新、思維創(chuàng)新,對(duì)于新技術(shù)非常的熱愛(ài),致力于技術(shù)研發(fā)、研究,通過(guò)發(fā)布文章、書籍、互動(dòng)活動(dòng)的形式積極推廣軟件技術(shù)。 歡迎添加作者微信“michael_tec”,共同探討IT技術(shù)話題。

圖書目錄

第1章 性能調(diào)優(yōu)策略概述 11.1 為什么需要調(diào)優(yōu) 11.2 性能優(yōu)化的參考因素 51.2.1 傳統(tǒng)計(jì)算機(jī)體系的分歧 51.2.2 導(dǎo)致系統(tǒng)瓶頸的計(jì)算資源 71.2.3 程序性能衡量指標(biāo) 81.2.4 性能優(yōu)化目標(biāo) 91.2.5 性能優(yōu)化策略 101.3 性能調(diào)優(yōu)分類方法 111.3.1 業(yè)務(wù)方面 121.3.2 基礎(chǔ)技術(shù)方面 121.3.3 組件方面 171.3.4 架構(gòu)方面 191.3.5 層次方面 201.4 本章小結(jié) 21第2章 優(yōu)化前的準(zhǔn)備知識(shí) 222.1 服務(wù)器知識(shí) 232.1.1 內(nèi)存 232.1.2 GPU/CPU 442.1.3 硬盤 492.1.4 網(wǎng)絡(luò)架構(gòu) 512.2 新興技術(shù) 53第3章 Java API調(diào)用優(yōu)化建議 543.1 面向?qū)ο蠹盎A(chǔ)類型 553.1.1 采用Clone()方式創(chuàng)建對(duì)象 553.1.2 避免對(duì)boolean判斷 553.1.3 多用條件操作符 563.1.4 靜態(tài)方法代替實(shí)例方法 563.1.5 有條件地使用final關(guān)鍵字 583.1.6 避免不需要的instanceof操作 583.1.7 避免子類中存在父類轉(zhuǎn)換 593.1.8 建議多使用局部變量 603.1.9 運(yùn)算效率最高的方式——位運(yùn)算 603.1.10 用一維數(shù)組代替二維數(shù)組 623.1.11 布爾運(yùn)算代替位運(yùn)算 643.1.12 提取表達(dá)式優(yōu)化 653.1.13 不要總是使用取反操作符(!) 663.1.14 不要重復(fù)初始化變量 663.1.15 變量初始化過(guò)程思考 663.1.16 對(duì)象的創(chuàng)建、訪問(wèn)過(guò)程 693.1.17 在switch語(yǔ)句中使用字符串 703.1.18 數(shù)值字面量的改進(jìn) 733.1.19 優(yōu)化變長(zhǎng)參數(shù)的方法調(diào)用 743.1.20 針對(duì)基本數(shù)據(jù)類型的優(yōu)化 753.1.21 空變量 763.2 集合類概念 773.2.1 快速刪除List里面的數(shù)據(jù) 783.2.2 集合內(nèi)部避免返回null 803.2.3 ArrayList、LinkedList比較 823.2.4 Vector、HashTable比較 853.2.5 HashMap使用經(jīng)驗(yàn) 873.2.6 EnumSet、EnumMap 913.2.7 HashSet使用經(jīng)驗(yàn) 923.2.8 LinkedHashMap、TreeMap比較 963.2.9 集合處理優(yōu)化新方案 993.2.10 優(yōu)先考慮并行計(jì)算 1073.3 字符串概念 1083.3.1 String對(duì)象 1083.3.2 善用String對(duì)象的SubString方法 1113.3.3 用charat()代替startswith() 1133.3.4 在字符串相加的時(shí)候,使用' '代替" " 1143.3.5 字符串切割 1143.3.6 字符串重編碼 1173.3.7 合并字符串 1183.3.8 正則表達(dá)式不是萬(wàn)能的 1223.4 引用類型概念 1233.4.1 強(qiáng)引用(Strong Reference) 1263.4.2 軟引用(Soft Reference) 1313.4.3 弱引用(Weak Reference) 1353.4.4 引用隊(duì)列 1413.4.5 虛引用(Phantom Reference) 1423.5 其他相關(guān)概念 1463.5.1 JNI技術(shù)提升 1463.5.2 異常捕獲機(jī)制 1503.5.3 ExceptionUtils類 1543.5.4 循環(huán)技巧 1553.5.5 替換switch 1573.5.6 優(yōu)化循環(huán) 1583.5.7 使用arrayCopy() 1593.5.8 使用Buffer進(jìn)行I/O操作 1613.5.9 使用clone()代替new 1643.5.10 I/O速度 1663.5.11 Finally方法里面釋放或者關(guān)閉資源占用 1673.5.12 資源管理機(jī)制 1673.5.13 犧牲CPU時(shí)間 1693.5.14 對(duì)象操作 1723.5.15 正則表達(dá)式 1723.5.16 壓縮文件處理 1743.6 本章小結(jié) 175第4章 程序設(shè)計(jì)優(yōu)化建議 1764.1 算法優(yōu)化概述 1764.1.1 常用算法邏輯描述 1774.1.2 多核算法優(yōu)化原理 1864.1.3 Java算法優(yōu)化實(shí)踐 1884.2 設(shè)計(jì)模式 1964.2.1 設(shè)計(jì)模式的六大準(zhǔn)則 1964.2.2 單一對(duì)象控制 2004.2.3 并行程序設(shè)計(jì)模式 2024.2.4 接口適配 2054.2.5 訪問(wèn)方式隔離 2194.3 I/O及網(wǎng)絡(luò)相關(guān)優(yōu)化 2254.3.1 I/O操作優(yōu)化 2254.3.2 Socket編程 2314.3.3 NIO 2.0文件系統(tǒng) 2354.4 數(shù)據(jù)應(yīng)用優(yōu)化 2364.4.1 關(guān)系型數(shù)據(jù)庫(kù)優(yōu)化 2364.4.2 向HBase插入大量數(shù)據(jù) 2404.4.3 解決海量數(shù)據(jù)緩存 2514.5 其他優(yōu)化 2564.5.1 Web系統(tǒng)性能優(yōu)化建議 2564.5.2 死鎖情況解決方案 2594.5.3 JavaBeans組件 2684.6 本章小結(jié) 269第5章 Java并行程序優(yōu)化建議 2705.1 并行程序優(yōu)化概述 2705.1.1 資源限制帶來(lái)的挑戰(zhàn) 2715.1.2 進(jìn)程、線程、協(xié)程 2725.1.3 使用多線程的原因 2815.1.4 線程不安全范例 2825.1.5 重排序機(jī)制 2845.1.6 實(shí)例變量的數(shù)據(jù)共享 2865.1.7 生產(chǎn)者與消費(fèi)者模式 2885.1.8 線程池的使用 2905.2 鎖機(jī)制對(duì)比 2965.2.1 鎖機(jī)制概述 2965.2.2 Synchronized使用技巧 2985.2.3 Volatile的使用技巧 3035.2.4 隊(duì)列同步器 3045.2.5 可重入鎖 3075.2.6 讀寫鎖 3085.2.7 偏向鎖和輕量級(jí)鎖 3095.3 增加程序并行性 3105.3.1 并發(fā)計(jì)數(shù)器 3115.3.2 減少上下文切換次數(shù) 3125.3.3 針對(duì)Thread類的更新 3145.3.4 Fork/Join框架 3145.3.5 Executor框架 3185.4 JDK類庫(kù)使用 3195.4.1 原子值 3205.4.2 并行容器 3245.4.3 非阻塞隊(duì)列 3325.4.4 阻塞隊(duì)列 3385.4.5 并發(fā)工具類 3655.5 本章小結(jié) 376第6章 JVM性能測(cè)試及監(jiān)控 3776.1 監(jiān)控計(jì)算機(jī)設(shè)備層 3786.1.1 監(jiān)控CPU 3806.1.2 監(jiān)控內(nèi)存 4056.1.3 監(jiān)控磁盤 4176.1.4 監(jiān)控網(wǎng)絡(luò) 4236.2 監(jiān)控JVM活動(dòng) 4286.2.1 監(jiān)控垃圾收集目的 4296.2.2 GC垃圾回收?qǐng)?bào)告分析 4306.2.3 圖形化工具 4316.2.4 GC跟蹤示例 4376.3 本章小結(jié) 438第7章 JVM性能調(diào)優(yōu)建議 4397.1 JVM相關(guān)概念 4397.1.1 內(nèi)存使用相關(guān)概念 4407.1.2 字節(jié)碼相關(guān)知識(shí) 4437.1.3 自動(dòng)內(nèi)存管理 4487.2 JVM系統(tǒng)架構(gòu) 4517.2.1 JVM的基本架構(gòu) 4517.2.2 JVM初始化過(guò)程 4537.2.3 JVM架構(gòu)模型與執(zhí)行引擎 4567.2.4 解釋器與JIT編譯器 4567.2.5 類加載機(jī)制 4577.2.6 虛擬機(jī) 4587.3 垃圾回收機(jī)制相關(guān) 4597.3.1 GC相關(guān)概念 4597.3.2 垃圾回收算法 4687.3.3 垃圾收集器 4767.4 實(shí)用JVM實(shí)驗(yàn) 4907.4.1 將新對(duì)象預(yù)留在年輕代 4907.4.2 大對(duì)象進(jìn)入年老代 4947.4.3 設(shè)置對(duì)象進(jìn)入年老代的年齡 4957.4.4 穩(wěn)定與震蕩的堆大小 4977.4.5 吞吐量?jī)?yōu)先案例 4987.4.6 使用大頁(yè)案例 4997.4.7 降低停頓案例 4997.4.8 設(shè)置最大堆內(nèi)存 4997.4.9 設(shè)置最小堆內(nèi)存 5007.4.10 設(shè)置年輕代 5037.4.11 設(shè)置持久代 5047.4.12 設(shè)置線程棧 5047.4.13 堆的比例分配 5057.4.14 堆分配參數(shù)總結(jié) 5087.4.15 垃圾回收器相關(guān)參數(shù)總結(jié) 5097.4.16 查詢GC命令 5157.5 本章小結(jié) 515第8章 其他優(yōu)化建議 5168.1 Java現(xiàn)有機(jī)制及未來(lái)發(fā)展 5168.1.1 Java體系結(jié)構(gòu)變化歷史 5168.1.2 Java語(yǔ)言面臨的挑戰(zhàn) 5208.1.3 Java 8的新特性 5228.1.4 Java語(yǔ)言前景 5238.1.5 物聯(lián)網(wǎng):Java和你是一對(duì) 5248.1.6 Java模塊化發(fā)展 5258.1.7 OpenJDK的發(fā)展 5278.2 系統(tǒng)架構(gòu)優(yōu)化建議 5288.2.1 系統(tǒng)架構(gòu)調(diào)優(yōu) 5288.2.2 Java項(xiàng)目?jī)?yōu)化方式分享 5308.2.3 面向服務(wù)架構(gòu) 5348.2.4 程序隔離技術(shù) 5388.2.5 團(tuán)隊(duì)并行開發(fā)準(zhǔn)則 5448.3 與編程無(wú)關(guān) 5468.3.1 工程師品格 5468.3.2 如何成為技術(shù)大牛 5478.3.3 編程方法分享 5488.4 本章小結(jié) 549

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)