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

Quarkus雲原生微服務開發實戰/電腦前沿技術叢書

  • 作者:成富|責編:李培培
  • 出版社:機械工業
  • ISBN:9787111689553
  • 出版日期:2021/09/01
  • 裝幀:平裝
  • 頁數:298
人民幣:RMB 119 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書以一個完整的實戰應用的開發過程作為主線,介紹如何以Quarkus為框架來開發微服務架構的雲原生應用。書中介紹了微服務和雲原生開發的各個方面,包括微服務的開發和測試以及在Kubemetes上的部署運行,還包括應用的可觀察性、安全和服務調用的健壯性等非功能性需求。通過本書的介紹,讀者可以了解一個真實的雲原生應用的開發過程,並學會如何從頭開始開發個人的應用程序。
    本書適合從事Quarkus雲原生微服務開發以及對雲原生微服務感興趣的Java開發人員閱讀。

作者介紹
成富|責編:李培培
    成富     北京大學,碩士,全棧工程師。專註于基於雲原生微服務架構的產品設計和開發,有14年從業經驗.參與過很多企業級應用的設計與開發。出版過《深入理解Java 7》和《Exploring Java 9》等圖書,在拉勾網開設了與雲原生微服務相關的專欄。

目錄
前言
第1章  雲原生微服務概述
  1.1  了解微服務架構
    1.1.1  了解單體應用存在的問題
    1.1.2  微服務架構概述
    1.1.3  雲原生與微服務架構
    1.1.4  雲原生的發展趨勢
  1.2  了解容器化技術
  1.3  了解容器編排技術
    1.3.1  使用Docker進行簡單的編排
    1.3.2  使用Docker Compose進行編排
    1.3.3  Kubernetes介紹
  1.4  Quarkus介紹
第2章  Quarkus開發入門
  2.1  創建新的項目
  2.2  通用的應用開發流程
    2.2.1  使用開發模式
    2.2.2  調試應用
    2.2.3  實用的插件命令
  2.3  源代碼組織
  2.4  實戰應用介紹
  2.5  微服務的設計
第3章  Quarkus的依賴注入
  3.1  CDI中的Bean 及其作用域
  3.2  使用依賴注入
    3.2.1  了解不同的依賴注入方式
    3.2.2  注入@Dependent作用域的Bean
    3.2.3  獲取注入點的元數據
  3.3  Bean的使用
    3.3.1  使用修飾符區分相同類型的Bean
    3.3.2  使用生產方法和欄位創建Bean
    3.3.3  使用默認Bean和替代Bean
    3.3.4  在代碼中選擇Bean實例
  3.4  使用攔截器實現橫切的業務邏輯
  3.5  使用事件進行消息傳遞
    3.5.1  同步的事件發布和處理
    3.5.2  非同步的事件發布和處理
    3.5.3  使用修飾符來區分事件
    3.5.4  獲取事件的元數據
  3.6  Quarkus的CDI實現
    3.6.1  共享代碼中Bean的發現
    3.6.2  Bean的特殊處理
    3.6.3  客戶端代理的使用
第4章  Quarkus微服務的配置
  4.1  使用配置源
    4.1.1  Quarkus提供的默認配置源
    4.1.2  使用YAML格式的配置文件
    4.1.3  創建自定義的配置源
    4.1.4  生成Quarkus框架的配置文件
    4.1.5  使用外部配置源

  4.2  獲取配置項的值
  4.3  使用類型安全的配置類
    4.3.1  綁定配置類中的欄位
    4.3.2  綁定配置介面中的方法
    4.3.3  驗證配置項的值
  4.4  通過配置Profile區分不同的環境
  4.5  配置項的類型轉換
  4.6  Kubernetes上的Quarkus應用配置
