您好,登錄后才能下訂單哦!
1.搭建微服務架構的基礎
服務化框架和平臺的選擇
2.微服務公共關注點
1)配置管理:對微服務應用的一些可變參數進行配置,這些參數(1)可能是啟動期一次性配置的(例如:數據庫連接字符串),(2)也可能是運行期動態配置的(例如:調整緩存過期時間,或者是業務方面的促銷限購的數量)
2)服務發現和LB(負載均衡):
服務發現:服務分布在不同的節點上,服務之間要互相調用,首先要定位,找到對方,微服務架構的一個基本問題
負載均衡:服務一般以多實例的方式部署,調用方需要以某種負載均衡策略,去訪問目標服務實現
3)彈性和容錯:分布式微服務通過網絡互連,網絡有可能會不穩定,服務實例可能會產生延遲,出錯,甚至宕機,因此微服務系統必須具備彈性和容錯的能力,才能保障服務質量和用戶體驗。
4)API管理:微服務系統,對外暴露API,一般通過API網關進行管理,網關是微服務的一個大門,需要支持反向路由,安全鑒定,日志監控,和限流容錯等基本功能。高級的網關要支持A/B測試,藍綠和灰度測試等高級功能。
5)服務安全:用戶訪問微服務首先需要認證,對某些敏感的服務進行操作還需要鑒權,服務之間調用也需要一定的權限管控。
6)日志監控:服務訪問日志,需要進行集中的采集,存儲和分析,方便后續進一步分析服務的性能甚至是用戶的行為。
7)Metrics監控:對微服務的調用,需要進行Metrics埋點監控。Metrics監控既可以對服務的性能(包括調用量,延遲,錯誤數等)進行監控,也可以對一些重要的業務指標(例如:登陸數,下單數)進行監控。
8)調用鏈監控:分布式微服務之間的依賴關系錯綜復雜,通過調用鏈監控能夠實時掌握服務之間的依賴關系和服務之間調用的性能。出現問題的時候,通過分析調用鏈能夠及時排障。
9)調度和發布:微服務最終是需要發布到生成環境當中的,目前推薦的微服務交互手段主要是容器云環境。容器云需要支持自動的容器資源調度和發布,高級的話需要支持滾動、藍綠等發布機制。
10)自愈和自動伸縮:
自愈:云環境當中這個節點實例有可能宕機或者漂移,網絡可能會最忌不穩定,微服務平臺需要自動偵測能力,能夠自動恢復。
自動伸縮:用戶流量可能會突發,驟增。微服務平臺理想上講,需要根據用戶的流量變化自動的伸縮(auto-scaling)
這樣做可節省硬件資源,同時又不影響用戶體驗。
3.三者全面橫向對比分析
4.三者優缺點
5.使用建議
1)微服務關注點,根據企業上下文綜合考量
2)盡量不要混搭使用,保持體系一致性
3)個人傾向K8s+SpringBoot
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。