包郵 PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理
-
>
全國(guó)計(jì)算機(jī)等級(jí)考試最新真考題庫(kù)模擬考場(chǎng)及詳解·二級(jí)MSOffice高級(jí)應(yīng)用
-
>
決戰(zhàn)行測(cè)5000題(言語(yǔ)理解與表達(dá))
-
>
軟件性能測(cè)試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
JAVA持續(xù)交付
-
>
EXCEL最強(qiáng)教科書(完全版)(全彩印刷)
-
>
深度學(xué)習(xí)
PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理 版權(quán)信息
- ISBN:9787111742876
- 條形碼:9787111742876 ; 978-7-111-74287-6
- 裝幀:平裝-膠訂
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:>
PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理 本書特色
開(kāi)發(fā)規(guī)模和復(fù)雜性不斷增長(zhǎng)的大型系統(tǒng)需要深刻理解軟件項(xiàng)目的實(shí)施過(guò)程。軟件開(kāi)發(fā)人員、架構(gòu)師和技術(shù)管理團(tuán)隊(duì)遵循高級(jí)軟件設(shè)計(jì)模式(如微服務(wù)架構(gòu)、事件驅(qū)動(dòng)架構(gòu),以及領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)規(guī)定的策略模式),可以簡(jiǎn)化開(kāi)發(fā)過(guò)程。 本書涵蓋了這些成熟的架構(gòu)設(shè)計(jì)模式,并以前瞻性的方法幫助Python開(kāi)發(fā)人員管理復(fù)雜應(yīng)用程序的開(kāi)發(fā),令其從Python測(cè)試套件中獲取*大價(jià)值。 本書從系統(tǒng)設(shè)計(jì)的起始階段開(kāi)始,讓你了解軟件開(kāi)發(fā)的思路和項(xiàng)目中要考慮的重點(diǎn)問(wèn)題。書中闡述了各種架構(gòu)模式,如微服務(wù)、Web服務(wù)和事件驅(qū)動(dòng)架構(gòu),以及如何選擇*適合你的項(xiàng)目的模式。然后,在建立相關(guān)概念的基礎(chǔ)上,討論如何進(jìn)行開(kāi)發(fā)、調(diào)試和測(cè)試,以編寫高質(zhì)量的代碼,并為系統(tǒng)部署做好準(zhǔn)備。此外,本書還講解了當(dāng)系統(tǒng)部署到*終用戶之后如何實(shí)現(xiàn)持續(xù)運(yùn)維,因?yàn)檐浖_(kāi)發(fā)的生命周期永無(wú)止境。 學(xué)完本書,你將形成“架構(gòu)思維”:一種不一樣的軟件設(shè)計(jì)方法,包括對(duì)運(yùn)行中的系統(tǒng)進(jìn)行調(diào)整。 通過(guò)學(xué)習(xí)本書,你將可以: ? 像架構(gòu)師一樣思考,分析軟件架構(gòu)模式。 ? 探索API設(shè)計(jì)、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)呈現(xiàn)方法。 ? 探究常見(jiàn)架構(gòu)模式的細(xì)微差別。 ? 利用微服務(wù)等架構(gòu)模式的組件并實(shí)現(xiàn)其互操作。 ? 采用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)模式執(zhí)行高質(zhì)量的代碼測(cè)試。 ? 將大塊可重用的代碼構(gòu)建為軟件包。 ? 保持系統(tǒng)向后兼容性并部署其迭代變更。
PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理 內(nèi)容簡(jiǎn)介
本書講解軟件架構(gòu)系統(tǒng)各方面的內(nèi)容,從頂層設(shè)計(jì)到用于支持高層功能的低層細(xì)節(jié)。本書首先介紹軟件架構(gòu)的含義并給出簡(jiǎn)單的設(shè)計(jì)示例,之后分為四個(gè)部分涵蓋軟件開(kāi)發(fā)生命周期中的各個(gè)階段:討論構(gòu)成系統(tǒng)的每個(gè)組成單元的一般性原則及其核心內(nèi)容;重點(diǎn)介紹一些成功的架構(gòu)模式,包括它們的優(yōu)勢(shì)和局限性;闡述如何進(jìn)行軟件測(cè)試以及如何構(gòu)建和共享代碼;講解持續(xù)運(yùn)維,涵蓋日志、系統(tǒng)度量、性能分析、代碼調(diào)試和架構(gòu)調(diào)整等內(nèi)容。本書將幫你形成架構(gòu)思維,了解軟件開(kāi)發(fā)的思路和項(xiàng)目中要考慮的重點(diǎn)問(wèn)題。
PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理 目錄
譯者序
前言
關(guān)于作者
關(guān)于審校者
第1章 軟件架構(gòu)簡(jiǎn)介 1
1.1 設(shè)計(jì)軟件系統(tǒng)的架構(gòu) 1
1.2 劃分為較小的單元 3
1.3 康威定律:對(duì)軟件架構(gòu)的影響 5
1.4 應(yīng)用示例:概述 6
1.5 軟件架構(gòu)安全 8
1.6 小結(jié) 9
**部分 設(shè)計(jì)
第2章 API設(shè)計(jì) 13
2.1 抽象 14
2.1.1 使用合適的抽象 15
2.1.2 抽象失效 16
2.1.3 資源與操作抽象 17
2.2 RESTful接口 18
2.2.1 實(shí)用性定義 19
2.2.2 HTTP頭部及狀態(tài) 21
2.2.3 資源設(shè)計(jì) 24
2.2.4 資源與參數(shù) 25
2.2.5 分頁(yè) 26
2.2.6 RESTful API流程設(shè)計(jì) 27
2.2.7 使用Open API規(guī)范 29
2.3 認(rèn)證 32
2.3.1 HTML接口認(rèn)證 33
2.3.2 RESTful接口認(rèn)證 34
2.4 API版本管理 38
2.4.1 為何需要版本管理 38
2.4.2 內(nèi)部版本與外部版本 38
2.4.3 語(yǔ)義化版本管理 39
2.4.4 簡(jiǎn)單的版本管理 40
2.5 前端與后端 41
2.6 HTML接口 43
2.6.1 傳統(tǒng)HTML接口 43
2.6.2 動(dòng)態(tài)頁(yè)面 44
2.6.3 單頁(yè)應(yīng)用程序 45
2.6.4 混合模式 46
2.7 API設(shè)計(jì)示例 47
2.7.1 端點(diǎn) 48
2.7.2 設(shè)計(jì)及實(shí)現(xiàn)審查 55
2.8 小結(jié) 55
第3章 數(shù)據(jù)建模 56
3.1 數(shù)據(jù)庫(kù)的類型 56
3.1.1 關(guān)系數(shù)據(jù)庫(kù) 57
3.1.2 非關(guān)系數(shù)據(jù)庫(kù) 59
3.1.3 小型數(shù)據(jù)庫(kù) 62
3.2 數(shù)據(jù)庫(kù)事務(wù) 63
3.3 分布式關(guān)系數(shù)據(jù)庫(kù) 65
3.3.1 主庫(kù)/副本 65
3.3.2 分片 67
3.3.3 分片的優(yōu)勢(shì)和劣勢(shì) 71
3.4 數(shù)據(jù)庫(kù)模式設(shè)計(jì) 72
3.4.1 模式規(guī)范化 75
3.4.2 去規(guī)范化 77
3.5 數(shù)據(jù)索引 78
3.6 小結(jié) 81
第4章 數(shù)據(jù)層 82
4.1 模型層 82
4.1.1 DDD 83
4.1.2 使用ORM 84
4.1.3 工作單元模式及數(shù)據(jù)封裝 90
4.1.4 CQRS使用不同的讀寫
模型 93
4.2 數(shù)據(jù)庫(kù)遷移 96
4.2.1 向后兼容性 96
4.2.2 關(guān)系數(shù)據(jù)庫(kù)遷移 97
4.2.3 非關(guān)系數(shù)據(jù)庫(kù)遷移 101
4.3 處理遺留數(shù)據(jù)庫(kù) 102
4.3.1 檢測(cè)數(shù)據(jù)庫(kù)模式 103
4.3.2 同步現(xiàn)有模式至ORM 104
4.4 小結(jié) 105
第二部分 架構(gòu)模式
第5章 十二要素App方法論 109
5.1 十二要素App簡(jiǎn)介 109
5.2 CI 110
5.3 可擴(kuò)展性 111
5.4 配置 113
5.5 十二要素 115
5.5.1 一次構(gòu)建,多次運(yùn)行 115
5.5.2 依賴項(xiàng)和配置 117
5.5.3 可擴(kuò)展性 120
5.5.4 監(jiān)控和管理 122
5.6 容器化的十二要素App 125
5.7 小結(jié) 126
第6章 Web服務(wù)器架構(gòu) 127
6.1 請(qǐng)求–響應(yīng)架構(gòu) 127
6.2 Web架構(gòu) 129
6.3 Web服務(wù)器 130
6.3.1 由外部提供靜態(tài)內(nèi)容 131
6.3.2 反向代理 133
6.3.3 日志 135
6.3.4 高級(jí)用法 136
6.4 uWSGI 136
6.4.1 WSGI應(yīng)用程序 137
6.4.2 與Web服務(wù)器交互 138
6.4.3 進(jìn)程 139
6.4.4 進(jìn)程生命周期 140
6.5 Python Worker 143
6.5.1 Django MVT架構(gòu) 143
6.5.2 將請(qǐng)求路由到視圖 144
6.5.3 視圖 146
6.5.4 中間件 150
6.5.5 Django REST框架 152
6.6 外部層 158
6.7 小結(jié) 158
第7章 事件驅(qū)動(dòng)架構(gòu) 160
7.1 發(fā)送事件 160
7.2 異步任務(wù) 161
7.3 任務(wù)細(xì)分 164
7.4 計(jì)劃任務(wù) 165
7.5 隊(duì)列機(jī)制 166
7.5.1 統(tǒng)一Worker代碼 169
7.5.2 云隊(duì)列和Worker 169
7.6 Celery 171
7.6.1 配置Celery 172
7.6.2 Celery Worker 172
7.6.3 觸發(fā)任務(wù) 175
7.6.4 聯(lián)調(diào) 175
7.6.5 計(jì)劃任務(wù) 178
7.6.6 Celery Flower 182
7.6.7 Flower的HTTP API 184
7.7 小結(jié) 185
第8章 高級(jí)事件驅(qū)動(dòng)架構(gòu) 187
8.1 流式事件 187
8.2 管道 190
8.2.1 準(zhǔn)備 191
8.2.2 基礎(chǔ)任務(wù) 192
8.2.3 圖像任務(wù) 193
8.2.4 視頻任務(wù) 195
8.2.5 連接任務(wù) 196
8.2.6 運(yùn)行任務(wù) 198
8.3 定義總線 200
8.4 更復(fù)雜的系統(tǒng) 201
8.5 測(cè)試事件驅(qū)動(dòng)系統(tǒng) 204
8.6 小結(jié) 205
第9章 微服務(wù)與單體 207
9.1 單體架構(gòu) 207
9.2 微服務(wù)架構(gòu) 208
9.3 架構(gòu)選擇 209
9.4 關(guān)鍵因素:團(tuán)隊(duì)溝通 213
9.5 從單體遷移到微服務(wù) 216
9.5.1 遷移面臨的挑戰(zhàn) 216
9.5.2 四步遷移 218
9.6 服務(wù)容器化 224
9.6.1 構(gòu)建并運(yùn)行鏡像 226
9.6.2 構(gòu)建并運(yùn)行Web服務(wù) 228
9.7 容器編排與Kubernetes 236
9.8 小結(jié) 237
第三部分 實(shí)現(xiàn)
第10章 測(cè)試與TDD 241
10.1 代碼測(cè)試 2
PYTHON架構(gòu)模式:精通基于PYTHON的API設(shè)計(jì)、事件驅(qū)動(dòng)架構(gòu)和包管理 作者簡(jiǎn)介
詹姆·布爾塔(Jaime Buelta)是擁有20多年經(jīng)驗(yàn)的杰出程序員,其中10余年全職從事Python開(kāi)發(fā)。在此期間,他接觸了很多不同的技術(shù),幫助航空航天、工業(yè)系統(tǒng)、在線視頻游戲服務(wù)、金融服務(wù)和教育工具等多個(gè)行業(yè)領(lǐng)域的客戶達(dá)成目標(biāo)。自2018年以來(lái),Jaime一直在撰寫技術(shù)書籍,總結(jié)職業(yè)生涯中的經(jīng)驗(yàn)教訓(xùn),除本書外,他還著有Python Automation Cookbook和Hands On Docker for Microservices in Python。Jaime目前居住在愛(ài)爾蘭都柏林。
一本書的出版非一人之功。這離不開(kāi)直接參與完善、改進(jìn)文稿的人員的辛苦付出,還有與Python基金會(huì)及其技術(shù)社區(qū)那些出色的技術(shù)人員進(jìn)行的大量溝通和交流,這些溝通和交流形成了書中的觀點(diǎn)。當(dāng)然,如果沒(méi)有我了不起的妻子Dana付出的愛(ài)和支持,本書也不可能完成。
- >
龍榆生:詞曲概論/大家小書
- >
二體千字文
- >
隨園食單
- >
伊索寓言-世界文學(xué)名著典藏-全譯本
- >
朝聞道
- >
推拿
- >
月亮虎
- >
大紅狗在馬戲團(tuán)-大紅狗克里弗-助人