IOC-golangGo 語言依賴注入框架
IOC-golang 是一款強大的 Go 語言依賴注入框架,提供了一套完善的 IoC 容器。其能力如下:
-
支持任何結構、接口的依賴注入,具備完善的對象生命周期管理機制。
可以接管對象的創(chuàng)建、參數(shù)注入、工廠方法、參數(shù)來源等等,并擁有可擴展性。
-
基于 AOP 的思路,為由框架接管的對象提供默認的接口代理層,在面向接口編程的情景下,可以在 業(yè)務無侵入 的前提下,使用基于結構代理 AOP 層擴展的豐富運維能力。例如接口查詢,參數(shù)動態(tài)監(jiān)聽,方法粒度鏈路追蹤,性能瓶頸分析,分布式場景下全鏈路方法粒度追蹤等。
- 監(jiān)控
- 日志采集
- 鏈路追蹤
- 事務能力
-
我們提供了代碼生成工具,開發(fā)者可以通過注解的方式標注結構,從而便捷地生成結構注冊代碼、結構代理、結構專屬接口等。
-
支持被注入結構的擴展、自動裝載模型的擴展、調(diào)試 AOP 層的擴展。
-
提供覆蓋主流中間件的預制對象,方便直接注入使用。
項目結構
- aop: 結構代理 AOP 模塊:提供 AOP 層的基礎能力,和可擴展API。
- autowire: 提供依賴注入內(nèi)核,以及單例模型、多例模型兩種基本自動裝載模型
- config: 配置加載模塊,負責解析框架配置文件。
- extension: 組件擴展:提供基于多個領域模型的的預置實現(xiàn)結構,比如緩存、數(shù)據(jù)庫、消息。
- example: 示例
- iocli: 代碼生成/程序調(diào)試 工具
評論
圖片
表情
