注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)圖形圖像、多媒體、網(wǎng)頁制作微服務(wù)即學(xué)即用

微服務(wù)即學(xué)即用

微服務(wù)即學(xué)即用

定 價(jià):¥98.00

作 者: [美] 羅尼·米特拉(Ronnie Mitra) 著,王巖,黃俊彬 譯
出版社: 中國電力出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787519864088 出版時(shí)間: 2022-03-01 包裝:
開本: 頁數(shù): 字?jǐn)?shù):  

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

  ·學(xué)習(xí)有效和明確的端到端微服務(wù)系統(tǒng)設(shè)計(jì)。 ·定義團(tuán)隊(duì)、他們的職責(zé)以及共同工作的指導(dǎo)方針。 ·了解如何將大型應(yīng)用程序分割成一組微服務(wù)。 ·研究如何將數(shù)據(jù)隔離并嵌入到相應(yīng)的微服務(wù)中。 ·為基礎(chǔ)架構(gòu)更改構(gòu)建一個(gè)簡(jiǎn)單但功能強(qiáng)大的CI/CD管道。 ·為示例微服務(wù)編寫代碼。 ·在Amazon上部署可正常工作的微服務(wù)應(yīng)用程序Web服務(wù)。

作者簡(jiǎn)介

  作者介紹 Ronnie Mitra是一位作家,戰(zhàn)略家和顧問,擁有超過25年網(wǎng)絡(luò)和連接技術(shù)工作經(jīng)驗(yàn)。他是O’Reilly的《Microservice Architecture》和《Continuous API Management》的合著者。 Irakli Nadareishvili是Capital One核心創(chuàng)新副總裁,領(lǐng)導(dǎo)著負(fù)責(zé)構(gòu)建基于微服務(wù)的核心銀行平臺(tái)的團(tuán)隊(duì)。在此之前,他是健康科技初創(chuàng)公司ReferWell的聯(lián)合創(chuàng)始人兼CTO,并在CA Technologies和NPR擔(dān)任技術(shù)領(lǐng)導(dǎo)職務(wù)。您可以通過@inadarei在Twitter上關(guān)注Irakli。 譯者介紹 王巖,thoughtworks高級(jí)咨詢師,專注于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的實(shí)踐和推廣。黃俊彬,thoughtworks高級(jí)咨詢師,在智能硬件、通信、互聯(lián)網(wǎng)、金融等領(lǐng)軍企業(yè)提供敏捷轉(zhuǎn)型、系統(tǒng)架構(gòu)改造、大型遺留系統(tǒng)重構(gòu)等服務(wù)。

圖書目錄

