幫助中心 | 我的帳號 | 關於我們

Java非同步編程實戰/Java核心技術系列

  • 作者:翟陸續
  • 出版社:機械工業
  • ISBN:9787111642992
  • 出版日期:2020/01/01
  • 裝幀:平裝
  • 頁數:273
人民幣:RMB 79 元      售價:
放入購物車
加入收藏夾

內容大鋼
    這是一部全面解析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語言是如何從語言層面提供了強大的非同步編程能力的。
    本書注重理論與實踐相結合,且每個非同步技術點都附有代碼實例,幫助讀者加深理解。

作者介紹
翟陸續
    翟陸續(花名:加多)     資深Java技術工程師,就職于淘寶,有多年的Java研發經驗,在Java併發編程、非同步編程等方面有深入研究和積累。對JUC包源碼有深入的理解,熟悉常用開源框架實現原理。     著有暢銷書《Java併發編程之美》。

目錄
前言
第1章  認識非同步編程
  1.1  非同步編程概念與作用
  1.2  非同步編程場景
  1.3  總結
第2章  顯式使用線程和線程池實現非同步編程
  2.1  顯式使用線程實現非同步編程
  2.2  顯式使用線程池實現非同步編程
    2.2.1  如何顯式使用線程池實現非同步編程
    2.2.2  線程池ThreadPoolExecutor原理剖析
  2.3  總結
第3章  基於JDK中的Future實現非同步編程
  3.1  JDK 中的Future
  3.2  JDK中的FutureTask
    3.2.1  FutureTask 概述
    3.2.2  FutureTask的類圖結構
    3.2.3  FutureTask的run() 方法
    3.2.4  FutureTask的get()方法
    3.2.5  FutureTask的cancel(boolean mayInterruptIfRunning)方法
    3.2.6  FutureTask的局限性
  3.3  JDK中的CompletableFuture
    3.3.1  CompletableFuture 概述
    3.3.2  顯式設置CompletableFuture結果
    3.3.3  基於CompletableFuture實現非同步計算與結果轉換
    3.3.4  多個CompletableFuture進行組合運算
    3.3.5  異常處理
    3.3.6  CompletableFuture概要原理
  3.4  JDK8 Stream & CompletableFuture
    3.4.1  JDK8 Stream
    3.4.2  當Stream遇見CompletableFuture
  3.5  總結
第4章  Spring框架中的非同步執行
  4.1  Spring中對TaskExecutor的抽象
  4.2  如何在Spring中使用非同步執行
    4.2.1  使用TaskExecutor實現非同步執行
    4.2.2  使用註解@Async實現非同步執行
  4.3  @Async註解非同步執行原理
  4.4  總結
第5章  基於反應式編程實現非同步編程
  5.1  反應式編程概述
  5.2  Reactive Streams規範
  5.3  基於RxJava實現非同步編程
  5.4  基於Reactor實現非同步編程
  5.5  總結
第6章  Web Servlet的非同步非阻塞處理
  6.1  Servlet概述
  6.2  Servlet 3.0提供的非同步處理能力
  6.3  Servlet 3.1提供的非阻塞IO能力
  6.4  Spring Web MVC 的非同步處理能力
    6.4.1  基於DeferredResult的非同步處理

    6.4.2  基於Callable實現非同步處理
  6.5  總結
第7章  Spring WebFlux的非同步非阻塞處理
  7.1  Spring WebFlux概述
  7.2  Reactive編程 & Reactor庫
  7.3  WebFlux伺服器
  7.4  WebFlux的併發模型
  7.5  WebFlux對性能的影響
  7.6  WebFlux的編程模型
    7.6.1  WebFlux註解式編程模型
    7.6.2  WebFlux函數式編程模型
  7.7  WebFlux原理淺嘗
    7.7.1  Reactor Netty概述
    7.7.2  WebFlux伺服器啟動流程
    7.7.3  WebFlux一次服務調用流程
  7.8  WebFlux的適用場景
  7.9  總結
第8章  高性能非同步編程框架和中間件
  8.1  非同步、基於事件驅動的網路編程框架—Netty
    8.1.1  Netty概述
    8.1.2  Netty的線程模型
    8.1.3  TCP半包與粘包問題
    8.1.4  基於Netty與CompletableFuture實現RPC非同步調用
  8.2  高性能RPC框架—Apache Dubbo
    8.2.1  Apache Dubbo概述
    8.2.2  Dubbo的非同步調用
    8.2.3  Dubbo的非同步執行
  8.3  高性能線程間消息傳遞庫—Disruptor
    8.3.1  Disruptor概述
    8.3.2  Disruptor的特性詳解
    8.3.3  基於Disruptor實現非同步編程
  8.4  非同步、分散式、基於消息驅動的框架—Akka
    8.4.1  Akka概述
    8.4.2  傳統編程模型存在的問題
    8.4.3  Actor模型解決了傳統編程模型的問題
    8.4.4  基於Akka實現非同步編程
  8.5  高性能分散式消息框架—Apache RocketMQ
    8.5.1  Apache RocketMQ概述
    8.5.2  基於Apache RocketMQ實現系統間非同步解耦
  8.6  總結
第9章  Go語言的非同步編程能力
  9.1  Go語言概述
  9.2  Go語言的線程模型
    9.2.1  一對一模型
    9.2.2  多對一模型
    9.2.3  多對多模型
    9.2.4  Go語言的線程模型
  9.3  goroutine與channel
    9.3.1  goroutine
    9.3.2  channel

    9.3.3  構建管道實現非同步編程
  9.4  總結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032