微服務治理平臺產品化實踐與應用微服務化解析
2019年4月24日,由中國資訊通訊研究院主辦的首屆雲原生產業大會在北京成功舉辦。作為 容器雲端計算領軍企業、雲原生技術在國內落地和發展的積極推動者,時速雲資深架構師趙昕受邀參加了此次大會並發表主題演講。
趙昕演講的題目為《微服務治理平臺產品化與應用微服務化》。 隨著微服務被越來越多的企業所瞭解和認識,針對微服務治理平臺的需求和應用微服務化的需求也變得越來越強烈。 因此,目前各廠商面臨的問題是如何提供符合客戶需求的微服務治理平臺產品,以及如何協助客戶來進行應用微服務化的問題。
針對微服務治理平臺產品,目前在市場上有三種主要的形態:
-
適合虛擬或物理主機搭建的微服務治理平臺產品
-
容器化的微服務治理平臺產品
-
與PaaS平臺結合使用的微服務治理平臺產品。
以上各形態的微服務治理平臺,都有其優缺點。 適合傳統方式搭建的微服務治理平臺,其元件都需要單獨的虛擬機器或物理機部署,部署過程相對複雜。 此外,其元件若要實現高可用,要按照傳統方式採用多機熱備部署,佔用大量的主機資源。 而且在此種方式下,微服務治理平臺元件與應用的部署環境分離,加大了運維的工作量與運維難度。
以容器化方式部署的微服務治理平臺,其元件可以執行在具備 Docker 環境的虛擬機器或物理機上。 與容器 PaaS 平臺解耦,可以在不同廠家的平臺上部署。 但是其問題是微服務治理平臺作為一個應用,其訪問入口與 PaaS 入口割裂,不方便使用。
時速雲的微服務治理平臺是與時速雲的 PaaS 平臺結合成為一個整體交付給使用者。 首先,微服務治理平臺元件作為應用部署,能夠接受 PaaS 平臺統一排程管理。 同時,使用者的微服務應用程式碼能夠與時速雲 PaaS 平臺的 Devops 功能結合起來,透過流水線,自動的將開發程式碼專案構建成容器映象,並在 PaaS 平臺上部署起來。 同時 PaaS 平臺可以管理多個叢集,用以將測試環境與生產環境進行分離管理。
時速雲的微服務治理平臺,不是單一技術路線的產品,目前支援 spring cloud、service mesh、dubbo,可以為使用者提供豐富的選擇。 同時,針對分散式部署的微服務,時速雲的微服務治理平臺還提供分散式事務元件,來保證事務的一致性。 此外,為了滿足容器叢集內的應用與外部應用能夠進行互相呼叫,我們還專門定製了 CSB 雲服務匯流排,透過服務訂閱的形式,將叢集內外的應用 API 開放打通。
時速雲不僅僅提供治理平臺,還希望針對不同的使用者能更好與微服務開發結合起來,因此,平臺還提供了微服務開發的模板,使用者可以自行選擇java版本、依賴等來建立自己的程式碼模板,實現快速上手開發微服務。
當提供了相對完畢的微服務治理平臺之後,使用者所面臨的問題是如何將應用進行微服務化。 針對此問題,趙昕進行了六個方面的闡述:
-
應用微服務化的需求及現況
-
應用微服務化的優勢
-
應用微服務化的主要步驟
-
應用微服務化的方法
-
應用微服務化過程中的問題
-
諮詢服務
目前使用者的主要需求在於構建全新的微服務應用及現有的應用改造。 但現況是使用者的技術程度參差不齊,比如相當一部分使用者並沒有Docker使用的經驗,或者使用者有Docker 的使用經驗也有應用微服務化的需求,再有使用者已有應用微服務化的經驗,但形態比較簡單。 因此,時速雲認為應用的微服務化應用需要一套循序漸進的流程來實現: 熟悉Docker、Kubernetes->選取試點應用進行容器化->遷移應用至雲平臺->微服務改造
趙昕表示應用微服務化的價值在於,與傳統應用相比,微服務化的應用有諸多優點。
傳統單體應用主要 缺點 有:
-
複雜性逐漸變高
-
技術債務逐漸上升
-
部署速度逐漸變慢
-
阻礙技術創新
-
無法按需伸縮
相比直線,微服務應用的主要優點有:
-
模組獨立開發
-
模組獨立部署
-
獨立的可伸縮性
-
可重用性
因此,應用的微服務化必定會作為應用所演進的方向,為更多的使用者接受與使用。
當使用者面臨微服務改造的時候,必然會經歷微服務的拆分,趙昕認為主要有四種拆分方法:
基於業務邏輯拆分
將系統中的業務模組按照職責範圍識別出來,每個單獨的業務模組拆分為一個獨立的服務。
基於可擴充套件拆分
將系統中的業務模組按照穩定性排序,將已經成熟和改動不大的服務拆分為穩定服務,將經常變化和迭代的服務拆分為變動服務。
基於可靠性拆分
將系統中的業務模組按照優先順序排序,將可靠性要求高的核心服務和可靠性要求低的非核心服務拆分開來,然後重點保證核心服務的高可用。
基於效能拆分
基於效能拆分和基於可靠性拆分類似,將效能要求高或者效能壓力大的模組拆分出來,避免效能壓力大的服務影響其他服務。
但單純的提出拆分方法,並不能很好滿足使用者各類應用微服務拆分的需求,因此,趙昕指出,平臺提供商在提供治理平臺的同時,還需要提供相應的諮詢服務,結合微服務產品的實現,以及在專案落地過程中所遇到的問題,有針對性的提出微服務化的解決方案,這樣才能實現產品更好的落地,也能幫助客戶快速的實現應用的微服務化,達到平臺提供商與客戶在技術、經濟層面的雙贏。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31538300/viewspace-2642888/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 菜鳥 CPaaS 平臺微服務治理實踐微服務
- 微服務治理平臺的RPC方案實現微服務RPC
- 微服務低程式碼Serverless平臺(星鏈)的應用實踐微服務Server
- 快速實現現存系統微服務改造 博雲微服務治理產品新升級微服務
- 微服務系列 2:微服務化框架的模型和治理能力設計微服務框架模型
- 微服務概覽與治理微服務
- 宜信微服務任務排程平臺建設實踐微服務
- 微服務開發平臺 Spring Cloud Blade 部署實踐微服務SpringCloud
- SpringCloud微服務治理SpringGCCloud微服務
- 微服務治理與統計分析微服務
- 微服務化的道與術微服務
- 微服務應用新趨勢:Service Mesh、AIOps和中臺化微服務AI
- 用友雲服務治理平臺 助力企業微服務架構落地微服務架構
- Serverless 微服務實踐-移動應用包分發服務Server微服務
- Golang 微服務優化實戰Golang微服務優化
- 宜信微服務任務排程平臺建設實踐|分享實錄微服務
- 微服務17:微服務治理之異常驅逐微服務
- 構建安全可靠的微服務 | Nacos 在顏鋪 SaaS 平臺的應用實踐微服務
- 微服務的服務間通訊與服務治理微服務
- 微服務快取原理與最佳實踐微服務快取
- Kubernetes 微服務最佳實踐微服務
- Go微服務入門到容器化實踐,落地可觀測的微服務電商專案Go微服務
- 微服務治理之自適應降載微服務
- 全面容器化之後,來電科技如何實現微服務治理?微服務
- 微服務架構下的服務呼叫與鑑權——某保險公司微服務平臺實施案例分享微服務架構
- Docker+Kubernetes(k8s)微服務容器化實踐DockerK8S微服務
- 通過silky框架在.net平臺構建微服務應用框架微服務
- 微服務治理攻略 - 隔離微服務
- 虎牙“資料服務+自助”產品化實踐
- 業務資料治理體系化思考與實踐
- 微服務18:微服務治理之異地多活容災微服務
- 微服務5:服務註冊與發現(實踐篇)微服務
- Serverless 下的微服務實踐Server微服務
- go-kit 微服務實踐Go微服務
- 微服務架構最佳實踐微服務架構
- .NET微服務最佳實踐 eShopOnContainers微服務AI
- 『Microservices & Nameko』Python 微服務實踐ROSPython微服務
- 微服務系列實踐 .NET CORE微服務