Java異步編程實戰

Java異步編程實戰 pdf epub mobi txt 电子书 下载 2025

翟陸續
圖書標籤:
想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
前言
第1章 认识异步编程1
1.1 异步编程概念与作用1
1.2 异步编程场景2
1.3 总结9
第2章 显式使用线程和线程池实现异步编程10
2.1 显式使用线程实现异步编程10
2.2 显式使用线程池实现异步编程14
2.2.1 如何显式使用线程池实现异步编程14
2.2.2 线程池ThreadPoolExecutor原理剖析17
2.3 总结34
第3章 基于JDK中的Future实现异步编程35
3.1 JDK 中的Future35
3.2 JDK中的FutureTask37
3.2.1 FutureTask 概述37
3.2.2 FutureTask的类图结构41
3.2.3 FutureTask的run() 方法45
3.2.4 FutureTask的get()方法48
3.2.5 FutureTask的cancel(boolean mayInterruptIfRunning)方法50
3.2.6 FutureTask的局限性52
3.3 JDK中的CompletableFuture52
3.3.1 CompletableFuture 概述52
3.3.2 显式设置CompletableFuture结果54
3.3.3 基于CompletableFuture实现异步计算与结果转换56
3.3.4 多个CompletableFuture进行组合运算65
3.3.5 异常处理68
3.3.6 CompletableFuture概要原理70
3.4 JDK8 Stream & CompletableFuture76
3.4.1 JDK8 Stream76
3.4.2 当Stream遇见CompletableFuture79
3.5 总结81
第4章 Spring框架中的异步执行82
4.1 Spring中对TaskExecutor的抽象82
4.2 如何在Spring中使用异步执行84
4.2.1 使用TaskExecutor实现异步执行84
4.2.2 使用注解@Async实现异步执行89
4.3 @Async注解异步执行原理96
4.4 总结109
第5章 基于反应式编程实现异步编程110
5.1 反应式编程概述110
5.2 Reactive Streams规范120
5.3 基于RxJava实现异步编程123
5.4 基于Reactor实现异步编程133
5.5 总结136
第6章 Web Servlet的异步非阻塞处理137
6.1 Servlet概述137
6.2 Servlet 3.0 提供的异步处理能力138
6.3 Servlet 3.1 提供的非阻塞IO能力145
6.4 Spring Web MVC 的异步处理能力153
6.4.1 基于DeferredResult的异步处理154
6.4.2 基于Callable实现异步处理155
6.5 总结157
第7章 Spring WebFlux的异步非阻塞处理158
7.1 Spring WebFlux概述158
7.2 Reactive编程 & Reactor库159
7.3 WebFlux服务器160
7.4 WebFlux的并发模型163
7.5 WebFlux对性能的影响164
7.6 WebFlux的编程模型164
7.6.1 WebFlux注解式编程模型165
7.6.2 WebFlux函数式编程模型168
7.7 WebFlux原理浅尝171
7.7.1 Reactor Netty概述171
7.7.2 WebFlux服务器启动流程173
7.7.3 WebFlux一次服务调用流程182
7.8 WebFlux的适用场景185
7.9 总结186
第8章 高性能异步编程框架和中间件187
8.1 异步、基于事件驱动的网络编程框架—Netty187
8.1.1 Netty概述187
8.1.2 Netty的线程模型190
8.1.3 TCP半包与粘包问题196
8.1.4 基于Netty与CompletableFuture实现RPC异步调用198
8.2 高性能RPC框架—Apache Dubbo209
8.2.1 Apache Dubbo概述209
8.2.2 Dubbo的异步调用210
8.2.3 Dubbo的异步执行214
8.3 高性能线程间消息传递库—Disruptor217
8.3.1 Disruptor概述217
8.3.2 Disruptor的特性详解220
8.3.3 基于Disruptor实现异步编程223
8.4 异步、分布式、基于消息驱动的框架—Akka227
8.4.1 Akka概述227
8.4.2 传统编程模型存在的问题228
8.4.3 Actor模型解决了传统编程模型的问题232
8.4.4 基于Akka实现异步编程237
8.5 高性能分布式消息框架—Apache RocketMQ244
8.5.1 Apache RocketMQ概述244
8.5.2 基于Apache RocketMQ实现系统间异步解耦246
8.6 总结254
第9章 Go语言的异步编程能力255
9.1 Go语言概述255
9.2 Go语言的线程模型256
9.2.1 一对一模型256
9.2.2 多对一模型257
9.2.3 多对多模型258
9.2.4 Go语言的线程模型259
9.3 goroutine与channel261
9.3.1 goroutine261
9.3.2 channel265
9.3.3 构建管道实现异步编程269
9.4 总结273
· · · · · · (收起)

