天天看點

微服務标準化三要素

一、接口标準化

接口标準化在微服務架構設計過程中發揮着重要的作用。在微服務的互動中,統一規範的接口标準可以大大減少溝通成本,提高開發和維護效率。很多公司主流協定為HTTP協定和Protobuf/Thrift協定,HTTP協定開發、測試比較友善,而Protobuf/Thrift等二進制協定性能更好些。

一般來說,和端互動比較多的業務服務使用HTTP協定較多,對性能有一定要求的背景基礎服務偏向使用二進制協定。以Thrift協定來說,Thrift協定本身有自己的一套IDL,通過IDL生成标準服務代碼,包含資料通路和類型定義,相對規範;為了保持微服務接口層面的一緻性,實作微服務接口标準化,HTTP協定可以參考Thrift協定的思路,增加IDL描述支援。

HTTP服務的IDL化可以規範标準、降低人為操作的出錯率、降低下遊服務接入成本和維護成本。下遊服務不需要再維護代碼,隻需要維護配置,這點對于尚未使用統一的服務治理架構的團隊來說特别有益。下遊服務的更新修改收斂于單純的IDL檔案,版本更好管理。

我們可以基于接口标準化,為接口增加相應的描述資訊,并通過代碼自動生成機制,将IDL檔案直接生成接口文檔,實作接口文檔标準化。為了減少業務對服務治理支援的開銷,可以把服務治理相關的配置放到IDL檔案,實作服務治理配置的代碼化。是以,IDL檔案成為服務标準化中非常重要的一個載體,通過IDL檔案可以實作接口标準化、文檔标準化和服務治理标準化。

二、日志标準化
三、透傳通道标準化

繼續閱讀