目錄
前言 .1
第1 章 邁向微服務(wù)架構(gòu) 7
1.1 微服務(wù)是什么? .8
1.2 降低協(xié)作成本 10
1.2.1 協(xié)作成本問題 11
1.2.2 艱難部分. 13
1.3 從實(shí)踐中學(xué)習(xí) 14
1.4 決策,決策…… 17
1.5 小結(jié) 21
第2 章 微服務(wù)運(yùn)作模式的設(shè)計(jì) 22
2.1 為什么團(tuán)隊(duì)和人員很重要 23
2.1.1 團(tuán)隊(duì)規(guī)模. 24
2.1.2 團(tuán)隊(duì)技能. 26
2.1.3 團(tuán)隊(duì)間協(xié)作 27
2.2 引入團(tuán)隊(duì)拓?fù)? 29
2.2.1 團(tuán)隊(duì)類型. 29
2.2.2 交互模式. 31
2.3 設(shè)計(jì)一個(gè)微服務(wù)團(tuán)隊(duì)拓?fù)? 32
2.3.1 建立系統(tǒng)設(shè)計(jì)團(tuán)隊(duì) . 33
2.3.2 構(gòu)建微服務(wù)團(tuán)隊(duì)模板 35
2.3.3 平臺(tái)團(tuán)隊(duì). 38
2.3.4 賦能和復(fù)雜的子系統(tǒng)團(tuán)隊(duì) . 39
2.3.5 消費(fèi)者團(tuán)隊(duì) 41
2.3.6 小結(jié) 43
第3 章 設(shè)計(jì)微服務(wù):SEED(S)流程 44
3.1 介紹服務(wù)設(shè)計(jì)的七個(gè)基本演變:SEED(S)方法 . 45
3.2 確定參與者 . 46
3.3 確定參與者必須做的工作 49
3.3.1 使用工作故事描述格式來完成待完成工作(JTBDs) 51
3.3.2 我們的示例項(xiàng)目中的示例JTBD 52
3.4 用序列圖發(fā)現(xiàn)交互模式 53
3.5 從JTBD 派生操作和查詢 56
3.6 將每個(gè)查詢和操作描述為具有開放標(biāo)準(zhǔn)的規(guī)范 59
3.7 獲得關(guān)于API 規(guī)范的反饋 64
3.8 實(shí)現(xiàn)微服務(wù) . 65
3.9 微服務(wù)與API . 65
3.10 小結(jié) . 68
第4 章 調(diào)整微服務(wù)的大?。簩ふ曳?wù)邊界 69
4.1 為什么邊界很重要,什么時(shí)候重要,以及如何找到它們 69
4.2 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)和微服務(wù)邊界 71
4.2.1 上下文映射 75
4.2.2 同步集成與異步集成 78
4.2.3 DDD 聚合 79
4.3 事件風(fēng)暴簡(jiǎn)介 79
4.4 介紹通用規(guī)模計(jì)算公式 86
4.5 小結(jié) 87
第5 章 處理數(shù)據(jù) 89
5.1 獨(dú)立部署和數(shù)據(jù)共享 . 89
5.2 微服務(wù)嵌入他們的數(shù)據(jù) 91
5.2.1 嵌入數(shù)據(jù)不應(yīng)導(dǎo)致數(shù)據(jù)庫集群數(shù)量激增 92
5.2.2 數(shù)據(jù)嵌入和數(shù)據(jù)委托模式 . 93
5.2.3 使用數(shù)據(jù)復(fù)制解決獨(dú)立性 . 95
5.2.4 分布式事務(wù)和失敗補(bǔ)償 96
5.3 事件源和CQRS 99
5.3.1 事件源 100
5.3.2 通過滾動(dòng)快照提高性能 106
5.3.3 事件存儲(chǔ) 107
5.3.4 命令查詢職責(zé)分離 108
5.4 微服務(wù)之外的事件源和CQRS 109
5.5 小結(jié) . 111
第6 章 構(gòu)建基礎(chǔ)設(shè)施流水線 . 112
6.1 DevOps 原則和實(shí)踐 113
6.1.1 不可變的基礎(chǔ)設(shè)施 114
6.1.2 基礎(chǔ)設(shè)施即代碼 116
6.1.3 持續(xù)集成和持續(xù)交付 . 118
6.2 建立基礎(chǔ)設(shè)施即代碼的環(huán)境 120
6.2.1 設(shè)置GitHub 120
6.2.2 安裝Terraform 121
6.3 配置Amazon Web Services 122
6.3.1 設(shè)置一個(gè)AWS Operations 賬戶 123
6.3.2 配置AWS CLI 127
6.3.3 設(shè)置AWS 權(quán)限 . 128
6.3.4 為Terraform 創(chuàng)建S3 存儲(chǔ) 132
6.4 建立基礎(chǔ)設(shè)施即代碼流水線 134
6.4.1 創(chuàng)建沙箱代碼庫 135
6.4.2 使用Terraform 137
6.4.3 編寫沙盒環(huán)境代碼 138
6.4.4 構(gòu)建流水線 . 142
6.4.5 測(cè)試流水線 . 152
6.5 小結(jié) . 154
第7 章 構(gòu)建微服務(wù)基礎(chǔ)設(shè)施 . 156
7.1 基礎(chǔ)設(shè)施組件 . 156
7.1.1 網(wǎng)絡(luò) 157
7.1.2 Kubernetes 服務(wù) 158
7.1.3 GitOps 部署服務(wù)器 . 160
7.2 實(shí)現(xiàn)基礎(chǔ)設(shè)施 . 162
7.2.1 安裝kubectl 162
7.2.2 設(shè)置模塊代碼庫 163
7.2.3 網(wǎng)絡(luò)模塊 166
7.2.4 Kubernetes 模塊 182
7.2.5 設(shè)置Argo CD 195
7.2.6 測(cè)試環(huán)境 200
7.2.7 清理基礎(chǔ)設(shè)施 201
7.3 小結(jié) . 203
第8 章 開發(fā)者空間 205
8.1 編碼標(biāo)準(zhǔn)和開發(fā)者的配置 . 206
8.2 在本地設(shè)置一個(gè)容器化的環(huán)境 214
8.2.1 安裝Multipass 215
8.2.2 輸入容器和映射文件夾 217
8.3 安裝Docker . 218
8.4 本地Docker 的高級(jí)用法:安裝Cassandra 220
8.5 安裝Kubernetes . 221
8.6 小結(jié) . 223
第9 章 開發(fā)微服務(wù) 225
9.1 設(shè)計(jì)微服務(wù)端點(diǎn) 225
9.1.1 航班管理微服務(wù) 229
9.1.2 預(yù)留管理微服務(wù) 230
9.1.3 設(shè)計(jì)OpenAPI 規(guī)范 230
9.2 為微服務(wù)實(shí)現(xiàn)數(shù)據(jù) 238
9.2.1 預(yù)訂微服務(wù)的Redis 數(shù)據(jù)模型 238
9.2.2 航班微服務(wù)的MySQL 數(shù)據(jù)模型 . 241
9.3 微服務(wù)的實(shí)現(xiàn)代碼 243
9.3.1 航班微服務(wù)背后的代碼 244
9.3.2 健康檢查 250
9.4 向項(xiàng)目引入第二種微服務(wù) . 252
9.5 通過傘式項(xiàng)目關(guān)聯(lián)微服務(wù) . 259
9.6 小結(jié) . 262
第10 章 發(fā)布微服務(wù) 264
10.1 設(shè)置Staging 環(huán)境 265
10.1.1 Ingress 模塊 . 266
10.1.2 數(shù)據(jù)庫模塊 267
10.1.3 Forking Staging 基礎(chǔ)設(shè)施項(xiàng)目 268
10.1.4 配置Staging 工作流 269
10.1.5 編輯Staging 基礎(chǔ)設(shè)施代碼 . 271
10.2 傳輸航班信息容器 . 275
10.2.1 介紹Docker Hub 276
10.2.2 配置Docker Hub 277
10.2.3 配置流水線 278
10.3 部署航班服務(wù)容器 . 282
10.3.1 了解Kubernetes 部署 . 283
10.3.2 創(chuàng)建 Helm Chart 284
10.3.3 創(chuàng)建微服務(wù)部署代碼庫 . 286
10.3.4 使用Argo CD 進(jìn)行GitOps 式的部署 . 292
10.4 清理 299
10.5 小結(jié) 299
第11 章 變更管理 . 300
11.1 微服務(wù)系統(tǒng)中的變更 301
11.1.1 以數(shù)據(jù)為導(dǎo)向 . 301
11.1.2 變更的影響 302
11.1.3 三種部署模型 . 304
11.2 基于我們的架構(gòu)的考量 306
11.2.1 基礎(chǔ)設(shè)施的變更 . 307
11.2.2 微服務(wù)變更 311
11.2.3 數(shù)據(jù)的變更 316
11.3 小結(jié) 318
第12 章 旅程的終點(diǎn)(和新的起點(diǎn)) . 320
12.1 微服務(wù)的復(fù)雜性與簡(jiǎn)化 321
12.2 衡量微服務(wù)轉(zhuǎn)型的進(jìn)展 325
12.3 小結(jié) 328

本目錄推薦

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