实战Java高并发程序设计
  • 推荐0
  • 收藏4
  • 浏览1.3K

实战Java高并发程序设计

薛淑英 (作者) 

  • 丛  书:大数据工程师
  • 书  号:978-7-121-27304-9
  • 出版日期:2015-11-09
  • 页  数:352
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:董英
本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。第一,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK中对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。第三,详细讨论有关“锁”的优化和提高并行程序性能级别的方法和思路。第四,介绍并行的基本设计模式及Java 8对并行程序的支持和改进。第五,介绍高并发框架Akka的使用方法。最后,详细介绍并行程序的调试方法。
本书内容丰富,实例典型,实用性强,适合有一定Java基础的技术开发人员阅读。
涵盖基于Java 的并行程序设计基础、思路、方法和实战,内容丰富,实例典型,实用性强
关于Java与并行
由于单核CPU的主频逐步逼近极限,多核CPU架构成为了一种必然的技术趋势。所以,多线程并行程序便显得越来越重要。并行计算的一个重要应用场景就是服务端编程。可以看到,目前服务端CPU的核心数已经轻松超越10核心,而Java显然已经成为当下最流行的服务端编程语言,因此熟悉和了解基于Java的并行程序开发有着重要的实用价值。
本书的体系结构
本书立足于实际开发,又不缺乏理论介绍,力求通俗易懂、循序渐进。本书共分为8章。
第1章主要介绍了并行计算中相关的一些基本概念,树立读者对并行计算的基本认识;介绍了两个重要的并行性能评估定律,以及Java内存模型JMM。
第2章介绍了Java并行程序开发的基础,包括Java中Thread的基本使用方法等,也详细介绍了并行程序容易引发的一些错误和误用。
第3章介绍了JDK内部对并行程序开发的支持,主要介绍JUC(Java.util.concurrent)中一些工具的使用方法、各自特点及它们的内部实现原理。
第4章介绍了在开发过程中可以进行的对锁的优化,也进一步简要描述了Java虚拟机层面对并行程序的优化支持。此外,还花费一定篇幅介绍了有关无锁的计算。
第5章介绍了并行程序设计中常见的一些设计模式以及一些典型的并行算法和使用方法,其中包括重要的Java NIO和AIO的介绍。
第6章介绍了Java 8中为并行计算做的新的改进,包括并行流、CompletableFuture、StampedLock和LongAdder。
第7章主要介绍了高并发框架Akka的基本使用方法,并使用Akka框架实现了一个简单的粒子群算法,模拟超高并发的场景。
第8章介绍了使用Eclipse进行多线程调试的方法,并演示了通过Eclipse进行多线程调试重现ArrayList的线程不安全问题。
本书特色
本书的主要特点如下。
1.结构清晰。本书一共8章,总体上循序渐进,逐步提升。每一章都各自有鲜明的侧重点,有利于读者快速抓住重点。
2.理论结合实战。本书注重实战,书中重要的知识点都安排了代码实例,帮助读者理解。同时也不忘记对系统的内部实现原理进行深度剖析。
3.通俗易懂。本书尽量避免采用过于理论的描述方式,简单的白话文风格贯穿全书,配图基本上为手工绘制,降低了理解难度,并尽量做到读者在阅读过程中少盲点、无盲点。
适合阅读人群
虽然本书力求通俗,但要通读本书并取得良好的学习效果,要求读者需要具备基本的Java知识或者一定的编程经验。因此,本书适合以下读者:
? 拥有一定开发经验的Java平台开发人员(Java、Scala、JRuby等)
? 软件设计师、架构师
? 系统调优人员
? 有一定的Java编程基础并希望进一步加深对并行的理解的研发人员
本书的约定
本书在叙述过程中,有如下约定:
? 本书中所述的JDK 1.5、JDK 1.6、JDK 1.7、JDK 1.8分别等同于JDK 5、JDK 6、JDK 7、JDK 8。
? 如无特殊说明,本书的程序、示例均在JDK 1.7环境中运行。
联系作者
本书的写作过程远比我想象得更艰辛,为了让全书能够更清楚、更正确地表达和论述,我经历了很多个不眠之夜,即使现在回想起来,我也忍不住会打个寒战。由于写作水平的限制,书中难免会有不妥之处,望读者谅解。
为此,如果读者有任何疑问或者建议,非常欢迎大家加入QQ群397196583 ,一起探讨学习中的困难、分享学习的经验,我期待与大家一起交流、共同进步。同时,也希望大家可以关注我的博客http://www.uucode.net/。
感谢
这本书能够面世,是因为得到了众人的支持。首先,要感谢我的妻子,她始终不辞辛劳、毫无怨言地对我照顾有加,才让我得以腾出大量时间,并可以安心工作。其次,要感谢所有编辑为我一次又一次地审稿改错,批评指正,才能让本书逐步完善。最后,感谢我的母亲30年如一日对我的体贴和关心。

