| 【1】 單塊架構(gòu)面臨的挑戰(zhàn)與微服務(wù)架構(gòu)綜述  | 
| 單塊架構(gòu)的發(fā)展及面臨的挑戰(zhàn) | 
1.單塊架構(gòu)的發(fā)展歷程 
                        2.三層架構(gòu)的演變 
                        3.單塊架構(gòu)的優(yōu)勢 
                        4.單塊架構(gòu)面臨的挑戰(zhàn)  
- 維護成本
 
- 交付周期
 
- 新人培養(yǎng)周期
 
- 技術(shù)選型成本
 
                            【研討點】:組織中單塊架構(gòu)的使用、面臨的挑戰(zhàn) 
 
 | 
| 微服務(wù)架構(gòu)的誕生與本質(zhì)  | 
什么是微服務(wù)架構(gòu) 
                        微服務(wù)架構(gòu)與SOA 
                        微服務(wù)架構(gòu)技術(shù)成熟度模型 
                        微服務(wù)不是銀彈 | 
| 微服務(wù)架構(gòu)的特征 | 
- 服務(wù)作為組件 
                        - 圍繞業(yè)務(wù)組織團隊 
                        - 關(guān)注產(chǎn)品而非項目 
                        - 技術(shù)多樣性 
                        - 基礎(chǔ)設(shè)施自動化 | 
【研討點】:為什么微服務(wù)成為近兩年架構(gòu)的代名詞? 
                        【研討點】:微服務(wù)的優(yōu)勢與其面臨的挑戰(zhàn)? | 
【體驗與心得-A】  單塊架構(gòu)在互聯(lián)網(wǎng)時代的挑戰(zhàn) 
【體驗與心得-B】 擁抱變化與微服務(wù)架構(gòu) | 
 
【2】 微服務(wù)架構(gòu)原則與實踐 | 
| 微服務(wù)架構(gòu)原則 | 
1.圍繞業(yè)務(wù)構(gòu)建團隊 
- 康威定律
 
- 全功能團隊
 
                            2.去中心化 
                            3.自動化‘一切’ 
- 自動化測試
 
- 自動化部署
 
- 自動化基礎(chǔ)設(shè)施搭建
 
                            1.演進式架構(gòu) 
- 業(yè)務(wù)
 
- 技術(shù)
 
- 團隊
 
                            【研討點】:去中心化 
 
 | 
| 微服務(wù)架構(gòu)實踐 | 
1.開發(fā)實踐 
- 構(gòu)建獨立代碼庫
 
- 如何定義服務(wù)的結(jié)構(gòu)
 
- 如何撰寫服務(wù)說明文件
 
- 搭建本地運行環(huán)境
 
                            2.測試實踐 
- 理解測試金字塔
 
- 單元測試
 
- 集成測試
 
- 組件測試
 
- 契約測試
 
                            【研討點】:微服務(wù)架構(gòu)的測試策略 
                            3.部署與運維 
- 微服務(wù)的部署環(huán)境
 
- 微服務(wù)的部署方式
 
- 基礎(chǔ)設(shè)施自動化
 
                            4.持續(xù)集成與持續(xù)交付 
 
 | 
 
【3】 如何構(gòu)建第一個微服務(wù)(1.5小時)  | 
1.Demo需求分析 
                        2.Hello World API(Ruby/Spring  boot) 
                        3.Docker入門 
                        4.構(gòu)建Docker映像 
                        ?使用Docker-machine 
                        ?使用Docker-compose 
                        5.部署Docker映像 
                        6.持續(xù)交付流水線 
                        7.日志聚合、監(jiān)控與告警 
                        8.功能迭代 
                        【研討點】:使用Docker構(gòu)建以及部署映像 
                        【研討點】:微服務(wù)下的日志聚合、監(jiān)控與告警 | 
 
【4】 微服務(wù)案例解讀 | 
結(jié)合老師的過去實戰(zhàn)案例,分享使用微服務(wù)架構(gòu)解耦大型企業(yè)系統(tǒng)的經(jīng)驗。 
                        1.解耦實施策略   
                        2.解耦實施步驟 
                        3.微服務(wù)模板  
                        4.自動化部署系統(tǒng)   
案例一講述如何將客戶復(fù)雜的業(yè)務(wù)支撐系統(tǒng)逐漸演進為基于微服務(wù)架構(gòu)的過程和實踐。內(nèi)容包括: 
                        * 業(yè)務(wù)的拆分 
                        *  遺留系統(tǒng)改造的策略 
                        * 如何構(gòu)建微服務(wù)模板 
                        * 如何管理多服務(wù)的依賴
                        案例二講述如何將客戶復(fù)雜的系統(tǒng),逐漸遷移到公有云,并完成微服務(wù)的實施之路,內(nèi)容包括: 
                        * 業(yè)務(wù)拆分 
                        *  系統(tǒng)的演進 
                        * 公有云的遷移 
                        * DevOps與持續(xù)交付 
 | 
| 
 【5】 微服務(wù)相關(guān)話題深度討論 
 | 
1.消費者驅(qū)動的契約測試  
                        采用微服務(wù)架構(gòu)實踐的過程中,服務(wù)間的集成測試成了諸多企業(yè)微服務(wù)落地的痛點。本部分介紹了對于微服務(wù)間的測試,如何使用消費者驅(qū)動的PACT測試,完成對服務(wù)間的接口測試。 
2.微服務(wù)間的同步/異步通信機制 
3.微服務(wù)API設(shè)計最佳實踐 
                        采用微服務(wù)架構(gòu)實踐的過程中,API是服務(wù)之間或者服務(wù)和UI之間的重要接口。如何有效的設(shè)計API,如何管理API之間的版本變更,是在微服務(wù)實施過程中重要的一部分 
4.分布式數(shù)據(jù)管理 
                        采用微服務(wù)架構(gòu)實踐的過程中,分布式數(shù)據(jù)的管理成了諸多企業(yè)微服務(wù)落地的難點。本部分介紹對于分布式數(shù)據(jù)的管理,存在什么樣實踐和經(jīng)驗,主要包括: 
                        a)  分布式事務(wù)介紹 
                        b) 兩階段提交 
                        c) Event  Sourcing 
5.微服務(wù)開發(fā)模板 
6.微服務(wù)網(wǎng)關(guān) |