您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
Java程序性能优化--让你的Java程序更快更稳定
字数: 649
出版社: 清华大学
作者: 葛一鸣
商品条码: 9787302296256
版次: 1
开本: 16开
页数: 400
出版年份: 2012
印次: 1
定价:
¥59
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
内容简介
《Java程序性能优化--让你的Java程序更快更稳定》编著者葛一鸣。 java是目前应用最为广泛的软件开发平台,学习针对java程序的优化 方法有重要的现实意义。《java程序性能优化——让你的java程序更快、 更稳定》以java性能调优为主线,系统地阐述了与java性能优化相关的知 识与技巧。 《Java程序性能优化--让你的Java程序更快更稳定》共6章,先后从软 件设计、软件编码、jvm调优以及程序故障排除等方面介绍针对java程序的 优化方法。第1章介绍性能的基本概念、定律、系统调优的过程和注意事项 ;第2章从设计层面介绍与性能相关的设计模式、组件。第3章从代码层面 介绍如何编写高性能的java程序;第4章介绍并行开发和如何通过多线程提 高系统性能;第5章立足于jvm虚拟机层面,介绍如何通过设置合理的jvm参 数提升java程序的性能;第6章为工具篇,介绍获取和监控程序或系统性能 指标的各种工具,包括相关的故障排查工具。 《java程序性能优化——让你的java程序更快、更稳定》适合所有 java程序员、软件设计师、架构师以及软件开发爱好者,对于有一定经验 的java工程师,本书更能帮助突破技术瓶颈,深入java内核开发!
目录
第1章 java性能调优概述 1 1.1 性能概述 1 1.1.1 看懂程序的性能 1 1.1.2 性能的参考指标 2 1.1.3 木桶原理与性能瓶颈 2 1.1.4 amdahl定律 3 1.2 性能调优的层次 5 1.2.1 设计调优 5 1.2.2 代码调优 5 1.2.3 jvm调优 6 1.2.4 数据库调优 6 1.2.5 操作系统调优 6 1.3 基本调优策略和手段 7 1.3.1 优化的一般步骤 7 1.3.2 系统优化注意事项 8 1.4 小结 8 第2章 设计优化 10 2.1 善用设计模式 10 2.1.1 单例模式 10 2.1.2 代理模式 15 2.1.3 享元模式 24 2.1.4 装饰者模式 27 2.1.5 观察者模式 33 2.1.6 value object模式 37 2.1.7 业务代理模式 40 2.2 常用优化组件和方法 43 2.2.1 缓冲(buffer) 43 2.2.2 缓存(cache) 46 2.2.3 对象复用——“池” 50 2.2.4 并行替代串行 56 2.2.5 负载均衡 56 2.2.6 时间换空间 62 2.2.7 空间换时间 63 2.3 小结 65 第3章 java程序优化 66 3.1 字符串优化处理 66 3.1.1 string对象及其特点 66 3.1.2 substring()方法的内存泄漏 68 3.1.3 字符串分割和查找 71 3.1.4 stringbuffer和stringbuilder 74 3.2 核心数据结构 79 3.2.1 list接口 79 3.2.2 map接口 86 3.2.3 set接口 97 3.2.4 优化集合访问代码 99 3.2.5 randomaccess接口 101 3.3 使用nio提升性能 102 3.3.1 nio的buffer类族和channel 103 3.3.2 buffer的基本原理 104 3.3.3 buffer的相关操作 107 3.3.4 mappedbytebuffer性能评估 114 3.3.5 直接内存访问 116 3.4 引用类型 118 3.4.1 强引用 119 3.4.2 软引用 120 3.4.3 弱引用 121 3.4.4 虚引用 122 3.4.5 weakhashmap类及其实现 125 3.5 有助于改善性能的技巧 127 3.5.1 慎用异常 127 3.5.2 使用局部变量 128 3.5.3 位运算代替乘除法 128 3.5.4 替换switch 129 3.5.5 一维数组代替二维数组 130 3.5.6 提取表达式 131 3.5.7 展开循环 132 3.5.8 布尔运算代替位运算 133 3.5.9 使用arraycopy () 134 3.5.10 使用buffer进行i/o操作 135 3.5.11 使用clone()代替new 137 3.5.12 静态方法替代实例方法 139 3.6 小结 140 第4章 并行程序开发及优化 141 4.1 并行程序设计模式 141 4.1.1 future模式 141 4.1.2 master-worker模式 148 4.1.3 guarded suspension模式 153 4.1.4 不变模式 160 4.1.5 生产者-消费者模式 162 4.2 jdk多任务执行框架 166 4.2.1 无限制线程的缺陷 166 4.2.2 简单的线程池实现 167 4.2.3 executor框架 171 4.2.4 自定义线程池 173 4.2.5 优化线程池大小 177 4.2.6 扩展threadpoolexecutor 178 4.3 jdk并发数据结构 179 4.3.1 并发list 179 4.3.2 并发set 182 4.3.3 并发map 182 4.3.4 并发queue 183 4.3.5 并发deque 186 4.4 并发控制方法 187 4.4.1 java内存模型与volatile 187 4.4.2 同步关键字synchronized 190 4.4.3 reentrantlock重入锁 192 4.4.4 readwritelock读写锁 195 4.4.5 condition对象 196 4.4.6 semaphore信号量 198 4.4.7 threadlocal线程局部变量 200 4.5 “锁”的性能和优化 201 4.5.1 线程的开销 201 4.5.2 避免死锁 202 4.5.3 减小锁持有时间 206 4.5.4 减小锁粒度 207 4.5.5 读写分离锁来替换独占锁 208 4.5.6 锁分离 209 4.5.7 重入锁(reentrantlock)和内部锁(synchronized) 210 4.5.8 锁粗化(lock coarsening) 211 4.5.9 自旋锁(spinning lock) 212 4.5.10 锁消除(lock elimination) 212 4.5.11 锁偏向(biased lock) 214 4.6 无锁的并行计算 214 4.6.1 非阻塞的同步/无锁 214 4.6.2 原子操作 215 4.6.3 amino框架介绍 217 4.6.4 amino集合 218 4.6.5 amino树 222 4.6.6 amino图 222 4.6.7 amino简单调度模式 223 4.7 协程 226 4.7.1 协程的概念 226 4.7.2 kilim框架简介 226 4.7.3 task及其状态 227 4.7.4 fiber及其状态 228 4.7.5 kilim开发环境配置 228 4.7.6 kilim之hello world 230 4.7.7 多任务通信 232 4.7.8 kilim实例及性能评估 233 4.8 小结 236 第5章 jvm调优 237 5.1 java虚拟机内存模型 237 5.1.1 程序计数器 237 5.1.2 java虚拟机栈 238 5.1.3 本地方法栈 243 5.1.4 java堆 244 5.1.5 方法区 245 5.2 jvm内存分配参数 249 5.2.1 设置最大堆内存 249 5.2.2 设置最小堆内存 250 5.2.3 设置新生代 251 5.2.4 设置持久代 252 5.2.5 设置线程桟 253 5.2.6 堆的比例分配 254 5.2.7 堆分配参数总结 256 5.3 垃圾收集基础 257 5.3.1 垃圾收集的作用 257 5.3.2 垃圾回收算法与思想 258 5.3.3 垃圾收集器的类型 262 5.3.4 评价gc策略的指标 263 5.3.5 新生代串行收集器 264 5.3.6 老年代串行收集器 265 5.3.7 并行收集器 265 5.3.8 新生代并行回收(parallel scavenge)收集器 266 5.3.9 老年代并行回收收集器 267 5.3.10 cms收集器 267 5.3.11 g1收集器(garbage first) 270 5.3.12 stop the world案例 270 5.3.13 收集器对系统性能的影响 272 5.3.14 gc相关参数总结 273 5.4 常用调优案例和方法 275 5.4.1 将新对象预留在新生代 275 5.4.2 大对象进入老年代 278 5.4.3 设置对象进入老年代的年龄 279 5.4.4 稳定与震荡的堆大小 280 5.4.5 吞吐量优先案例 281 5.4.6 使用大页案例 282 5.4.7 降低停顿案例 282 5.5 实用jvm参数 283 5.5.1 jit编译参数 283 5.5.2 堆快照(堆dump) 284 5.5.3 错误处理 285 5.5.4 取得gc信息 285 5.5.5 类和对象跟踪 287 5.5.6 控制gc 288 5.5.7 选择类校验器 289 5.5.8 solaris下线程控制 289 5.5.9 使用大页 289 5.5.10 压缩指针 289 5.6 实战jvm调优 290 5.6.1 tomcat简介与启动加速 290 5.6.2 web应用程序介绍 292 5.6.3 jmeter介绍与使用 293 5.6.4 调优前web应用运行状况 296 5.6.5 调优过程 297 5.7 总结 298 第6章 java性能调优工具 299 6.1 linux命令行工具 299 6.1.1 top命令 299 6.1.2 sar命令 301 6.1.3 vmstat命令 302 6.1.4 iostat命令 304 6.1.5 pidstat工具 305 6.2 windows工具 309 6.2.1 任务管理器 309 6.2.2 perfmon性能监控工具 311 6.2.3 process explorer 313 6.2.4 pslist命令行 315 6.3 jdk命令行工具 317 6.3.1 jps命令 317 6.3.2 jstat命令 318 6.3.3 jinfo命令 322 6.3.4 jmap命令 323 6.3.5 jhat命令 324 6.3.6 jstack命令 326 6.3.7 jstatd命令 329 6.3.8 hprof工具 330 6.4 jconsole工具 332 6.4.1 jconsole连接java程序 332 6.4.2 java程序概况 333 6.4.3 内存监控 333 6.4.4 线程监控 335 6.4.5 类加载情况 335 6.4.6 虚拟机信息 336 6.4.7 mbean管理 337 6.4.8 使用插件 338 6.5 visual vm多合一工具 339 6.5.1 visual vm连接应用程序 339 6.5.2 监控应用程序概况 342 6.5.3 thread dump和分析 343 6.5.4 性能分析 344 6.5.5 快照 346 6.5.6 内存快照分析 347 6.5.7 mbean管理 349 6.5.8 tda使用 349 6.5.9 btrace介绍 350 6.6 visual vm对oql的支持 356 6.6.1 visual vm的oql基本语法 356 6.6.2 内置heap对象 357 6.6.3 对象函数 359 6.6.4 集合/统计函数 362 6.6.5 程序化oql 366 6.7 mat内存分析工具 368 6.7.1 初识mat 368 6.7.2 浅堆和深堆 371 6.7.3 支配树(dominator tree) 374 6.7.4 垃圾回收根 375 6.7.5 内存泄露检测 376 6.7.6 最大对象报告 378 6.7.7 查找支配者 378 6.7.8 线程分析 379 6.7.9 集合使用情况分析 380 6.7.10 扩展mat 381 6.8 mat对oql的支持 385 6.8.1 select子句 385 6.8.2 from子句 387 6.8.3 where子句 389 6.8.4 内置对象与方法 389 6.9 jprofile简介 393 6.9.1 jprofile使用配置 393 6.9.2 内存视图 394 6.9.3 堆快照 394 6.9.4 cpu视图 395 6.9.5 线程视图 397 6.9.6 jvm统计信息 397 6.9.7 触发器 398 6.10 小结 400
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网