Java 是目前应用最为广泛的软件开发平台之一。随着 Java 及 Java 社区的不断壮大,Java 早已不再是一门简单的计算机语言了,它更是一个平台、一种文化、一个社区。
作为一个平台,JVM 虚拟机起着举足轻重的作用。除了 Java 语言,任何一种能够被编译成字节码的计算机语言都属于 Java 这个平台。Groovy、Scala 和 JRuby 等都是 Java 平台的一部分,它们依赖于 JVM 虚拟机,同时,Java 平台也因为它们而变得更加丰富多彩。
作为一种文化,Java 几乎成为“开源”的代名词。在 Java 平台上,有大量的开源软件和框架,如 Tomcat、Struts、Hibernate 和 Spring 等。就连 JDK 和 JVM 自身也有不少的开源实现版本,如 OpenJDK 和 Harmony。可以说,“共享”的精神在 Java 世界里体现得淋漓尽致。
作为一个社区,Java 拥有无数的开发人员、数不清的论坛和资料。从桌面应用软件和嵌入式开发,到企业级应用、后台服务器和中间件,都可以看到 Java 的身影。其应用形式之复杂、参与人数之庞大也令人咂舌。可以说,Java 社区已经成为一个良好而庞大的生态系统。
本书的主要特色有:
专注于 Java 应用程序的优化方法、技巧和思想,并深度剖析 JDK 部分的实现。
具有较强的层次性和连贯性,深入剖析软件设计层面、代码层面和 JVM 虚拟机层面的优化方法。
理论结合实践,使用丰富的示例帮助读者理解理论知识。
由于文章篇幅限制,且书籍内容过于详细,小编尽可能的为大家展示更多内容,完整版-【dian这里即可!】
本书主要介绍 Java 应用程序的优化方法和技巧,共分为 6 章。
介绍性能的基本概念、两个重要理论(木桶原理和 Amdahl 定律),以及系统调优的一般步骤与注意事项。
1.1 性能概述
1.2 性能调优的层次
1.3 基本调优策略和手段
从设计层面介绍与性能相关的设计模式、组件及有助于改善性能的软件设计思想。
2.1 善用设计模式
2.2 常用的优化组件和方法
从代码层面介绍如何编写高性能的 Java 代码,涉及的主要内容有字符串的优化处理、文件 IO 的优化、核心数据结构的使用、Java 的引用类型及一些常用的惯例。
3.1 字符串优化处理
3.2 核心数据结构
3.3 使用 NIO 提升性能
3.4 引用类型
3.5 性能测试工具 JMH
3.6 有助于改善性能的技巧
介绍并行程序开发的相关知识,以及如何通过多线程提高系统性能,涉及的主要内容有并发设计模式、多任务执行框架、并发数据结构的使用、并发控制方法、“锁”的优化、无锁的并行计算及协程。
4.1 并行程序设计模式
4.2 JDK 多任务执行框架
4.3 JDE 并发数据结构
4.4 并发控制方法
4.5 锁的性能和优化
4.6 无锁的并行计算
4.7 协程
立足于 JVM 虚拟机层面,介绍如何通过设置合理的 JVM 参数提升 Java 程序的性能。
5.1 Java 虚拟机内存模型
5.2 JVM 内存分配参数
5.3 垃圾收集基础
5.4 常用调优案例和方法
5.5 实用 JVM 参数
5.6JVM 调优实战
主要介绍获取和监控程序或系统性能指标的各种工具,以及 Java 应用程序相关的故障排查工具。
6.1 Linux 命令行工具
6.2 windows 工具
6.3JDK 命令行工具
6.4 Jonsole 工具
6.5 Visual VM 多合一工具
6.6 Visual VM 对 0QI 的支持
6.7 MAT 内存分析工具
6.8 MAT 对 0QI 的支持
6.9 来自 JRockit 的礼物——JMC
想要通读本书并取得良好的学习效果,读者需要具备 Java 的基础知识。本书不是一本帮助 Java 初学者入门的书籍,而是一本介绍如何编写高质量 Java 程序的书籍,主要适合以下读者阅读:
拥有一定开发经验的 Java 开发人员;
Java 软件设计师和架构师;
系统调优人员;
有一定 Java 语言基础而想进一步提高开发水平的程序员。