【推荐序一】
恭喜汪文君老师又写新书了。
强烈推荐所有以成为Java高手、架构师为目标的读者阅读本书。本书深入讲述了Java高并发编程的相关内容,覆盖面广而全,可以将其看作Java高并发编程的一本百科全书。Java高并发编程是Java编程比较高阶的部分,讲述这部分内容的书不多,这本书的出版可以看作一个里程碑。
在知识体系方面,本书既有广度又有深度。在广度方面,本书覆盖了Java高并发编程的语法、高级用法与Profiler、类型详解、开发工具、高并发的数据机构及原理、实践编程的详细用法、框架的用法,以及典型场景下的应用案例。在深度方面,本书不仅对基于Java高并发编程的所有类的说明、用法与经典案例都进行了详尽的论述,而且对Java在这方面的发展与应用给出了深入浅出的解释。
随着近几年云原生、容器化、分布式计算的逐渐发展和普及,以及微服务架构的演进与兴起,Java高并发编程在设计与编程中的地位越来越重要。Java高并发编程已经成为架构师、资深编程人员进行分布式协作设计、服务设计、模块开发所必需的基本功,也是理解、使用、优化Web容器、JEE容器、云原生基础设施组件所不可或缺的基本技能。
在本书中,大家不仅能够学到深度、专业的编程知识,还能感受到汪文君老师专注地提高编程技能的态度,始终如一地贡献、分享Java专业知识与经验的精神,以及持续学习、持续成长的进取精神。在这些方面,他同样是我学习的楷模。
我们在学习书中的内容时,一定要动手编码,实践书中的知识。理论上,成为专业人员要经历四个阶段:无意识无能、有意识无能、有意识能力、无意识能力。通过不断学习、持续地实践和编程,□终将编程能力内化为个人的无意识能力。让我们的专业之路从这本书开始吧!
东软集团移动互联网事业部首席技术官 徐景辉
【推荐序二】
首先,我很荣幸可以再次受到邀请为Alex的新作写推荐序,Alex的第二本书《Java高并发编程详解:深入理解并发核心库》是一本内容非常全面的参考图书,该书可以帮助你充分了解和使用JVM生态圈中□重要的技术内容之一——Java并发核心库。
本书比较全面地探讨了并发核心库的各个方面,从基准测试JMH开始,到原子类型、并发工具、并发容器、ExecutorService、Java 8 Stream知识,以及□后的性能度量工具库Metrics,每一个细节的概念、使用方法、适合的应用场合、应避免使用的场合书中都进行了详细解释,并且都配备了非常详细的实例,可以帮助读者快速建立对其的理解和认识。
对于想学习Java并发编程的人或有一定经验的开发人员来说,如果他们希望有什么资料能在以后的工作中为自己提供专业的参考,那么我强烈推荐这本书。
OSL公司首席技术官 Andrew Davidson
【推荐序三】
以我从事云计算平台研发架构及咨询近10年的经验来看,弹性云,以及服务组件免费、资源付费的模式将是一个成熟的模式,而这就要求开发人员在节省资源的前提下能够开发出高性能的应用程序,合理充分地利用软硬件的资源,并且以廉价的成本为企业创造高性能的服务产品。这看起来似乎很难,没错!这确实不太容易。想象一下,我们基于AWS lambda架构设计开发的Serverless程序,在同等CPU、内存等其他服务调用的情况下,如果程序员能够开发并受理更多的业务量、提供更多的并发量,势必会更多地受到老板的喜爱和公司的重视。
这一观点同样也适用于现在越来越多的基于物联网的硬件设备。一般情况下,基于物联网的硬件终端,其软硬件配置短时间内很难达到普通PC甚至用于生产环境的服务器的水平,那么在有限的资源上开发出响应速度快、运算能力强的计算程序就显得尤为重要了。
本书中所讲述的内容给出了部分解决之道,Alex非常详细地介绍了Java并发包中的并发知识及技术细节,通过对它们的学习与应用,相信普通的开发者也可以开发出高性能、高吞吐量的应用程序。
Alex是一个非常有耐心的人,本书内容的系统化组织、知识点的细致讲述深深地吸引了我,本书的完成将是非常耗费时间的一次写作之旅,我很佩服他对基准测试的深刻认识以及对原子类型的完美解读。
作为一个Java程序员,哦不,作为一个基于JVM语言开发程序的工程师,我强烈推荐此书作为你的参考书籍。
EY安永金融服务咨询部云总监 Srimanth Rudraraju
【推荐序四】
“开发正确的程序是比较难的,开发正确的高并发多线程应用则更是难上加难。”我已经记不清这句话出自何处,但是我完全认同这句话所表达的观点。
我已经有20多年的软件开发经验,并且现在仍然乐于此道。正如Alex一样,我也喜欢琢磨和分析每一次软件开发过程中遇到的细节,这也是为什么我们彼此在仅有的几次社区探讨之后,就经常保持沟通与联络,我欣赏他愿意为了所从事的事业投入大量的热情和时间的精神。
让我们重新回到关于本书的话题中来。本书内容涵盖非常广泛,系统性地且有条理地讲述了Java并发包中的每一个常用工具及类。这些类与工具是全体Java从业人员多年的宝贵积累和产物,是通过无数次的探讨和实践总结归纳出的□佳实践。Alex将它们悉数详细解释给读者,这是一件非常了不起的事情,他一定也为此牺牲了很多陪伴家人的时间。
开发正确的高并发多线程程序是极为困难的,不过不用担心,学习并且使用优秀的并发库就可以帮我们屏蔽这些令人担忧的问题,这也是本书的价值所在。
希望该书的读者在阅读和学习之后能有一定的收获。
软件架构师、Apache软件基金会成员、开源软件Tomcat PMC成员 Igal