第5章  同步調用方式——餐館微服務
  5.1  訪問關係型資料庫
    5.1.1  創建數據源
    5.1.2  使用Flyway遷移資料庫模式
    5.1.3  使用JPA和Hibernate訪問資料庫
    5.1.4  使用Panache簡化資料庫訪問
    5.1.5  服務層實現
    5.1.6  事務管理
    5.1.7  分頁和排序
  5.2  發布REST API
    5.2.1  使用JAX-RS註解標注REST控制器
    5.2.2  使用JSON格式進行序列化
  5.3  微服務的單元測試
    5.3.1  數據訪問層測試
    5.3.2  服務層測試
    5.3.3  REST API測試
  5.4  生成OpenAPI文檔
  5.5  消費其他微服務的REST API
  5.6  使用Elasticsearch檢索菜單
  5.7  使用Redis執行地理位置查詢
  5.8  使用Quarkus測試資源
第6章  非同步消息傳遞——訂單微服務實現
  6.1  發布gRPC API
    6.1.1  使用protobuf描述消息格式
    6.1.2  創建gPRC的介面定義
    6.1.3  實現gRPC API
    6.1.4  消費其他微服務的gRPC API
  6.2  非同步消息傳遞
    6.2.1  非同步消息傳遞概述
    6.2.2  事件、命令和消息的含義
    6.2.3  數據的最終一致性
    6.2.4  使用Apache Kafka傳遞消息
    6.2.5  事務性消息
  6.3  使用WebSocket
第7章  反應式微服務——送貨微服務實現
  7.1  反應式編程概述
  7.2  使用Mutiny進行反應式編程
    7.2.1  Mutiny中的事件
    7.2.2  創建Uni和Multi對象
    7.2.3  處理Multi和Uni中的元素
    7.2.4  訂閱反應式流
  7.3  反應式數據訪問

  7.4  開發反應式REST API
    7.4.1  使用RESTEasy
    7.4.2  創建反應式路由
    7.4.3  上傳文件
  7.5  開發反應式gRPC
  7.6  使用反應式消息
    7.6.1  SmallRye反應式消息庫的基本用法
    7.6.2  使用Kafka作為消息代理
    7.6.3  送貨微服務的實現
    7.6.4  反應式消息的單元測試
第8章  Quarkus應用部署
  8.1  應用打包方式
    8.1.1  使用JVM模式
    8.1.2  創建原生可執行文件
  8.2  創建容器鏡像
  8.3  部署到Kubernetes
    8.3.1  發布Docker鏡像
    8.3.2  容器鏡像的標籤
    8.3.3  創建Kubernetes部署資源
    8.3.4  完整的應用部署
    8.3.5  持續集成與部署
第9章  應用的可觀察性
  9.1  健康檢查
    9.1.1  MicroProfile Health規範
    9.1.2  自定義的健康檢查過程
    9.1.3  SmallRye Health的擴展功能
  9.2  分散式追蹤
    9.2.1  分散式追蹤的基本概念
    9.2.2  追蹤JAX-RS和gRPC
    9.2.3  使用OpenTracing API
  9.3  性能指標數據
    9.3.1  使用Micrometer
    9.3.2  使用Prometheus
  9.4  日誌管理與異常處理
    9.4.1  記錄日誌和相關配置
    9.4.2  使用MDC傳遞數據
    9.4.3  使用Sentry記錄異常
第10章  應用安全及彈性服務
  10.1  用戶管理
  10.2  身份認證
    10.2.1  Quarkus的認證機制
    10.2.2  基於JWT的令牌認證
    10.2.3  使用MicroProfile JWT
    10.2.4  使用Keycloak
  10.3  用戶授權管理
  10.4  彈性服務
    10.4.1  調用超時與重試
    10.4.2  回退值
    10.4.3  熔斷器和隔板
  10.5  使用服務網格

第11章  框架和服務的集成
  11.1  創建計劃任務
    11.1.1  計劃任務API
    11.1.2  使用Quartz
  11.2  實用功能與框架集成
    11.2.1  創建命令行程序
    11.2.2  使用字元串模板
    11.2.3  發送郵件
    11.2.4  Apache Camel集成
  11.3  使用GraphQL組合API

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們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