日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

課程介紹:

Java是目前應(yīng)用為廣泛的軟件開發(fā)平臺(tái),學(xué)習(xí)針對(duì)Java程序的優(yōu)化方法有重要的現(xiàn)實(shí)意義。《Java程序性能優(yōu)化:讓你的Java程序更快、更穩(wěn)定》以Java性能調(diào)優(yōu)為主線,系統(tǒng)地闡述了與Java性能優(yōu)化相關(guān)的知識(shí)與技巧。

《Java程序性能優(yōu)化:讓你的Java程序更快、更穩(wěn)定》共6章,先后從軟件設(shè)計(jì)、軟件編碼、JVM調(diào)優(yōu)以及程序故障排斥等方面介紹針對(duì)Java程序的優(yōu)化方法。第1章介紹性能的基本概念、定律、系統(tǒng)調(diào)優(yōu)的過程和注意事項(xiàng)。第2章從設(shè)計(jì)層面介紹與性能相關(guān)的設(shè)計(jì)模式、組件。第3章從代碼層面介紹如何編寫高性能的Java程序。第4章介紹了并行開發(fā)和如何通過多線程提高系統(tǒng)性能。第5章立足于JVM虛擬機(jī)層面,介紹如何通過設(shè)置合理的JVM參數(shù)提升Java程序的性能。第6章為工具篇,介紹了獲取和監(jiān)控程序或系統(tǒng)性能指標(biāo)的各種工具,包括相關(guān)的故障排查工具。

《Java程序性能優(yōu)化:讓你的Java程序更快、更穩(wěn)定》適合所有Java程序員、軟件設(shè)計(jì)師、架構(gòu)師以及軟件開發(fā)愛好者,對(duì)于有一定經(jīng)驗(yàn)的Java工程師,本書更能幫助他突破技術(shù)瓶頸,深入Java內(nèi)核開發(fā)!

課程目錄

第1章 Java性能調(diào)優(yōu)概述

1.1 性能概述

1.1.1 看懂程序的性能

1.1.2 性能的參考指標(biāo)

1.1.3 木桶原理與性能瓶頸

1.1.4 Amdahl定律

1.2 性能調(diào)優(yōu)的層次

1.2.1 設(shè)計(jì)調(diào)優(yōu)

1.2.2 代碼調(diào)優(yōu)

1.2.3 JVM調(diào)優(yōu)

1.2.4 數(shù)據(jù)庫調(diào)優(yōu)

1.2.5 操作系統(tǒng)調(diào)優(yōu)

1.3 基本調(diào)優(yōu)策略和手段

1.3.1 優(yōu)化的一般步驟

1.3.2 系統(tǒng)優(yōu)化注意事項(xiàng)

1.4 小結(jié)

第2章 設(shè)計(jì)優(yōu)化

2.1 善用設(shè)計(jì)模式

2.1.1 單例模式

2.1.2 代理模式

2.1.3 享元模式

2.1.4 裝飾者模式

2.1.5 觀察者模式

2.1.6 Value Object模式

2.1.7 業(yè)務(wù)代理模式

2.2 常用優(yōu)化組件和方法

2.2.1 緩沖(Buffer)

2.2.2 緩存(Cache)

2.2.3 對(duì)象復(fù)用——“池”

2.2.4 并行替代串行

2.2.5 負(fù)載均衡

2.2.6 時(shí)間換空間

2.2.7 空間換時(shí)間

2.3 小結(jié)

第3章 Java程序優(yōu)化

3.1 字符串優(yōu)化處理

3.1.1 String對(duì)象及其特點(diǎn)

3.1.2 subString()方法的內(nèi)存泄漏

3.1.3 字符串分割和查找

3.1.4 StringBuffer和StringBuilder

3.2 核心數(shù)據(jù)結(jié)構(gòu)

3.2.1 List接口

3.2.2 Map接口

3.2.3 Set接口

3.2.4 優(yōu)化集合訪問代碼

3.2.5 RandomAccess接口

3.3 使用NIO提升性能

3.3.1 NIO的Buffer類族和Channel

3.3.2 Buffer的基本原理

3.3.3 Buffer的相關(guān)操作

3.3.4 MappedByteBuffer性能評(píng)估

3.3.5 直接內(nèi)存訪問

3.4 引用類型

3.4.1 強(qiáng)引用

3.4.2 軟引用

3.4.3 弱引用

3.4.4 虛引用

3.4.5 WeakHashMap類及其實(shí)現(xiàn)

