32 lines
936 B
Go
32 lines
936 B
Go
package impl
|
||
|
||
import (
|
||
"bsm/full/module/base/sender/internal/config"
|
||
"git.apinb.com/bsm-sdk/core/cache/redis"
|
||
"git.apinb.com/bsm-sdk/core/with"
|
||
cache "github.com/patrickmn/go-cache"
|
||
clientv3 "go.etcd.io/etcd/client/v3"
|
||
"gorm.io/gorm"
|
||
)
|
||
|
||
var (
|
||
RedisService *redis.RedisClient // Redis 缓存服务客户端
|
||
EtcdService *clientv3.Client // Etcd 客户端
|
||
DBService *gorm.DB // 数据库服务
|
||
MemorySerice *cache.Cache // 内存缓存服务(BigCache)
|
||
)
|
||
|
||
// NewImpl 初始化所有依赖服务(内存、Redis、数据库、Etcd)
|
||
func NewImpl() {
|
||
// 初始化内存缓存服务
|
||
MemorySerice = with.Memory(nil)
|
||
// 初始化 Redis 缓存服务
|
||
RedisService = with.RedisCache(config.Spec.Cache)
|
||
// 初始化数据库服务
|
||
DBService = with.Databases(config.Spec.Databases, nil)
|
||
// 初始化 Etcd 客户端
|
||
EtcdService = with.Etcd(config.Spec.Etcd)
|
||
// 初始化服务提供商
|
||
withProvider()
|
||
}
|