Go在微服務框架中有其獨特的優勢,至於優勢在哪,自行google。
1、GoKit框架
這是壹個工具包的集合,可以幫助攻城獅構建強大、可靠和可維護的微服務。提供了用於實現系統監控和彈性模式組件的庫,例如日誌、跟蹤、限流、熔斷等。
基於這個框架的應用程序架構由三個主要的部分組成:
傳輸層:用於網絡通信,服務通常使用HTTP或者gRPC等網絡傳輸協議,或者使用NATS等發布訂閱系統相互通信。
接口層:是服務器和客戶端的基本構建塊。每個對外提供的接口方法都會定義為壹個Endpoint,壹遍在服務器和客戶端之間進行網絡通信,每個端點使用傳輸層通過HTTP或gRPC等具體通信模式對外提供服務
服務成:具體的業務邏輯實現
2、GoMicro框架
這是壹個基於Go語言實現的插件化RPC微服務框架。提供了服務發現、負載均衡、同步傳輸、異步通信以及事件驅動等機制,嘗試簡化分布式系統之間的通信,讓開發者更專註於自身業務邏輯的開發。
GoMicro的設計哲學是可插拔的架構理念,提供了可快速構建系統的組件,並且可以根據自身的需求對GoMicro提供的默認實現進行定制。所有插件都可在倉庫github.com/micro/go-plugins 中找到。