This commit is contained in:
2026-09-03 17:55:42 +08:00
parent 7c38e84e30
commit c80a3d4a2d
35 changed files with 6795 additions and 597 deletions
+13 -9
View File
@@ -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
}