本书内容丰富,实例典型,实用性强,适合有一定Java基础的技术开发人员阅读。
前言
在过去单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发就显得尤为重要。
由于单核CPU的主频逐步逼近极限,多核CPU架构成为了一种必然的技术趋势。所以, 多线程并行程序便显得越来越重要。并行计算的一个重要应用场景就是服务端编程。可以看到,目前服务端CPU的核心数已经轻松超越10核心,而Java显然已经成为当下最流行的服务端编程语言,因此熟悉和了解基于Java的并行程序开发有着重要的实用价值。
目录
涵盖并行程序设计基础、思路、方法和实战
内容丰富,实例典型,实用性强
内容
- 结构清晰:本书一共8章。总体上循序渐进,逐步提升。每一章都各自有鲜明的侧重点。有利于读者快速抓住重点。
- 理论结合实战:本书注重实战,书中重要的知识点都安排了代码实例。帮助读者理解。同时也不忘记对系统的内部实现原理进行深度剖析。
- 通俗易懂:本书尽量避免采用过于理论的描述方式,简单的白话文风格贯穿全书,配图基本上为手工绘制,降低了理解难度。并尽量做到读者在阅读过程中少盲点、无盲点。
第1章 主要介绍了并行计算中相关的一些基本概念,树立读者对并行计算的基本认识:介绍了两个重要的并行性能评估定律,以及Java内存模型JMM。
第2章 介绍了Java并行程序开发的基础,包括Java中Thread的基本使用方法等,也详细介绍了并行程序容易引发的一些错误和误用。
第3章 介绍了JDK内部对并行程序开发的支持,主要介绍JUC (Java.util.concurrent) 中- -些工具的使用方法、各自特点及它们的内部实现原理。
第4章 介绍了在开发过程中可以进行的对锁的优化,也进一步 简要描述了Java虚拟机层面对并行程序的优化支持。此外,还花费一定篇幅介绍了有关无锁的计算。
第5章 介绍了并行程序设计中常见的一些设计模式以及一些典型的并行算法和使用方法,其中包括重要的JavaNIO和AIO的介绍。
第6章 介绍了Java 8中为并行计算做的新的改进,包括并行流、CompletableFuture、StampedLock和LongAdder。
第7章 主要介绍了高并发框架Akka的基本使用方法,并使用Akka框架实现了一个简单的粒子群算法,模拟超高并发的场景。
第8章 介绍了使用Eclipse进行多线程调试的方法,并演示了通过Eelipse 进行多线程调试重现ArrayList的线程不安全问题。
这份【高并发设计】文档共有355页,需要完整版的朋友,可以转发此文关注小编,文末添加小助理来获取!!
虽然本书力求通俗,但要通读本书并取得良好的学习效果,要求读者需要具备基本的Java知识或者一定的编程经验。因此,本书适合以下读者:
- 拥有一定开发经验的Java平台开发人员(Java,Scala,JRuby等)
- 软件设计师,架构师
- 系统调优人员
- 有一定的Java编程基础井希望进-一步加深对并行的理解的研发人员
好了,今天就分享到这里了。如果这篇文章你觉得还不错的话,欢迎继续关注。