[發明專利]一種用于現代分布式微服務架構的通信方法與系統有效
| 申請號: | 202010021616.2 | 申請日: | 2020-01-09 |
| 公開(公告)號: | CN111245925B | 公開(公告)日: | 2021-08-24 |
| 發明(設計)人: | 高廣宇;劉馳;李金堯;方力 | 申請(專利權)人: | 北京理工大學 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 西安智大知識產權代理事務所 61215 | 代理人: | 段俊濤 |
| 地址: | 100081 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 現代 分布 式微 服務 架構 通信 方法 系統 | ||
一種用于現代分布式微服務架構的通信方法與系統,在每一個微服務節點上運行數據代理,并利用控制中心控制整個微服務網絡的行為,每個微服務的所有消息收發都由數據代理完成,微服務代碼只與數據代理溝通,將數據放入數據代理中與OSI模型的應用層之間進行傳輸,數據代理負責完成其余所有操作,本發明將微服務之間的通信抽離出來,形成獨立的系統,開發者在以微服務的形式編寫業務邏輯的時候,只需聲明需要訪問的服務名稱,提供對應的數據即可,極大簡化了開發流程,減少了程序的外部依賴和代碼數量,提高了開發效率。同時獨立的數據傳輸系統能夠提供更清晰的調試信息,對數據傳輸系統的改動不會影響現有的業務邏輯代碼,提高了整個系統的魯棒性。
技術領域
本發明屬于通信技術領域,涉及大型數據中心的微服務治理,特別涉及一種用于現代分布式微服務架構的通信方法與系統。
背景技術
在現代互聯網應用中,絕大多數業務解決方案都是將業務流程拆分為多個細分步驟,每個步驟只負責完成一個任務。然后在系統設計上將每個任務設計為一個微小的服務,稱為微服務。一個完整的業務服務通常由多個微服務組成,這樣的設計不僅降低了系統的耦合度,同時也提高了代碼的復用效率。
與此同時,如果一個完整的業務由多個微服務組成,那么當用戶請求業務時,多個微服務之間需要通過協作來共同完成該業務需求。微服務之間的協作必須通過某種特定的相互通信的方式來實現。目前來說,大部分的微服務之間的通信方法都是使用為互聯網設計的HTTP協議或者RPC協議。
事實上,為了提高業務吞吐量和容災,微服務一般都有多個實例,且運行在不同的物理服務器上,同時微服務之間也可能存在跨數據中心調用的情況?,F有的微服務設計都依賴于一個帶有負載均衡的調用框架,然后在該框架上實現負載均衡。由于缺乏統一的實踐標準,這樣的實現都依賴負載均衡框架進行多語言開發,以適配不同語言開發的微服務。由于大型公司都有自己的基礎設施,缺乏統一的標準建議,這一類通信方法無法做到通用。同時為了保證高并發的處理能力,還會涉及集群調度,節點動態伸縮,如果不小心設計,極有可能出現服務“雪崩”的情況。
除此之外,在復雜業務中,涉及到的微服務非常多,微服務之間的調用鏈條也會十分冗長,微服務之間的相互依賴關系難以梳理清楚。上述問題,很容易導致微服務的開發者自身很難確定自己的服務會被誰調用,無法確定微服務的上下游,進而導致難以進行優化,追蹤,調試。
不同的微服務之間還需要界定訪問權限,以防止意外的信息泄漏和數據污染,隨著微服務調用鏈的增長,訪問權限控制的復雜度也隨之上升,從而加大了整體服務的響應時間和運算開銷。目前微服務的權限控制實現主要有兩個方向,一個是在容器化的調用場景下使用容器編排框架的訪問權限控制實現;一個是在微服務內部使用黑/白名單方式實現。前者是一個較好的解決方案,但沒有和通信框架結合,后者實現代價較大,且不具備擴展性。
綜上,傳統的微服務存在一下幾個問題:
(1)高并發下設計復雜,實現困難。
(2)微服務之間權限控制缺乏統一標準,實現效率低下。
(3)流量控制、負載均衡均需要單獨的設計。
(4)缺乏請求追蹤標準,難以追蹤微服務調用鏈,導致業務難以調試。
(5)缺乏統一的度量方案,導致難以實現通用的監控報警設施。
就目前來說,微服務之間多使用RPC通信,通信的數據序列化方法多采用ProtoBuf,雖然有著相似的工業實現,但是缺乏統一的標準。
綜上,設計一個通用的微服務通信協議,提供統一的、可控的標準,能夠在分布式環境下優雅地解決以上問題是分布式微服務的必然發展方向。
發明內容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京理工大學,未經北京理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010021616.2/2.html,轉載請聲明來源鉆瓜專利網。





