注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Cloud Native分布式架構(gòu)原理與實踐

Cloud Native分布式架構(gòu)原理與實踐

Cloud Native分布式架構(gòu)原理與實踐

定 價:¥79.00

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

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

內(nèi)容簡介

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

作者簡介

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

圖書目錄

第1章?Cloud Native 概述
1.1?當(dāng)今軟件發(fā)展的現(xiàn)狀
1.1.1?軟件需求的發(fā)展
1.1.2?開發(fā)方式的巨變
1.1.3?云是大勢所趨
1.2?Cloud Native 的特性
1.2.1?以云為基礎(chǔ)架構(gòu)
1.2.2?云服務(wù)
1.2.3?無服務(wù)
1.2.4?可擴展
1.2.5?高可用
1.2.6?敏捷
1.2.7?云優(yōu)先
1.3?12-Factor
1.3.1?基準(zhǔn)代碼
1.3.2?依賴
1.3.3?配置
1.3.4?后端服務(wù)
1.3.5?構(gòu)建、發(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?淘寶網(wǎng)
1.5?Cloud Native 與微服務(wù)
1.5.1?微服務(wù)概述
1.5.2?從單塊架構(gòu)向微服務(wù)演進
1.5.3?Cloud Native 與微服務(wù)部署
1.6?總結(jié)
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 設(shè)計原則
2.2?成熟度模型
2.2.1?第0級:使用 HTTP 作為傳輸方式
2.2.2?第1級:引入了資源的概念
2.2.3?第2級:根據(jù)語義使用 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?內(nèi)容協(xié)商
2.4.1?二進制數(shù)據(jù)
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):開啟第一個微服務(wù)
2.8.1?初始化一個 Spring Boot 原型
2.8.2?用 Gradle 編譯項目
2.8.3?探索項目
2.8.4?實現(xiàn)第一個服務(wù)
第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?如何進行微服務(wù)的測試
3.3.1?微服務(wù)的單元測試
3.3.2?Mock 與 Stub 的區(qū)別
3.3.3?微服務(wù)的集成測試
3.3.4?微服務(wù)的系統(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章?服務(wù)路由
4.1?如何找到服務(wù)
4.1.1?DNS
4.1.2?服務(wù)注冊與發(fā)現(xiàn)
4.1.3?客戶端發(fā)現(xiàn)機制
4.1.4?服務(wù)端發(fā)現(xiàn)機制
4.2?實戰(zhàn):實現(xiàn)服務(wù)注冊與發(fā)現(xiàn)
4.2.1?選擇 Eureka的原因
4.2.2?集成 Eureka Server
4.2.3?集成 Eureka Client
4.2.4?服務(wù)的注冊與發(fā)現(xiàn)
第5章?Cloud Native 安全
5.1?認(rèn)證與授權(quán)
5.1.1?基本認(rèn)證
5.1.2?摘要認(rèn)證
5.1.3?摘要認(rèn)證的密碼加密
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 認(rèn)證
5.3.1?OAuth 2.0 的認(rèn)證原理
5.3.2?OAuth 2.0 的核心概念
5.3.3?OAuth 2.0 的認(rèn)證流程
5.4?實戰(zhàn):實現(xiàn)單點登錄
5.4.1?項目依賴
5.4.2?編碼實現(xiàn)
5.4.3?應(yīng)用配置
5.4.4?運行
第6章?Cloud Native 數(shù)據(jù)管理
6.1?數(shù)據(jù)的存儲方式
6.1.1?關(guān)系型數(shù)據(jù)庫
6.1.2?NoSQL
6.2?DDD 與數(shù)據(jù)建模
6.2.1?DDD 概述
6.2.2?運用 DDD 進行數(shù)據(jù)建模
6.3?常用數(shù)據(jù)訪問方式
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 的文件服務(wù)器
第7章?Cloud Native 消息通信
7.1?消息通信概述
7.1.1?消息通信的基本概念
7.1.2?JMS
7.1.3?事件驅(qū)動的架構(gòu)
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 任務(wù)調(diào)度
9.1?任務(wù)執(zhí)行與調(diào)度概述
9.2?Spring TaskExecutor
9.2.1?TaskExecutor 類型
9.2.2?TaskExecutor 應(yīng)用
9.3?Spring TaskScheduler
9.3.1?Trigger 接口
9.3.2?Trigger 接口的實現(xiàn)
9.4?Spring 任務(wù)調(diào)度及異步執(zhí)行
9.4.1?啟用調(diào)度注解
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 的天氣預(yù)報系統(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?服務(wù)的熔斷
10.2.1?熔斷的意義
10.2.2?Hystrix 概述
10.2.3?實戰(zhàn):實現(xiàn)微服務(wù)的熔斷機制
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?應(yīng)用監(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?構(gòu)建持續(xù)交付流水線
11.2.3?構(gòu)建流水線的工具
11.3?微服務(wù)的管理與發(fā)布
11.3.1?兩個比薩的故事
11.3.2?DevOps 文化
11.3.3?微服務(wù)的發(fā)布
11.4?容器
11.4.1?虛擬化技術(shù)
11.4.2?容器與虛擬機
11.4.3?基于容器的持續(xù)部署流程
11.4.4?實戰(zhàn):使用 Docker 來構(gòu)建、運行和發(fā)布微服務(wù)
11.5?發(fā)布到云
11.5.1?常用云服務(wù)
11.5.2?實戰(zhàn):發(fā)布應(yīng)用到云
附錄?本書所涉及的技術(shù)及相關(guān)版本
參考文獻

本目錄推薦

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