慕課網_《微服務架構在二手交易平臺(轉轉)中的實踐》學習總結

時間:2017年07月06日星期四
說明:本文部份內容均來自慕課網。@慕課網:http://www.imooc.com
教學示例源碼:無
學習學習源碼:無架構

第一章:微服務架構在二手交易平臺(轉轉)中的實踐

1-1 微服務架構特色

分享要點-微服務架構運維

特色
使用緣由
演進
通訊協議、服務註冊與發現
柔性可用實踐
服務治理

什麼是微服務微服務

微服務是一系列小服務的組合
微服務能夠單獨運行,獨立的進程
微服務整個構建要結合業務能力,圍繞業務模型構建
微服務能夠進行獨立部署
微服務架構是一個去中心化的管理

特色-微服務架構性能

微服務粒度
獨立進程
圍繞業務建模
輕量級通訊
去中心化管理

1-2 二手交易平臺的特色和使用微服務架構的緣由

使用緣由-轉轉是什麼學習

二手交易平臺

使用緣由-二手交易平臺功能spa

發佈商品
分類搜索
關鍵詞搜索
推薦商品
消息中心:私信、留言
我的中心等等

使用緣由設計

業務功能多
業務複雜性高
業務高速發展
用戶體驗好

微服務架構特色&二手交易平臺特色code

系統高可用
系統高擴展性
快速迭代
持續交付

1-3 微服務架構在轉轉的演進

演進-如何設計進程

總體設計
    --水平分層
    --垂直業務拆分
每層設計
    --微服務-業務單元垂直拆分
    --無狀態化
    --獨立進程、部署、運維
高可用
    --冗餘
    --自動恢復

示意圖ip

clipboard.png

整體架構示意圖

clipboard.png

演進-存在問題-二手交易特色

業務發展快
業務愈來愈複雜
研發人員增多
開發瓶頸集中:微服務聚合層

演進-存在問題-微服務聚合層

進一個Process
多人開發衝突
業務耦合性高
性能瓶頸
擴展性差

示意圖

clipboard.png

演進

單微服務聚合層 => 多微服務聚合層
業務邏輯拆分 => 業務物理拆分

演進示意圖:單微服務聚合層 => 多微服務聚合層

clipboard.png

演進-多微服務聚合層優勢

獨立
    進程、開發、部署、運維
高效
    快速迭代、持續交付

1-4 通信協議和服務的註冊與發現

通訊協議-輕量級通訊協議

clipboard.png

通訊協議選擇

clipboard.png

微服務註冊與發現示意圖

clipboard.png

clipboard.png

clipboard.png

1-5 柔性可用與服務治理

柔性可用實踐-爲何須要

當流量高峯期、短時請求量大時
服務能力有限
性能降低
服務宕機
系統雪崩

柔性設計如何作

目標:保證核心服務可用;非核心服務弱可用,甚至不可用
策略:系統降級、數據層降級、柔性可用策略生效

系統降級

拒絕部分請求
關閉部分服務(業務緊密)

拒絕部分請求示意圖

clipboard.png

數據層降級示意圖

clipboard.png

服務治理

爲何須要監控
進程狀態
及時發現問題
主動權

監控什麼

機器資源
進程狀態

服務治理-監控手段

clipboard.png

clipboard.png

相關文章
相關標籤/搜索