Jupiter是一款免費開源的微服務治理框架,我們的用戶可以使用這款軟件來實現Go微服務框架的標準化。當然,這款軟件還擁有豐富的后臺功能,我們可以通過這款功能來進行各個模塊的監測和管理。
gRPC:基于官方 gRPC 開發,集成流控和多數據中心方式的服務注冊,支持多種 roundrobin,p2c 等負載均衡策略;
配置:使用 toml、yaml 方式管理配置,規范化核心配置,結合遠程配置中心,實現配置版本管理和更新,查看配置依賴關系;
日志:基于 zap 日志類庫,實現高性能日志庫,并對不同環境和條件,實現日志庫的自動降級,并對服務端,客戶端的慢日志通過配置條件,實現全部慢日志接入;
監控:基于 prometheus go sdk 類庫,實現對服務端,客戶端的數據監控,并與 prometheus、cond、etcd 數據打通,實現應用自動化數據采集;
數據庫:基于 gorm 的封裝,將數據庫的 trace,慢日志,監控進行了采集;
緩存:基于 go-redis 的封裝,將數據庫的 trace,慢日志,監控進行了采集,并實現了單個 redis、多從庫 redis,客戶端 redis 分片,服務端 redis 分片的 api;
系統錯誤碼:區分框架和業務的錯誤碼,將框架錯誤碼文檔自動生成,自動化的錯誤碼 SRE 分析工具;
工程化:基于服務標準、創建、開發、運行、治理等生命周期,完成了Jupiter對項目的工程化;
服務治理:基于監控,etcd,配置中心,對服務實現了良好的可觀測性,可控制性;