3.5 有助于改善性能的技巧

3.5.1 慎用異常

3.5.2 使用局部變量

3.5.3 位運(yùn)算代替乘除法

3.5.4 替換switch

3.5.5 一維數(shù)組代替二維數(shù)組

3.5.6 提取表達(dá)式

3.5.7 展開循環(huán)

3.5.8 布爾運(yùn)算代替位運(yùn)算

3.5.9 使用arrayCopy ()

3.5.10 使用Buffer進(jìn)行I/O操作

3.5.11 使用clone()代替new

3.5.12 靜態(tài)方法替代實(shí)例方法

3.6 小結(jié)

第4章 并行程序開發(fā)及優(yōu)化

4.1 并行程序設(shè)計(jì)模式

4.1.1 Future模式

4.1.2 Master-Worker模式

4.1.3 Guarded Suspension模式

4.1.4 不變模式

4.1.5 生產(chǎn)者-消費(fèi)者模式

4.2 JDK多任務(wù)執(zhí)行框架

4.2.1 無限制線程的缺陷

4.2.2 簡單的線程池實(shí)現(xiàn)

4.2.3 Executor框架

4.2.4 自定義線程池

4.2.5 優(yōu)化線程池大小

4.2.6 擴(kuò)展ThreadPoolExecutor

4.3 JDK并發(fā)數(shù)據(jù)結(jié)構(gòu)

4.3.1 并發(fā)List

4.3.2 并發(fā)Set

4.3.3 并發(fā)Map

4.3.4 并發(fā)Queue

4.3.5 并發(fā)Deque

4.4 并發(fā)控制方法

4.4.1 Java內(nèi)存模型與volatile

4.4.2 同步關(guān)鍵字synchronized

4.4.3 ReentrantLock重入鎖

4.4.4 ReadWriteLock讀寫鎖

4.4.5 Condition對(duì)象

4.4.6 Semaphore信號(hào)量

4.4.7 ThreadLocal線程局部變量

4.5 “鎖”的性能和優(yōu)化

4.5.1 線程的開銷

4.5.2 避免死鎖

4.5.3 減小鎖持有時(shí)間

4.5.4 減小鎖粒度

4.5.5 讀寫分離鎖來替換獨(dú)占鎖

4.5.6 鎖分離

4.5.7 重入鎖ReentrantLock和內(nèi)部鎖synchronized

4.5.8 鎖粗化(Lock Coarsening)

4.5.9 自旋鎖(Spinning Lock)

4.5.10 鎖消除(Lock Elimination)

4.5.11 鎖偏向(Biased Lock)

4.6 無鎖的并行計(jì)算

4.6.1 非阻塞的同步/無鎖

4.6.2 原子操作

4.6.3 Amino框架介紹

4.6.4 Amino集合

4.6.5 Amino樹

4.6.6 Amino圖

4.6.7 Amino簡單調(diào)度模式

4.7 協(xié)程

4.7.1 協(xié)程的概念

4.7.2 Kilim框架簡介

4.7.3 Task及其狀態(tài)

4.7.4 Fiber及其狀態(tài)

4.7.5 Kilim開發(fā)環(huán)境配置

4.7.6 Kilim之Hello World

4.7.7 多任務(wù)通信

4.7.8 Kilim實(shí)例及性能評(píng)估

4.8 小結(jié)

第5章 JVM調(diào)優(yōu)

5.1 Java虛擬機(jī)內(nèi)存模型

5.1.1 程序計(jì)數(shù)器

5.1.2 Java虛擬機(jī)棧

5.1.3 本地方法棧

5.1.4 Java堆

5.1.5 方法區(qū)

5.2 JVM內(nèi)存分配參數(shù)

5.2.1 設(shè)置最大堆內(nèi)存

5.2.2 設(shè)置最小堆內(nèi)存

5.2.3 設(shè)置新生代

5.2.4 設(shè)置持久代

5.2.5 設(shè)置線程桟

5.2.6 堆的比例分配

5.2.7 堆分配參數(shù)總結(jié)

5.3 垃圾收集基礎(chǔ)

5.3.1 垃圾收集的作用

5.3.2 垃圾回收算法與思想

5.3.3 垃圾收集器的類型

5.3.4 評(píng)價(jià)GC策略的指標(biāo)

5.3.5 新生代串行收集器

5.3.6 老年代串行收集器

5.3.7 并行收集器

5.3.8 新生代并行回收(Parallel Scavenge)收集器

