注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù)Java異步編程實(shí)戰(zhàn)

Java異步編程實(shí)戰(zhàn)

Java異步編程實(shí)戰(zhàn)

定 價(jià):¥79.00

作 者: 翟陸續(xù)
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787111642992 出版時(shí)間: 2020-01-01 包裝:
開本: 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  內(nèi)容簡(jiǎn)介 \n這是一部全面解析Java異步編程的著作,針對(duì)各種常見異步編程場(chǎng)景,從編程語(yǔ)言、開發(fā)框架等角度深入講解了異步編程的原理和方法。作者是淘寶的資深Java技術(shù)工程師,在Java異步編程、并發(fā)編程領(lǐng)域有深厚的積累。 \n全書共9章,每章內(nèi)容概括如下: \n第1-2章主要介紹了異步編程的概念、適用場(chǎng)景,以及如何使用線程和線程池來(lái)實(shí)現(xiàn)異步編程; \n第3章首先講解JDK中的各種Future及其內(nèi)部實(shí)現(xiàn)原理,然后講解如何使用Future實(shí)現(xiàn)異步編程,以及如何結(jié)合JDK8 Stream 和Future實(shí)現(xiàn)異步編程; \n第4章講解了Spring框架中提供的異步執(zhí)行能力,包含Spring中如何對(duì)TaskExecutor進(jìn)行抽象,如何使用注解@Async實(shí)現(xiàn)異步編程,以及其內(nèi)部實(shí)現(xiàn)原理; \n第5章講解了比較熱門的反應(yīng)式編程相關(guān)的內(nèi)容,包含什么是反應(yīng)式編程,如何使用反應(yīng)式編程規(guī)范的庫(kù)RxJava和Reactor庫(kù)實(shí)現(xiàn)異步編程; \n第6章講解了Web Servlet的異步非阻塞處理,包含Servlet 3.0規(guī)范是如何提供異步處理能力的,Servlet 3.1規(guī)范是如何解決IO阻塞問(wèn)題的,以及在Spring MVC中如何進(jìn)行異步處理。 \n第7章講解與Servlet技術(shù)棧并行存在的、由Spring5.0提出來(lái)的Spring WebFlux的異步非阻塞處理,包含Spring WebFlux的由來(lái)、Spring WebFlux的并發(fā)模型、兩種編程模型,以及如何使用Spring WebFlux來(lái)進(jìn)行服務(wù)開發(fā)、Spring WebFlux內(nèi)部的實(shí)現(xiàn)原理。 \n第8章簡(jiǎn)要介紹了業(yè)界為方便實(shí)現(xiàn)異步編程而設(shè)計(jì)的一些框架和中間件,比如異步基于事件驅(qū)動(dòng)的網(wǎng)絡(luò)編程框架Netty,高性能RPC框架Apache Dubbo,高性能線程間消息傳遞庫(kù)Disruptor,異步基、分布式、基于事件驅(qū)動(dòng)的編程框架Akka,高性能分布式消息平臺(tái)Apache RocketMQ 。 \n第9章介紹新興的Go語(yǔ)言是如何從語(yǔ)言層面提供了強(qiáng)大的異步編程能力的。 \n本書注重理論與實(shí)踐相結(jié)合,且每個(gè)異步技術(shù)點(diǎn)都附有代碼實(shí)例,幫助讀者加深理解。

作者簡(jiǎn)介

  翟陸續(xù)(花名:加多)資深Java研發(fā)工程師,就職于淘寶,有多年的Java研發(fā)經(jīng)驗(yàn),在Java并發(fā)編程、異步編程等方面有深入研究和積累。對(duì)JUC包源碼有深入的理解,熟悉常用開源框架實(shí)現(xiàn)原理。著有暢銷書《Java并發(fā)編程之美》。

圖書目錄