葛一鸣

目录

目录 阅读
第1章 走入并行世界
第2章 Java并行程序基础
第3章 JDK并发包
第4章 锁的优化及注意事项
第5章 并行模式与算法
第6章 Java 8与并发
第7章 使用Akka构建高并发程序
第8章 并行程序调试

读者评论

  • 第12页1.3.3介绍无障碍(Obstruction-Free),最后一段:
    一种可行的无障碍实现可以依赖一个“一致性标记”来实现。线程在操作之前,先读取并保存这个标记,在操作完成后再次读取,检查这个标记是否被更改过。

    这个讲的其实就是CAS算法吧,可是应该是在操作之前检查啊?
    应该是这样吧:线程一开始就读取并保存这个标记,在操作开始前再次读取,检查它是否被更改过,如果被更改了那就结束线程或者进入下一循环重新访问。

    佳翌发表于 2017/8/20 22:54:55

同系列书

  • 实战Java高并发程序设计

    薛淑英 (作者)

    本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。第一,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK...

    ¥69.00

相关图书

Python一行流:像专家一样写代码

Christian Mayer (作者) 苏丹 (译者)

本书专注于从初学迈向进阶的Python编码技术:如何像专家一样写出优雅、准确、简洁高效的Python 单行代码;阅读任意一行Python 代码时,如何系统性地对...

¥89.00

剑指Offer(专项强化版):数据结构与算法名企面试题精讲

何海涛 (作者)

本书全面、系统地总结了在准备程序员面试过程中必备的数据结构与算法。本书首先详细讨论整数、数组、链表、字符串、哈希表、栈、队列、二叉树、堆和前缀树等常用的数据结构...

¥89.00

C++服务器开发精髓

张远龙 (作者)

本书从操作系统原理角度讲解进行C++服务器开发所需掌握的技术栈。全书总计9章,第1~2章讲解C++ 11/14/17新标准中的常用特性、新增类库,以及C++开发...

 

PHP编程(第4版)

Rasmus Lerdorf(拉斯马斯·勒多夫), Kevin Tatroe(凯文·塔特罗), Peter MacIntyre(彼得·麦金太尔) (作者) 卢涛 (译者)

PHP是一种被广泛使用的Web编程语言,它简单易用,而且与时俱进,不断进化,提升性能。本书基于PHP 7.4,深入介绍 PHP编程技术,涵盖了 PHP 所有基本...

¥109.00

深入理解Spring Cloud与实战

方剑 (作者)

本书共分10章,主要介绍Spring Cloud各个核心组件的设计原理,以及目前流行的Spring Cloud Alibaba和 Netflix组件,并且剖析S...

¥106.00

基于Kotlin的Spring Boot微服务实战

袁康 (作者)

本书介绍了Kotlin在Spring Boot微服务开发中的实践,并使用Kotlin作为开发语言,介绍了函数式编程思想、Kotlin的语法、Kotlin在常用中...

¥69.30