5.3.9 老年代并行回收收集器

5.3.10 CMS收集器

5.3.11 G1收集器(Garbage First)

5.3.12 Stop the World案例

5.3.13 收集器對(duì)系統(tǒng)性能的影響

5.3.14 GC相關(guān)參數(shù)總結(jié)

5.4 常用調(diào)優(yōu)案例和方法

5.4.1 將新對(duì)象預(yù)留在新生代

5.4.2 大對(duì)象進(jìn)入老年代

5.4.3 設(shè)置對(duì)象進(jìn)入老年代的年齡

5.4.4 穩(wěn)定與震蕩的堆大小

5.4.5 吞吐量優(yōu)先案例

5.4.6 使用大頁案例

5.4.7 降低停頓案例

5.5 實(shí)用JVM參數(shù)

5.5.1 JIT編譯參數(shù)

5.5.2 堆快照(堆Dump)

5.5.3 錯(cuò)誤處理

5.5.4 取得GC信息

5.5.5 類和對(duì)象跟蹤

5.5.6 控制GC

5.5.7 選擇類校驗(yàn)器

5.5.8 Solaris下線程控制

5.5.9 使用大頁

5.5.10 壓縮指針

5.6 實(shí)戰(zhàn)JVM調(diào)優(yōu)

5.6.1 Tomcat簡介與啟動(dòng)加速

5.6.2 Web應(yīng)用程序介紹

5.6.3 JMeter介紹與使用

5.6.4 調(diào)優(yōu)前Web應(yīng)用運(yùn)行狀況

5.6.5 調(diào)優(yōu)過程

5.7 總結(jié)

第6章 Java性能調(diào)優(yōu)工具

6.1 Linux命令行工具

6.1.1 top命令

6.1.2 sar命令

6.1.3 vmstat命令

6.1.4 iostat命令

6.1.5 pidstat工具

6.2 Windows工具

6.2.1 任務(wù)管理器

6.2.2 perfmon性能監(jiān)控工具

6.2.3 Process Explorer

6.2.4 pslist命令行

6.3 JDK命令行工具

6.3.1 jps命令

6.3.2 jstat命令

6.3.3 jinfo命令

6.3.4 jmap命令

6.3.5 jhat命令

6.3.6 jstack命令

6.3.7 jstatd命令

6.3.8 hprof工具

6.4 JConsole工具

6.4.1 JConsole連接Java程序

6.4.2 Java程序概況

6.4.3 內(nèi)存監(jiān)控

6.4.4 線程監(jiān)控

6.4.5 類加載情況

6.4.6 虛擬機(jī)信息

6.4.7 MBean管理

6.4.8 使用插件

6.5 Visual VM多合一工具

6.5.1 Visual VM連接應(yīng)用程序

6.5.2 監(jiān)控應(yīng)用程序概況

6.5.3 Thread Dump和分析

6.5.4 性能分析

6.5.5 快照

6.5.6 內(nèi)存快照分析

6.5.7 MBean管理

6.5.8 TDA使用

6.5.9 BTrace介紹

6.6 Visual VM對(duì)OQL的支持

6.6.1 Visual VM的OQL基本語法

6.6.2 內(nèi)置heap對(duì)象

6.6.3 對(duì)象函數(shù)

6.6.4 集合/統(tǒng)計(jì)函數(shù)

6.6.5 程序化OQL

6.7 MAT內(nèi)存分析工具

6.7.1 初識(shí)MAT

6.7.2 淺堆和深堆

6.7.3 支配樹(Dominator Tree)

6.7.4 垃圾回收根

6.7.5 內(nèi)存泄露檢測(cè)

6.7.6 最大對(duì)象報(bào)告

6.7.7 查找支配者

6.7.8 線程分析

6.7.9 集合使用情況分析

6.7.10 擴(kuò)展MAT

6.8 MAT對(duì)OQL的支持

6.8.1 Select子句

6.8.2 From子句

6.8.3 Where子句

6.8.4 內(nèi)置對(duì)象與方法

6.9 JProfile簡介

6.9.1 JProfile使用配置

6.9.2 內(nèi)存視圖

6.9.3 堆快照

6.9.4 CPU視圖

6.9.5 線程視圖

6.9.6 JVM統(tǒng)計(jì)信息

6.9.7 觸發(fā)器

6.10 小結(jié)

 

分享到:
標(biāo)簽:Java程序性能優(yōu)化 IT編程 Java 學(xué)習(xí)教程
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績?cè)u(píng)定