前言 \n
第1章 認(rèn)識(shí)異步編程1 \n
1.1 異步編程概念與作用1 \n
1.2 異步編程場(chǎng)景2 \n
1.3 總結(jié)9 \n
第2章 顯式使用線程和線程池實(shí)現(xiàn)異步編程10 \n
2.1 顯式使用線程實(shí)現(xiàn)異步編程10 \n
2.2 顯式使用線程池實(shí)現(xiàn)異步編程14 \n
2.2.1 如何顯式使用線程池實(shí)現(xiàn)異步編程14 \n
2.2.2 線程池ThreadPoolExecutor原理剖析17 \n
2.3 總結(jié)34 \n
第3章 基于JDK中的Future實(shí)現(xiàn)異步編程35 \n
3.1 JDK 中的Future35 \n
3.2 JDK中的FutureTask37 \n
3.2.1 FutureTask 概述37 \n
3.2.2 FutureTask的類圖結(jié)構(gòu)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 顯式設(shè)置CompletableFuture結(jié)果54 \n
3.3.3 基于CompletableFuture實(shí)現(xiàn)異步計(jì)算與結(jié)果轉(zhuǎn)換56 \n
3.3.4 多個(gè)CompletableFuture進(jìn)行組合運(yùn)算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 當(dāng)Stream遇見CompletableFuture79 \n
3.5 總結(jié)81 \n
第4章 Spring框架中的異步執(zhí)行82 \n
4.1 Spring中對(duì)TaskExecutor的抽象82 \n
4.2 如何在Spring中使用異步執(zhí)行84 \n
4.2.1 使用TaskExecutor實(shí)現(xiàn)異步執(zhí)行84 \n
4.2.2 使用注解@Async實(shí)現(xiàn)異步執(zhí)行89 \n
4.3 @Async注解異步執(zhí)行原理96 \n
4.4 總結(jié)109 \n
第5章 基于反應(yīng)式編程實(shí)現(xiàn)異步編程110 \n
5.1 反應(yīng)式編程概述110 \n
5.2 Reactive Streams規(guī)范120 \n
5.3 基于RxJava實(shí)現(xiàn)異步編程123 \n
5.4 基于Reactor實(shí)現(xiàn)異步編程133 \n
5.5 總結(jié)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實(shí)現(xiàn)異步處理155 \n
6.5 總結(jié)157 \n
第7章 Spring WebFlux的異步非阻塞處理158 \n
7.1 Spring WebFlux概述158 \n
7.2 Reactive編程 & Reactor庫(kù)159 \n
7.3 WebFlux服務(wù)器160 \n
7.4 WebFlux的并發(fā)模型163 \n
7.5 WebFlux對(duì)性能的影響164 \n
7.6 WebFlux的編程模型164 \n
7.6.1 WebFlux注解式編程模型165 \n
7.6.2 WebFlux函數(shù)式編程模型168 \n
7.7 WebFlux原理淺嘗171 \n
7.7.1 Reactor Netty概述171 \n
7.7.2 WebFlux服務(wù)器啟動(dòng)流程173 \n
7.7.3 WebFlux一次服務(wù)調(diào)用流程182 \n
7.8 WebFlux的適用場(chǎng)景185 \n
7.9 總結(jié)186 \n
第8章 高性能異步編程框架和中間件187 \n
8.1 異步、基于事件驅(qū)動(dòng)的網(wǎng)絡(luò)編程框架—Netty187 \n
8.1.1 Netty概述187 \n
8.1.2 Netty的線程模型190 \n
8.1.3 TCP半包與粘包問(wèn)題196 \n
8.1.4 基于Netty與CompletableFuture實(shí)現(xiàn)RPC異步調(diào)用198 \n
8.2 高性能RPC框架—Apache Dubbo209 \n
8.2.1 Apache Dubbo概述209 \n
8.2.2 Dubbo的異步調(diào)用210 \n
8.2.3 Dubbo的異步執(zhí)行214 \n
8.3 高性能線程間消息傳遞庫(kù)—Disruptor217 \n
8.3.1 Disruptor概述217 \n
8.3.2 Disruptor的特性詳解220 \n
8.3.3 基于Disruptor實(shí)現(xiàn)異步編程223 \n
8.4 異步、分布式、基于消息驅(qū)動(dòng)的框架—Akka227 \n
8.4.1 Akka概述227 \n
8.4.2 傳統(tǒng)編程模型存在的問(wèn)題228 \n
8.4.3 Actor模型解決了傳統(tǒng)編程模型的問(wèn)題232 \n
8.4.4 基于Akka實(shí)現(xiàn)異步編程237 \n
8.5 高性能分布式消息框架—Apache RocketMQ244 \n
8.5.1 Apache RocketMQ概述244 \n
8.5.2 基于Apache RocketMQ實(shí)現(xiàn)系統(tǒng)間異步解耦246 \n
8.6 總結(jié)254 \n
第9章 Go語(yǔ)言的異步編程能力255 \n
9.1 Go語(yǔ)言概述255 \n
9.2 Go語(yǔ)言的線程模型256 \n
9.2.1 一對(duì)一模型256 \n
9.2.2 多對(duì)一模型257 \n
9.2.3 多對(duì)多模型258 \n
9.2.4 Go語(yǔ)言的線程模型259 \n
9.3 goroutine與channel261 \n
9.3.1 goroutine261 \n
9.3.2 channel265 \n
9.3.3 構(gòu)建管道實(shí)現(xiàn)異步編程269 \n
9.4 總結(jié)273

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)