您当前的位置:首页 > Java异步编程实战 翟陆续 2020年版 > 下载地址1
Java异步编程实战 翟陆续 2020年版
- 名 称:Java异步编程实战 翟陆续 2020年版 - 下载地址1
- 类 别:计算机与网络
- 下载地址:[下载地址1]
- 提 取 码:
- 浏览次数:3
新闻评论(共有 0 条评论) |
资料介绍
Java异步编程实战
作者:翟陆续
出版时间:2020年版
内容简介
内容简介 /n这是一部全面解析Java异步编程的著作,针对各种常见异步编程场景,从编程语言、开发框架等角度深入讲解了异步编程的原理和方法。作者是淘宝的资深Java技术工程师,在Java异步编程、并发编程领域有深厚的积累。 /n全书共9章,每章内容概括如下: /n第1-2章主要介绍了异步编程的概念、适用场景,以及如何使用线程和线程池来实现异步编程; /n第3章首先讲解JDK中的各种Future及其内部实现原理,然后讲解如何使用Future实现异步编程,以及如何结合JDK8 Stream 和Future实现异步编程; /n第4章讲解了Spring框架中提供的异步执行能力,包含Spring中如何对TaskExecutor进行抽象,[email protected],以及其内部实现原理; /n第5章讲解了比较热门的反应式编程相关的内容,包含什么是反应式编程,如何使用反应式编程规范的库RxJava和Reactor库实现异步编程; /n第6章讲解了Web Servlet的异步非阻塞处理,包含Servlet 3.0规范是如何提供异步处理能力的,Servlet 3.1规范是如何解决IO阻塞问题的,以及在Spring MVC中如何进行异步处理。 /n第7章讲解与Servlet技术栈并行存在的、由Spring5.0提出来的Spring WebFlux的异步非阻塞处理,包含Spring WebFlux的由来、Spring WebFlux的并发模型、两种编程模型,以及如何使用Spring WebFlux来进行服务开发、Spring WebFlux内部的实现原理。 /n第8章简要介绍了业界为方便实现异步编程而设计的一些框架和中间件,比如异步基于事件驱动的网络编程框架Netty,高性能RPC框架Apache Dubbo,高性能线程间消息传递库Disruptor,异步基、分布式、基于事件驱动的编程框架Akka,高性能分布式消息平台Apache RocketMQ 。 /n第9章介绍新兴的Go语言是如何从语言层面提供了强大的异步编程能力的。 /n本书注重理论与实践相结合,且每个异步技术点都附有代码实例,帮助读者加深理解。
目录
前言 /n
第1章 认识异步编程1 /n
1.1 异步编程概念与作用1 /n
1.2 异步编程场景2 /n
1.3 总结9 /n
第2章 显式使用线程和线程池实现异步编程10 /n
2.1 显式使用线程实现异步编程10 /n
2.2 显式使用线程池实现异步编程14 /n
2.2.1 如何显式使用线程池实现异步编程14 /n
2.2.2 线程池ThreadPoolExecutor原理剖析17 /n
2.3 总结34 /n
第3章 基于JDK中的Future实现异步编程35 /n
3.1 JDK 中的Future35 /n
3.2 JDK中的FutureTask37 /n
3.2.1 FutureTask 概述37 /n
3.2.2 FutureTask的类图结构41 /n
3.2.3 FutureTask的run() 方法45 /n
3.2.4 FutureTask的get()方法48 /n
3.2.5 FutureTask的cancel(boolean mayInterruptIfRunning)方法50 /n
3.2.6 FutureTask的局限性52 /n
3.3 JDK中的CompletableFuture52 /n
3.3.1 CompletableFuture 概述52 /n
3.3.2 显式设置CompletableFuture结果54 /n
3.3.3 基于CompletableFuture实现异步计算与结果转换56 /n
3.3.4 多个CompletableFuture进行组合运算65 /n
3.3.5 异常处理68 /n
3.3.6 CompletableFuture概要原理70 /n
3.4 JDK8 Stream & CompletableFuture76 /n
3.4.1 JDK8 Stream76 /n
3.4.2 当Stream遇见CompletableFuture79 /n
3.5 总结81 /n
第4章 Spring框架中的异步执行82 /n
4.1 Spring中对TaskExecutor的抽象82 /n
4.2 如何在Spring中使用异步执行84 /n
4.2.1 使用TaskExecutor实现异步执行84 /n
[email protected] /n
[email protected] /n
4.4 总结109 /n
第5章 基于反应式编程实现异步编程110 /n
5.1 反应式编程概述110 /n
5.2 Reactive Streams规范120 /n
5.3 基于RxJava实现异步编程123 /n
5.4 基于Reactor实现异步编程133 /n
5.5 总结136 /n
第6章 Web Servlet的异步非阻塞处理137 /n
6.1 Servlet概述137 /n
6.2 Servlet 3.0 提供的异步处理能力138 /n
6.3 Servlet 3.1 提供的非阻塞IO能力145 /n
6.4 Spring Web MVC 的异步处理能力153 /n
6.4.1 基于DeferredResult的异步处理154 /n
6.4.2 基于Callable实现异步处理155 /n
6.5 总结157 /n
第7章 Spring WebFlux的异步非阻塞处理158 /n
7.1 Spring WebFlux概述158 /n
7.2 Reactive编程 & Reactor库159 /n
7.3 WebFlux服务器160 /n
7.4 WebFlux的并发模型163 /n
7.5 WebFlux对性能的影响164 /n
7.6 WebFlux的编程模型164 /n
7.6.1 WebFlux注解式编程模型165 /n
7.6.2 WebFlux函数式编程模型168 /n
7.7 WebFlux原理浅尝171 /n
7.7.1 Reactor Netty概述171 /n
7.7.2 WebFlux服务器启动流程173 /n
7.7.3 WebFlux一次服务调用流程182 /n
7.8 WebFlux的适用场景185 /n
7.9 总结186 /n
第8章 高性能异步编程框架和中间件187 /n
8.1 异步、基于事件驱动的网络编程框架—Netty187 /n
8.1.1 Netty概述187 /n
8.1.2 Netty的线程模型190 /n
8.1.3 TCP半包与粘包问题196 /n
8.1.4 基于Netty与CompletableFuture实现RPC异步调用198 /n
8.2 高性能RPC框架—Apache Dubbo209 /n
8.2.1 Apache Dubbo概述209 /n
8.2.2 Dubbo的异步调用210 /n
8.2.3 Dubbo的异步执行214 /n
8.3 高性能线程间消息传递库—Disruptor217 /n
8.3.1 Disruptor概述217 /n
8.3.2 Disruptor的特性详解220 /n
8.3.3 基于Disruptor实现异步编程223 /n
8.4 异步、分布式、基于消息驱动的框架—Akka227 /n
8.4.1 Akka概述227 /n
8.4.2 传统编程模型存在的问题228 /n
8.4.3 Actor模型解决了传统编程模型的问题232 /n
8.4.4 基于Akka实现异步编程237 /n
8.5 高性能分布式消息框架—Apache RocketMQ244 /n
8.5.1 Apache RocketMQ概述244 /n
8.5.2 基于Apache RocketMQ实现系统间异步解耦246 /n
8.6 总结254 /n
第9章 Go语言的异步编程能力255 /n
9.1 Go语言概述255 /n
9.2 Go语言的线程模型256 /n
9.2.1 一对一模型256 /n
9.2.2 多对一模型257 /n
9.2.3 多对多模型258 /n
9.2.4 Go语言的线程模型259 /n
9.3 goroutine与channel261 /n
9.3.1 goroutine261 /n
9.3.2 channel265 /n
9.3.3 构建管道实现异步编程269 /n
9.4 总结273
作者:翟陆续
出版时间:2020年版
内容简介
内容简介 /n这是一部全面解析Java异步编程的著作,针对各种常见异步编程场景,从编程语言、开发框架等角度深入讲解了异步编程的原理和方法。作者是淘宝的资深Java技术工程师,在Java异步编程、并发编程领域有深厚的积累。 /n全书共9章,每章内容概括如下: /n第1-2章主要介绍了异步编程的概念、适用场景,以及如何使用线程和线程池来实现异步编程; /n第3章首先讲解JDK中的各种Future及其内部实现原理,然后讲解如何使用Future实现异步编程,以及如何结合JDK8 Stream 和Future实现异步编程; /n第4章讲解了Spring框架中提供的异步执行能力,包含Spring中如何对TaskExecutor进行抽象,[email protected],以及其内部实现原理; /n第5章讲解了比较热门的反应式编程相关的内容,包含什么是反应式编程,如何使用反应式编程规范的库RxJava和Reactor库实现异步编程; /n第6章讲解了Web Servlet的异步非阻塞处理,包含Servlet 3.0规范是如何提供异步处理能力的,Servlet 3.1规范是如何解决IO阻塞问题的,以及在Spring MVC中如何进行异步处理。 /n第7章讲解与Servlet技术栈并行存在的、由Spring5.0提出来的Spring WebFlux的异步非阻塞处理,包含Spring WebFlux的由来、Spring WebFlux的并发模型、两种编程模型,以及如何使用Spring WebFlux来进行服务开发、Spring WebFlux内部的实现原理。 /n第8章简要介绍了业界为方便实现异步编程而设计的一些框架和中间件,比如异步基于事件驱动的网络编程框架Netty,高性能RPC框架Apache Dubbo,高性能线程间消息传递库Disruptor,异步基、分布式、基于事件驱动的编程框架Akka,高性能分布式消息平台Apache RocketMQ 。 /n第9章介绍新兴的Go语言是如何从语言层面提供了强大的异步编程能力的。 /n本书注重理论与实践相结合,且每个异步技术点都附有代码实例,帮助读者加深理解。
目录
前言 /n
第1章 认识异步编程1 /n
1.1 异步编程概念与作用1 /n
1.2 异步编程场景2 /n
1.3 总结9 /n
第2章 显式使用线程和线程池实现异步编程10 /n
2.1 显式使用线程实现异步编程10 /n
2.2 显式使用线程池实现异步编程14 /n
2.2.1 如何显式使用线程池实现异步编程14 /n
2.2.2 线程池ThreadPoolExecutor原理剖析17 /n
2.3 总结34 /n
第3章 基于JDK中的Future实现异步编程35 /n
3.1 JDK 中的Future35 /n
3.2 JDK中的FutureTask37 /n
3.2.1 FutureTask 概述37 /n
3.2.2 FutureTask的类图结构41 /n
3.2.3 FutureTask的run() 方法45 /n
3.2.4 FutureTask的get()方法48 /n
3.2.5 FutureTask的cancel(boolean mayInterruptIfRunning)方法50 /n
3.2.6 FutureTask的局限性52 /n
3.3 JDK中的CompletableFuture52 /n
3.3.1 CompletableFuture 概述52 /n
3.3.2 显式设置CompletableFuture结果54 /n
3.3.3 基于CompletableFuture实现异步计算与结果转换56 /n
3.3.4 多个CompletableFuture进行组合运算65 /n
3.3.5 异常处理68 /n
3.3.6 CompletableFuture概要原理70 /n
3.4 JDK8 Stream & CompletableFuture76 /n
3.4.1 JDK8 Stream76 /n
3.4.2 当Stream遇见CompletableFuture79 /n
3.5 总结81 /n
第4章 Spring框架中的异步执行82 /n
4.1 Spring中对TaskExecutor的抽象82 /n
4.2 如何在Spring中使用异步执行84 /n
4.2.1 使用TaskExecutor实现异步执行84 /n
[email protected] /n
[email protected] /n
4.4 总结109 /n
第5章 基于反应式编程实现异步编程110 /n
5.1 反应式编程概述110 /n
5.2 Reactive Streams规范120 /n
5.3 基于RxJava实现异步编程123 /n
5.4 基于Reactor实现异步编程133 /n
5.5 总结136 /n
第6章 Web Servlet的异步非阻塞处理137 /n
6.1 Servlet概述137 /n
6.2 Servlet 3.0 提供的异步处理能力138 /n
6.3 Servlet 3.1 提供的非阻塞IO能力145 /n
6.4 Spring Web MVC 的异步处理能力153 /n
6.4.1 基于DeferredResult的异步处理154 /n
6.4.2 基于Callable实现异步处理155 /n
6.5 总结157 /n
第7章 Spring WebFlux的异步非阻塞处理158 /n
7.1 Spring WebFlux概述158 /n
7.2 Reactive编程 & Reactor库159 /n
7.3 WebFlux服务器160 /n
7.4 WebFlux的并发模型163 /n
7.5 WebFlux对性能的影响164 /n
7.6 WebFlux的编程模型164 /n
7.6.1 WebFlux注解式编程模型165 /n
7.6.2 WebFlux函数式编程模型168 /n
7.7 WebFlux原理浅尝171 /n
7.7.1 Reactor Netty概述171 /n
7.7.2 WebFlux服务器启动流程173 /n
7.7.3 WebFlux一次服务调用流程182 /n
7.8 WebFlux的适用场景185 /n
7.9 总结186 /n
第8章 高性能异步编程框架和中间件187 /n
8.1 异步、基于事件驱动的网络编程框架—Netty187 /n
8.1.1 Netty概述187 /n
8.1.2 Netty的线程模型190 /n
8.1.3 TCP半包与粘包问题196 /n
8.1.4 基于Netty与CompletableFuture实现RPC异步调用198 /n
8.2 高性能RPC框架—Apache Dubbo209 /n
8.2.1 Apache Dubbo概述209 /n
8.2.2 Dubbo的异步调用210 /n
8.2.3 Dubbo的异步执行214 /n
8.3 高性能线程间消息传递库—Disruptor217 /n
8.3.1 Disruptor概述217 /n
8.3.2 Disruptor的特性详解220 /n
8.3.3 基于Disruptor实现异步编程223 /n
8.4 异步、分布式、基于消息驱动的框架—Akka227 /n
8.4.1 Akka概述227 /n
8.4.2 传统编程模型存在的问题228 /n
8.4.3 Actor模型解决了传统编程模型的问题232 /n
8.4.4 基于Akka实现异步编程237 /n
8.5 高性能分布式消息框架—Apache RocketMQ244 /n
8.5.1 Apache RocketMQ概述244 /n
8.5.2 基于Apache RocketMQ实现系统间异步解耦246 /n
8.6 总结254 /n
第9章 Go语言的异步编程能力255 /n
9.1 Go语言概述255 /n
9.2 Go语言的线程模型256 /n
9.2.1 一对一模型256 /n
9.2.2 多对一模型257 /n
9.2.3 多对多模型258 /n
9.2.4 Go语言的线程模型259 /n
9.3 goroutine与channel261 /n
9.3.1 goroutine261 /n
9.3.2 channel265 /n
9.3.3 构建管道实现异步编程269 /n
9.4 总结273