Documentation
¶
Overview ¶
Package infra 提供基础设施(MongoDB / Redis)的统一初始化入口。 消费服务在启动阶段调用 Init 一次性初始化并持有,或通过 wire 装配 InfraSet 注入。
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var InfraSet = wire.NewSet(NewInfra, db.MongoSet, extendredis.NewClient)
InfraSet wire provider 集合:复用 db.MongoSet(MongoDB)与 extend/redis.NewClient(Redis)。
Functions ¶
This section is empty.
Types ¶
type Infra ¶
type Infra struct {
MongoClient *mongo.Client
MongoDB *mongo.Database
Redis goredis.UniversalClient
}
Infra 统一持有已初始化的基础设施;未启用/未配置的组件为 nil。
func Init ¶
Init 读取 gobase 配置,初始化已启用的组件:
- MongoDB:配置存在 database.mongodb.uri 时连接(复用 db.NewClient/NewDatabase);
- Redis:redis.enable=true 时连接(复用 extend/redis.NewClient,自动识别 standalone/sentinel/cluster)。
未启用/未配置的组件保持 nil,不建立默认地址连接。调用前需先加载配置(config.LoadConfig / gobasecfg.Init)。
Click to show internal directories.
Click to hide internal directories.