注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計Cloud Native分布式架構原理與實踐

Cloud Native分布式架構原理與實踐

Cloud Native分布式架構原理與實踐

定 價:¥79.00

作 者: 柳偉衛(wèi) 著
出版社: 北京大學出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787301300893 出版時間: 2019-02-01 包裝: 平裝
開本: 16開 頁數(shù): 336 字數(shù):  

內容簡介

  Cloud Native(云原生)是以云架構為優(yōu)先的應用開發(fā)模式。目前,越來越多的企業(yè)已經開始大規(guī)模地“擁抱云”——在云環(huán)境下開發(fā)應用、部署應用及發(fā)布應用等。未來,越來越多的開發(fā)者也將采用 Cloud Native 來開發(fā)應用。本書是國內Java 領域關于 Cloud Native 的著作?! 禖loud Native分布式架構原理與實踐》全面講解了基于 Cloud Native 來構建應用需要考慮的設計原則和實現(xiàn)方式,涵蓋REST 設計、測試、服務注冊、服務發(fā)現(xiàn)、安全、數(shù)據管理、消息通信、批處理、任務調度、運營、容器部署、持續(xù)發(fā)布等方面的 Cloud Native 知識。同時,書中所講解的技術方案皆為業(yè)界主流的技術,極具前瞻性。最后,本書除了講解 Cloud Native 的理論知識,還會在每個知識點上輔以大量的代碼案例,使理論可以聯(lián)系實踐,具備更強的可操作性?!”緯饕嫦驅Ψ植际较到y(tǒng)、微服務、Cloud Native 開發(fā)感興趣的計算機專業(yè)的學生、軟件開發(fā)人員和系統(tǒng)架構師。

作者簡介

  柳偉衛(wèi)(waylau),在 IT 公司擔任項目經理、架構師、高級開發(fā)顧問等職位,具有多年軟件開發(fā)管理及系統(tǒng)架構經驗。負責過多個省、國家大型分布式系統(tǒng)的設計與研發(fā),參與了多個大型項目的微服務架構的技術改造,在實際工作中,積累了大量的微服務架構經驗。是 CSDN、 開源中國、云棲社區(qū)等技術社區(qū)專家。

圖書目錄

