更新
This commit is contained in:
@@ -52,6 +52,18 @@ var defaultConfigs = []model.SystemConfig{
|
||||
{Key: "max_file_size_mb", Value: "10", Label: "单文件大小上限(MB)", Description: "上传图片的最大大小限制", Category: "storage", Placeholder: "10", Sort: 2},
|
||||
}
|
||||
|
||||
// WarmUpCache 从数据库全量加载配置到内存缓存(单次快速查询)
|
||||
func (s *ConfigService) WarmUpCache() {
|
||||
var list []model.SystemConfig
|
||||
if err := s.db.Find(&list).Error; err == nil {
|
||||
s.mu.Lock()
|
||||
for _, item := range list {
|
||||
s.cache[item.Key] = item.Value
|
||||
}
|
||||
s.mu.Unlock()
|
||||
}
|
||||
}
|
||||
|
||||
// InitDefaults 初始化默认配置(不存在则创建,已存在但为空且默认有初始值则补齐)
|
||||
func (s *ConfigService) InitDefaults() error {
|
||||
for _, c := range defaultConfigs {
|
||||
@@ -66,15 +78,7 @@ func (s *ConfigService) InitDefaults() error {
|
||||
}
|
||||
}
|
||||
|
||||
// 预热内存缓存
|
||||
var list []model.SystemConfig
|
||||
if err := s.db.Find(&list).Error; err == nil {
|
||||
s.mu.Lock()
|
||||
for _, item := range list {
|
||||
s.cache[item.Key] = item.Value
|
||||
}
|
||||
s.mu.Unlock()
|
||||
}
|
||||
s.WarmUpCache()
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user