課程簡介
微服務(wù)是目前最新的程序開發(fā)架構(gòu),本課程通過一個(gè)網(wǎng)站的例子介紹如何進(jìn)行微服務(wù)架構(gòu)設(shè)計(jì),以及微服務(wù)架構(gòu)中常用的構(gòu)架工具和管理工具
目標(biāo)收益
微服務(wù)介紹
如何建模微服務(wù)
微服務(wù)集成
分解單塊系統(tǒng)
如何部署微服務(wù)
如何測試微服務(wù)
如何監(jiān)控微服務(wù)
如何規(guī)模化微服務(wù)
微服務(wù)總結(jié)
培訓(xùn)對象
基本開發(fā)架構(gòu)常識(shí)
課程大綱
微服務(wù)介紹 |
? 什么是微服務(wù) ? 微服務(wù)的主要好處 ? 如何設(shè)計(jì)面向服務(wù)的架構(gòu) |
如何建模微服務(wù) |
? 什么樣的服務(wù)是好服務(wù) ? 微服務(wù)業(yè)務(wù)功能 |
微服務(wù)集成 |
? 尋找理想的集成技術(shù) ? 如何為用戶創(chuàng)建接口 ? 如何共享數(shù)據(jù)庫 ? 如何同步與異步 ? 如何編排與協(xié)同 ? 如何遠(yuǎn)程過程調(diào)用 ? 如何進(jìn)行技術(shù)的耦合 ? 與 REST 服務(wù)的整合問題 ? 如何實(shí)現(xiàn)基于事件的異步協(xié)作方式 ? 如何進(jìn)行服務(wù)即狀態(tài)機(jī)設(shè)計(jì) ? 如何響應(yīng)式擴(kuò)展 ? 如何進(jìn)行版本管理 ? 如何設(shè)計(jì)用戶界面 ? 如何與第三方軟件集成 |
分解單塊系統(tǒng) |
? 如何設(shè)計(jì)關(guān)鍵接縫 ? 分解單塊系統(tǒng)的原因 ? 如何解決雜亂的依賴 ? 如何進(jìn)行與數(shù)據(jù)庫 ? 如何重構(gòu)數(shù)據(jù)庫 ? 如何處理事務(wù)邊界 |
如何部署微服務(wù) |
? 持續(xù)集成簡介 ? 把持續(xù)集成映射到微服務(wù) ? 構(gòu)建流水線和持續(xù)交付 ? 平臺(tái)特定的構(gòu)建物 ? 操作系統(tǒng)構(gòu)建物 ? 定制化鏡像 ? 環(huán)境的安裝與調(diào)試 ? 如何進(jìn)行服務(wù)配置 ? 服務(wù)與主機(jī)之間的映射 ? 如何進(jìn)行自動(dòng)化部署 ? 如何從物理機(jī)到虛擬機(jī) |
微服務(wù)測試 |
? 測試類型 ? 測試范圍 ? 實(shí)現(xiàn)服務(wù)測試 ? 誰來寫這些測試 |
使用 Pact 進(jìn)行測試 |
? 消費(fèi)者測試介紹 ? 如何使用 Pact 進(jìn)行消費(fèi)者測試 ? 配置環(huán)境(基于.NET 的 PactNET) ? 編寫契約 ? 設(shè)置 pact 服務(wù) ? 掛載請求 API ? 通過 Pact 方法調(diào)用客戶端 ? 使用 Pact 掛載 JSON ? 比對 JSON 結(jié)果是否正確 ? 運(yùn)行成功測試與失敗測試 |
如何監(jiān)控 |
? 如何監(jiān)控單一服務(wù),單一服務(wù)器 ? 如何監(jiān)控單一服務(wù),多個(gè)服務(wù)器 ? 如何監(jiān)控多個(gè)服務(wù),多個(gè)服務(wù)器 ? 如何使用日志 ? 多個(gè)服務(wù)的指標(biāo)跟蹤 ? 服務(wù)指標(biāo) ? 綜合監(jiān)控 ? 關(guān)聯(lián)標(biāo)識(shí) ? 級(jí)聯(lián) ? 微服務(wù)的安全 ? 身份驗(yàn)證和授權(quán) ? 常見的單點(diǎn)登錄實(shí)現(xiàn) ? 單點(diǎn)登錄網(wǎng)關(guān) ? 細(xì)粒度的授權(quán) ? 服務(wù)間的身份驗(yàn)證和授權(quán) ? 靜態(tài)數(shù)據(jù)的安全 ? 使用微服務(wù)的實(shí)例 ? 松耦合組織和緊耦合組織 ? Windows Vista ? Netflix 和 Amazon |
如何規(guī)?;⒎?wù) |
? 功能降級(jí) ? 架構(gòu)性安全措施 ? 反脆弱的組織 ? 微服務(wù)設(shè)計(jì)擴(kuò)展 ? 微服務(wù)擴(kuò)展數(shù)據(jù)庫 ? 微服務(wù)緩存 ? 微服務(wù)中 CAP 定理的平衡 ? 自描述系統(tǒng) |
微服務(wù)總結(jié) |
? 微服務(wù)的原則 ? 圍繞業(yè)務(wù)概念建模 ? 接受自動(dòng)化文化 ? 隱藏內(nèi)部實(shí)現(xiàn)細(xì)節(jié) ? 讓一切都去中心化 ? 可獨(dú)立部署 ? 隔離失敗 ? 高度可觀察 ? 什么時(shí)候你不應(yīng)該使用微服務(wù) |
微服務(wù)介紹 ? 什么是微服務(wù) ? 微服務(wù)的主要好處 ? 如何設(shè)計(jì)面向服務(wù)的架構(gòu) |
如何建模微服務(wù) ? 什么樣的服務(wù)是好服務(wù) ? 微服務(wù)業(yè)務(wù)功能 |
微服務(wù)集成 ? 尋找理想的集成技術(shù) ? 如何為用戶創(chuàng)建接口 ? 如何共享數(shù)據(jù)庫 ? 如何同步與異步 ? 如何編排與協(xié)同 ? 如何遠(yuǎn)程過程調(diào)用 ? 如何進(jìn)行技術(shù)的耦合 ? 與 REST 服務(wù)的整合問題 ? 如何實(shí)現(xiàn)基于事件的異步協(xié)作方式 ? 如何進(jìn)行服務(wù)即狀態(tài)機(jī)設(shè)計(jì) ? 如何響應(yīng)式擴(kuò)展 ? 如何進(jìn)行版本管理 ? 如何設(shè)計(jì)用戶界面 ? 如何與第三方軟件集成 |
分解單塊系統(tǒng) ? 如何設(shè)計(jì)關(guān)鍵接縫 ? 分解單塊系統(tǒng)的原因 ? 如何解決雜亂的依賴 ? 如何進(jìn)行與數(shù)據(jù)庫 ? 如何重構(gòu)數(shù)據(jù)庫 ? 如何處理事務(wù)邊界 |
如何部署微服務(wù) ? 持續(xù)集成簡介 ? 把持續(xù)集成映射到微服務(wù) ? 構(gòu)建流水線和持續(xù)交付 ? 平臺(tái)特定的構(gòu)建物 ? 操作系統(tǒng)構(gòu)建物 ? 定制化鏡像 ? 環(huán)境的安裝與調(diào)試 ? 如何進(jìn)行服務(wù)配置 ? 服務(wù)與主機(jī)之間的映射 ? 如何進(jìn)行自動(dòng)化部署 ? 如何從物理機(jī)到虛擬機(jī) |
微服務(wù)測試 ? 測試類型 ? 測試范圍 ? 實(shí)現(xiàn)服務(wù)測試 ? 誰來寫這些測試 |
使用 Pact 進(jìn)行測試 ? 消費(fèi)者測試介紹 ? 如何使用 Pact 進(jìn)行消費(fèi)者測試 ? 配置環(huán)境(基于.NET 的 PactNET) ? 編寫契約 ? 設(shè)置 pact 服務(wù) ? 掛載請求 API ? 通過 Pact 方法調(diào)用客戶端 ? 使用 Pact 掛載 JSON ? 比對 JSON 結(jié)果是否正確 ? 運(yùn)行成功測試與失敗測試 |
如何監(jiān)控 ? 如何監(jiān)控單一服務(wù),單一服務(wù)器 ? 如何監(jiān)控單一服務(wù),多個(gè)服務(wù)器 ? 如何監(jiān)控多個(gè)服務(wù),多個(gè)服務(wù)器 ? 如何使用日志 ? 多個(gè)服務(wù)的指標(biāo)跟蹤 ? 服務(wù)指標(biāo) ? 綜合監(jiān)控 ? 關(guān)聯(lián)標(biāo)識(shí) ? 級(jí)聯(lián) ? 微服務(wù)的安全 ? 身份驗(yàn)證和授權(quán) ? 常見的單點(diǎn)登錄實(shí)現(xiàn) ? 單點(diǎn)登錄網(wǎng)關(guān) ? 細(xì)粒度的授權(quán) ? 服務(wù)間的身份驗(yàn)證和授權(quán) ? 靜態(tài)數(shù)據(jù)的安全 ? 使用微服務(wù)的實(shí)例 ? 松耦合組織和緊耦合組織 ? Windows Vista ? Netflix 和 Amazon |
如何規(guī)?;⒎?wù) ? 功能降級(jí) ? 架構(gòu)性安全措施 ? 反脆弱的組織 ? 微服務(wù)設(shè)計(jì)擴(kuò)展 ? 微服務(wù)擴(kuò)展數(shù)據(jù)庫 ? 微服務(wù)緩存 ? 微服務(wù)中 CAP 定理的平衡 ? 自描述系統(tǒng) |
微服務(wù)總結(jié) ? 微服務(wù)的原則 ? 圍繞業(yè)務(wù)概念建模 ? 接受自動(dòng)化文化 ? 隱藏內(nèi)部實(shí)現(xiàn)細(xì)節(jié) ? 讓一切都去中心化 ? 可獨(dú)立部署 ? 隔離失敗 ? 高度可觀察 ? 什么時(shí)候你不應(yīng)該使用微服務(wù) |