第1章?Cloud Native 概述
1.1?當今軟件發(fā)展的現(xiàn)狀
1.1.1?軟件需求的發(fā)展
1.1.2?開發(fā)方式的巨變
1.1.3?云是大勢所趨
1.2?Cloud Native 的特性
1.2.1?以云為基礎架構
1.2.2?云服務
1.2.3?無服務
1.2.4?可擴展
1.2.5?高可用
1.2.6?敏捷
1.2.7?云優(yōu)先
1.3?12-Factor
1.3.1?基準代碼
1.3.2?依賴
1.3.3?配置
1.3.4?后端服務
1.3.5?構建、發(fā)布和運行
1.3.6?進程
1.3.7?端口綁定
1.3.8?并發(fā)
1.3.9?易處理
1.3.10?開發(fā)環(huán)境與線上環(huán)境等價
1.3.11?日志
1.3.12?管理進程
1.4?成功案例
1.4.1?Amazon
1.4.2??? Netflix
1.4.3?淘寶網
1.5?Cloud Native 與微服務
1.5.1?微服務概述
1.5.2?從單塊架構向微服務演進
1.5.3?Cloud Native 與微服務部署
1.6?總結
1.6.1?Cloud Native 的優(yōu)點
1.6.2?Cloud Native 不是“銀彈”
1.6.3?面臨的挑戰(zhàn)
第2章?REST API
2.1?REST 概述
2.1.1?REST 的定義
2.1.2?REST 設計原則
2.2?成熟度模型
2.2.1?第0級:使用 HTTP 作為傳輸方式
2.2.2?第1級:引入了資源的概念
2.2.3?第2級:根據語義使用 HTTP 動詞
2.2.4?第3級:使用 HATEOAS
2.3?Java REST
2.3.1?JAX-RS 規(guī)范
2.3.2?Jersey 框架
2.3.3?Apache CXF 框架
2.3.4?Spring Web MVC 框架
2.4?內容協(xié)商
2.4.1?二進制數(shù)據
2.4.2?Google Protocol Buffers 傳輸協(xié)議
2.5?異常處理
2.5.1?HTTP 狀態(tài)碼
2.5.2?自定義異常信息
2.6?API 管理
2.6.1?版本化
2.6.2?文檔化
2.6.3?可視化
2.7?客戶端
2.7.1?瀏覽器插件
2.7.2?JAX-RS 客戶端
2.7.3?Spring 客戶端
2.8?實戰(zhàn):開啟第一個微服務
2.8.1?初始化一個 Spring Boot 原型
2.8.2?用 Gradle 編譯項目
2.8.3?探索項目
2.8.4?實現(xiàn)第一個服務
第3章?Cloud Native 測試
3.1?測試概述
3.1.1?傳統(tǒng)測試所面臨的問題
3.1.2?如何破解測試面臨的問題
3.2?測試的類型、范圍和比例
3.2.1?測試類型
3.2.2?測試范圍
3.2.3?測試比例
3.3?如何進行微服務的測試
3.3.1?微服務的單元測試
3.3.2?Mock 與 Stub 的區(qū)別
3.3.3?微服務的集成測試
3.3.4?微服務的系統(tǒng)測試
3.3.5?保障代碼覆蓋率
3.4?Spring 測試框架
3.4.1?Spring TestContext 框架
3.4.2?Spring MVC Test 框架
3.4.3?Spring Boot Test 框架
第4章?服務路由
4.1?如何找到服務
4.1.1?DNS
4.1.2?服務注冊與發(fā)現(xiàn)
4.1.3?客戶端發(fā)現(xiàn)機制
4.1.4?服務端發(fā)現(xiàn)機制
4.2?實戰(zhàn):實現(xiàn)服務注冊與發(fā)現(xiàn)
4.2.1?選擇 Eureka的原因
4.2.2?集成 Eureka Server
4.2.3?集成 Eureka Client
4.2.4?服務的注冊與發(fā)現(xiàn)
第5章?Cloud Native 安全
5.1?認證與授權
5.1.1?基本認證
5.1.2?摘要認證
5.1.3?摘要認證的密碼加密
5.1.4?通用密碼加密
5.1.5?基于散列的令牌方法
5.1.6?基于持久化的令牌方法
5.2?Java 安全框架
5.2.1?Apache Shiro
5.2.2?Spring Security
5.2.3?Spring Cloud Security
5.3?OAuth 2.0 認證
5.3.1?OAuth 2.0 的認證原理
5.3.2?OAuth 2.0 的核心概念
5.3.3?OAuth 2.0 的認證流程
5.4?實戰(zhàn):實現(xiàn)單點登錄
5.4.1?項目依賴
5.4.2?編碼實現(xiàn)
5.4.3?應用配置
5.4.4?運行
第6章?Cloud Native 數(shù)據管理
6.1?數(shù)據的存儲方式
6.1.1?關系型數(shù)據庫
6.1.2?NoSQL
6.2?DDD 與數(shù)據建模
6.2.1?DDD 概述
6.2.2?運用 DDD 進行數(shù)據建模
6.3?常用數(shù)據訪問方式
6.3.1?JDBC
6.3.2?Spring JDBC
6.3.3?JPA
6.4?Spring Data
6.4.1?Spring Data 概述
6.4.2?Spring Data JPA
6.4.3?Spring Data Elasticsearch
6.4.4?Spring Data Redis
6.4.5?Spring Data MongoDB
6.4.6?實戰(zhàn):基于 MongoDB 的文件服務器
第7章?Cloud Native 消息通信
7.1?消息通信概述
7.1.1?消息通信的基本概念
7.1.2?JMS
7.1.3?事件驅動的架構
7.2?消息通信常用模式
7.2.1?點對點模式
7.2.2?發(fā)布—訂閱模式
7.3?CQRS
7.3.1?CQRS 概述
7.3.2?CQRS 的好處
7.3.3?實戰(zhàn):實現(xiàn) CQRS
7.4?Spring Cloud Stream
7.4.1?Spring Cloud Stream 概述
7.4.2?Spring Cloud Stream 實現(xiàn)發(fā)布者
7.4.3?Spring Cloud Stream 實現(xiàn)消費者
7.4.4?實戰(zhàn):基于 Spring Cloud Stream 的消息通信
第8章?Cloud Native 批處理
8.1?批處理概述
8.1.1?需要批處理的原因
8.1.2?常用批處理實現(xiàn)方式
8.2?JDBC Batch
8.2.1?Statement 與 PreparedStatement
8.2.2?實戰(zhàn):使用 JDBC Batch 的例子
8.3?Spring 批處理
8.3.1?使用 JdbcTemplate 實現(xiàn)批處理
8.3.2?批量更新 List
8.3.3?多個批次更新
8.4?Spring Batch
8.4.1?Spring Batch 概述
8.4.2?Job
8.4.3?JobLauncher
8.4.4?JobRepository
8.4.5?Step
8.4.6?ItemReader
8.4.7?ItemWriter
8.4.8?ItemProcessor
8.4.9?實戰(zhàn):使用 Spring Batch 的例子
第9章?Cloud Native 任務調度
9.1?任務執(zhí)行與調度概述
9.2?Spring TaskExecutor
9.2.1?TaskExecutor 類型
9.2.2?TaskExecutor 應用
9.3?Spring TaskScheduler
9.3.1?Trigger 接口
9.3.2?Trigger 接口的實現(xiàn)
9.4?Spring 任務調度及異步執(zhí)行
9.4.1?啟用調度注解
9.4.2?@Scheduled 注解
9.4.3?@Async 注解
9.4.4?@Async 的異常處理
9.4.5?命名空間
9.5?使用 Quartz Scheduler
9.5.1?使用 JobDetailFactoryBean
9.5.2?使用 MethodInvokingJobDetailFactoryBean
9.6?實戰(zhàn):基于 Quartz Schedule 的天氣預報系統(tǒng)
9.6.1?項目概述
9.6.2?后臺編碼實現(xiàn)
9.6.3?運行
第10章?Cloud Native 運營
10.1?CAP 理論
10.1.1?CAP 理論概述
10.1.2?CAP 只能三選二的原因
10.1.3?CAP 常見模型
10.1.4?CAP 的意義
10.1.5?CAP 的發(fā)展
10.2?服務的熔斷
10.2.1?熔斷的意義
10.2.2?Hystrix 概述
10.2.3?實戰(zhàn):實現(xiàn)微服務的熔斷機制
10.3?代碼管理
10.3.1?Git 簡介
10.3.2?Git 核心概念
10.3.3?Git Flow
10.4?日志管理
10.4.1?日志框架概述
10.4.2?分布式下的日志管理
10.4.3?集中化日志分析
10.4.4?實戰(zhàn):基于 Elastic Stack 的集中化日志管理
10.5?配置管理
10.5.1?分布式下的配置管理的痛點
10.5.2?集中化配置
10.5.3? Spring Cloud Config
10.5.4?實戰(zhàn):基于 Config 實現(xiàn)的配置中心
10.6?應用監(jiān)控
10.6.1?心跳
10.6.2?Eureka 監(jiān)測機制
10.6.3?Spring Boot Actuator
10.6.4?實戰(zhàn):基于 Spring Boot Actuator 監(jiān)測的例子
第11章?Cloud Native 持續(xù)發(fā)布
11.1?持續(xù)集成與持續(xù)交付
11.1.1?持續(xù)集成概述
11.1.2?持續(xù)交付與持續(xù)部署
11.1.3?持續(xù)交付與持續(xù)部署的意義
11.2?持續(xù)交付流水線
11.2.1?流水線概述
11.2.2?構建持續(xù)交付流水線
11.2.3?構建流水線的工具
11.3?微服務的管理與發(fā)布
11.3.1?兩個比薩的故事
11.3.2?DevOps 文化
11.3.3?微服務的發(fā)布
11.4?容器
11.4.1?虛擬化技術
11.4.2?容器與虛擬機
11.4.3?基于容器的持續(xù)部署流程
11.4.4?實戰(zhàn):使用 Docker 來構建、運行和發(fā)布微服務
11.5?發(fā)布到云
11.5.1?常用云服務
11.5.2?實戰(zhàn):發(fā)布應用到云
附錄?本書所涉及的技術及相關版本
參考文獻

本目錄推薦

掃描二維碼
Copyright ? 讀書網 m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號