refactor: reorganize modules and add Linux build tooling
This commit is contained in:
47
module/base/cms/internal/impl/impl.go
Normal file
47
module/base/cms/internal/impl/impl.go
Normal file
@@ -0,0 +1,47 @@
|
||||
// Package impl 提供CMS服务的实现层
|
||||
// 负责初始化和管理各种外部服务的连接,包括数据库、缓存、etcd等
|
||||
package impl
|
||||
|
||||
import (
|
||||
"bsm/full/module/base/cms/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缓存服务客户端
|
||||
// 用于存储临时数据和缓存热点数据
|
||||
RedisService *redis.RedisClient
|
||||
|
||||
// EtcdService Etcd客户端
|
||||
// 用于服务发现和配置管理
|
||||
EtcdService *clientv3.Client
|
||||
|
||||
// DBService 数据库服务连接
|
||||
// 用于数据持久化存储
|
||||
DBService *gorm.DB
|
||||
|
||||
// MemoryService 内存缓存服务
|
||||
// 用于存储频繁访问的数据,提供最快的访问速度
|
||||
MemoryService *cache.Cache
|
||||
)
|
||||
|
||||
// NewImpl 初始化实现层
|
||||
// 建立与各种外部服务的连接,包括内存缓存、Redis、数据库和Etcd
|
||||
// 这些连接将在整个服务生命周期中使用
|
||||
func NewImpl() {
|
||||
// 初始化内存缓存服务,用于存储热点数据
|
||||
MemoryService = with.Memory(nil)
|
||||
|
||||
// 初始化Redis缓存服务,用于分布式缓存
|
||||
RedisService = with.RedisCache(config.Spec.Cache)
|
||||
|
||||
// 初始化数据库连接,用于数据持久化
|
||||
DBService = with.Databases(config.Spec.Databases, nil)
|
||||
|
||||
// 初始化Etcd客户端,用于服务发现和配置管理
|
||||
EtcdService = with.Etcd(config.Spec.Etcd)
|
||||
}
|
||||
Reference in New Issue
Block a user