阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)

前言

由于单核CPU的主频逐步逼近极限,多核CPU架构成了一种必然的技术趋势,因此多线程并行程序便显得越来越重要。并行计算的一个重要应用场景就是服务端编程。目前服务端CPU的核心数已经轻松超越10个,而Java显然已经成为当下最流行的服务端编程语言,且已经更新到JDK10,因此熟悉和了解基于Java的并行程序开发有着重要的实用价值。

在单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发变得尤为重要。

本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第1张图片

 

  • 第一,立足于并发程序基础,详细介绍Java进行并行程序设计的基本方法。
  • 第二,进一步详细介绍了JDK对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。
  • 第三,详细讨论了“锁”的优化和提高并行程序性能级别的方法和思路。
  • 第四,介绍了并行的基本设计模式,以及Java 8/9/10对并行程序的支持和改进。
  • 第五,介绍了高并发框架Akka的使用方法。
  • 第六,详细介绍了并行程序的调试方法。
  • 第七,分析Jetty代码并给出一些其在高并发优化方面的例子。

本书的主要特色如下

  1. 结构清晰。本书一共9章,总体上循序渐进,逐步提升。每一章都有鲜明的侧重点,有利于读者快速抓住重点。
  2. 理论结合实战。本书注重实战,书中重要的知识点都安排了代码实例,帮助读者理解。同时也不忘对系统的内部实现原理进行深度剖析。
  3. 通俗易懂。本书尽量避免采用过于理论化的描述方式,简单的白话文风格贯穿全书,配图基本上为手工绘制,降低了理解难度,并尽量做到读者在阅读过程中少盲点、无盲点。

本文将从目录、主要内容和总结这三部分的结构给大家介绍,希望大家能够喜欢!!

  • 第1章主要介绍了并行计算中相关的一些基本概念,树立读者对并行计算的基本认识,介绍了两个重要的并行性能评估定律,以及Java内存模型JMM.

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第2张图片

 

走入并行世界

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第3张图片

 

初始线程:线程的基本操作

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第4张图片

 

  • 第2章介绍了Java并行程序开发的基础,包括Java中Thread的基本使用方法等,也详细介绍了并行程序容易引发的一些错误,以及容易出现的误用。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第5张图片

 

Java并行程序基础

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第6张图片

 

线程中断

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第7张图片

 

  • 第3章介绍了JDK内部对并行程序开发的支持,主要介绍juc (java.util.concurrent) 中一些工具的使用方法、各自的特点及它们的内部实现原理。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第8张图片

 

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第9张图片

 

JDK并发包

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第10张图片

 

线程复用:线程池

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第11张图片

 

  • 第4章介绍了在开发过程中可以进行的对锁的优化,也进一步简要描述了Java虚拟机层面对并行程序的优化支持。此外,还花费定的篇幅介绍 了无锁的计算。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第12张图片

 

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)

 

锁的优化及注意事项

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第13张图片

 

有关死锁的问题

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第14张图片

 

  • 第5章介绍了并行程序设计中常见的一些设计模式,以及一-些典型的并行算法和使用方法,其中包括重要的Java NIO和AIO的介绍。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第15张图片

 

并行模式与算法

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第16张图片

 

并发排序

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第17张图片

 

  • 第6章介绍了Java 8/9/10 为并行计算做的改进,包括并行流、CompletableFuture、StampedLock、LongAdder, 以及发布和订阅模式等。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第18张图片

 

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第19张图片

 

Java 8/9/10与并发

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第20张图片

 

原子类的增强

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第21张图片

 

  • 第7章主要介绍了高并发框架Akka的基本使用方法,并使用Akka框架实现了一一个简单的粒子群算法,模拟超高并发的场景。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第22张图片

 

使用Akka构建高并发程序

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第23张图片

 

粒子群算法能做什么

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第24张图片

 

  • 第8章介绍了使用Eclipse 进行多线程调试的方法,并演示了通过Eclipse 进行多线程调试重现ArrayList的线程不安全问题。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第25张图片

 

并行程序调试

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第26张图片

 

挂起整个虚拟机

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第27张图片

 

  • 第9章介绍了Jetty, 并分析了Jetty 的一些关键代码, 主要展示它在高并发优化中所做的一些努力,也为读者学会并深入理解高并发带来一些提示和思考。

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第28张图片

 

多线程优化示例一Jetty核心代码分析

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第29张图片

 

计算系统的线程数量

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第30张图片

 

这份【实战Java高并发程序设计(第2版)】共有420页,分享给热爱学习的朋友,需要完整版的小伙伴,可以关注小编【见下图】来获取!!

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第31张图片

知识或者一定的编程经验。因此,本书适合以下读者。

  • 拥有一定开发经验的Java平台开发人员(Java、 Scala、 JRuby等)
  • 软件设计师、架构师。
  • 系统调优人员。
  • 有一定的Java编程基础并希望进一步加深对并行程序的理解的研发人员。

虽然本书力求通俗,但是要通读本书并取得良好的学习效果,要求读者具备基本的Java

当然,单单有文档看是远远不够的,还有视频和相匹配的课件进行学习提升,努力把高并发程序这一块儿给搞明白,相信一定会有不凡的人生!!

高并发编程

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第32张图片

 

课件整理

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第33张图片

 

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第34张图片

 

高并发笔记

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第35张图片

 

视频和课件和笔记获取,关注小编,【见下图】获取!

阿里资深架构师8年心血凝聚:Java高并发程序设计(第2版)_第36张图片

希望大家能把本文的内容认真学习到手,并且能够灵活运用到工作当中,增加自己的技术深度和广度,让自己变得更有价值!

也希望本文能够得到大家的喜欢!

你可能感兴趣的:(编程语言,java,大数据,人工智能,架构)