具体描述

內容簡介

這是一部全麵解析Java異步編程的著作,針對各種常見異步編程場景,從編程語言、開發框架等角度深入講解瞭異步編程的原理和方法。作者是淘寶的資深Java技術工程師,在Java異步編程、並發編程領域有深厚的積纍。

全書共9章,每章內容概括如下:

第1-2章主要介紹瞭異步編程的概念、適用場景,以及如何使用綫程和綫程池來實現異步編程;

第3章首先講解JDK中的各種Future及其內部實現原理,然後講解如何使用Future實現異步編程,以及如何結閤JDK8 Stream 和Future實現異步編程;

第4章講解瞭Spring框架中提供的異步執行能力,包含Spring中如何對TaskExecutor進行抽象,如何使用注解@Async實現異步編程,以及其內部實現原理;

第5章講解瞭比較熱門的反應式編程相關的內容,包含什麼是反應式編程,如何使用反應式編程規範的庫RxJava和Reactor庫實現異步編程;

第6章講解瞭Web Servlet的異步非阻塞處理,包含Servlet 3.0規範是如何提供異步處理能力的,Servlet 3.1規範是如何解決IO阻塞問題的,以及在Spring MVC中如何進行異步處理。

第7章講解與Servlet技術棧並行存在的、由Spring5.0提齣來的Spring WebFlux的異步非阻塞處理,包含Spring WebFlux的由來、Spring WebFlux的並發模型、兩種編程模型,以及如何使用Spring WebFlux來進行服務開發、Spring WebFlux內部的實現原理。

第8章簡要介紹瞭業界為方便實現異步編程而設計的一些框架和中間件,比如異步基於事件驅動的網絡編程框架Netty,高性能RPC框架Apache Dubbo,高性能綫程間消息傳遞庫Disruptor,異步基、分布式、基於事件驅動的編程框架Akka,高性能分布式消息平颱Apache RocketMQ 。

第9章介紹新興的Go語言是如何從語言層麵提供瞭強大的異步編程能力的。

本書注重理論與實踐相結閤,且每個異步技術點都附有代碼實例,幫助讀者加深理解。

用户评价

评分

##算是一本总结书,讲了一些原理,还是听推荐的

评分

前面说线程的一章还不错,后面就比较普通了,因为这么薄也不可能把异步编程讲的太细致,reactor,webflux也只是匆匆带过。

评分

##还行吧,前面讲的还行,越到后面越简略。下来好好学习RxJava

评分

前面说线程的一章还不错,后面就比较普通了,因为这么薄也不可能把异步编程讲的太细致,reactor,webflux也只是匆匆带过。

评分

##从feature到反应式到spring到netty; 外加其他语言的异步实现,go的协程

评分

##代码排版太乱,到最后还讲到Goroutine去了,对于这书名讲go语言协程,这跑题跑的真够远的。估计这是因为作者的意愿,更愿意换go语言写高并发程序,但是完全忽视了客观性——go和java在实际应用中性能根本相差不了多少(各种测试都表明各有千秋)。而这本书的主题应该是JVM的并发环境,讲kotlin也比讲go合适吧?

评分

##泛泛而谈,开卷有益

评分

##不错的一本书,讲的很细很全,但是感觉有点乱

评分

##怎么说呢,这本书内容很浅。读的过程中就发现了很多排版、文字错误。很多地方都写着(可以参考《Java并发编程之美》),稍微深入一点的都是说可以参考***,没有进一步的叙述。

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有