跳到主要内容

系统设置

系统设置概述

系统设置页面提供了 LLM Gateway 的核心配置管理功能,允许管理员配置和调整系统的各项参数,确保系统稳定运行和最佳性能。

系统设置概览页面

访问系统设置

1
登录管理后台
使用管理员账户登录 LLM Gateway 管理后台
2
进入系统设置
在左侧导航栏点击 "管理功能" → "系统设置"
3
选择配置类别
根据需要选择对应的配置类别进行设置
注意

系统设置修改可能影响整个系统的运行,请谨慎操作。建议在生产环境修改前先在测试环境验证。

数据库配置

数据库连接设置

配置 LLM Gateway 的主数据库连接参数:

数据库配置界面
支持的数据库类型
  • SQLite:默认选项,适合开发和小规模部署
  • MySQL:推荐 MySQL 8.0+,适合生产环境
  • PostgreSQL:推荐 PostgreSQL 14+,适合大规模部署

配置参数说明

参数描述示例值
数据库类型选择数据库引擎mysql / postgres / sqlite
连接字符串数据库连接 DSNmysql://user:pass@host:3306/dbname
最大连接数连接池最大连接数20
最大空闲连接连接池最大空闲连接数10
连接超时时间连接建立超时时间(秒)30

连接字符串格式

mysql://username:password@hostname:3306/database_name?charset=utf8mb4&parseTime=True&loc=Local

数据库维护

自动备份配置
  • 启用自动备份:每日自动备份数据库
  • 备份保留天数:设置备份文件保留天数(默认 30 天)
  • 备份存储路径:指定备份文件存储位置
  • 备份压缩:启用 gzip 压缩减少存储空间
数据库清理
  • 自动清理日志:定期清理过期的访问日志
  • 日志保留天数:设置日志数据保留时间(默认 90 天)
  • 清理时间:设置自动清理执行时间(建议凌晨时段)
性能优化
  • 索引优化:自动分析并优化数据库索引
  • 查询缓存:启用查询结果缓存提升性能
  • 慢查询日志:记录执行时间超过阈值的查询

缓存配置

Redis 缓存设置

配置 Redis 缓存服务,用于提升系统性能和实现分布式功能:

Redis缓存配置

基础连接配置

参数描述默认值
Redis 地址Redis 服务器地址localhost:6379
密码Redis 访问密码(空)
数据库编号Redis 数据库编号0
连接池大小最大连接数10
连接超时连接超时时间(秒)5

高级配置

cluster_mode: true
cluster_addrs:
- "redis-1:6379"
- "redis-2:6379"
- "redis-3:6379"
cluster_password: "your_password"

缓存策略配置

🧠
语义缓存

配置基于向量相似度的智能缓存

  • 相似度阈值:0.85(推荐)
  • 缓存过期时间:24小时
  • 最大缓存条目:10000
⏱️
限流缓存

配置分布式限流计数器

  • 滑动窗口大小:60秒
  • 计数器精度:1秒
  • 自动清理:启用
👥
会话缓存

配置用户会话存储

  • 会话过期时间:8小时
  • 自动续期:启用
  • 单点登录:支持
💾
元数据缓存

配置系统元数据缓存

  • 渠道信息缓存:5分钟
  • 用户权限缓存:10分钟
  • 配置缓存:30分钟

日志配置

日志级别设置

配置系统的日志记录级别和输出格式:

日志配置界面

日志级别

仅记录错误信息,适合生产环境

  • 系统错误
  • API 调用失败
  • 认证失败

日志输出配置

配置项描述建议值
日志目录日志文件存储路径./logs
文件大小限制单个日志文件最大大小100MB
文件保留数量历史日志文件保留数量30
压缩历史文件自动压缩旧日志文件启用
控制台输出是否输出到控制台生产环境关闭

审计日志配置

信息

审计日志记录所有重要的系统操作,用于安全审计和合规要求。

审计事件类型

用户操作审计
  • 用户登录/登出
  • 密码修改
  • 权限变更
  • 配置修改
系统操作审计
  • 渠道添加/删除/修改
  • 令牌创建/撤销
  • 系统配置变更
  • 许可证更新
API访问审计
  • 所有 API 请求记录
  • 失败请求详情
  • 异常访问模式
  • 性能指标
安全事件审计
  • 防火墙拦截
  • 限流触发
  • 异常登录尝试
  • 权限验证失败

安全配置

访问控制设置

安全配置界面

IP 白名单配置

# 允许单个IP访问
allow_ips:
- "192.168.1.100"
- "10.0.0.50"

会话安全配置

配置项描述推荐值
会话超时时间用户无操作自动登出时间8小时
会话密钥会话加密密钥随机生成32位
强制HTTPS强制使用HTTPS协议生产环境启用
同时登录限制同一用户最大同时登录数3个

密码策略配置

🔑
密码复杂度
  • 最小长度:8位
  • 必须包含大小写字母
  • 必须包含数字
  • 必须包含特殊字符
🕒
密码有效期
  • 密码有效期:90天
  • 过期前提醒:7天
  • 历史密码限制:5个
  • 密码重置:强制复杂密码

API 安全配置

rate_limits:
global:
requests_per_minute: 1000
burst_limit: 100
per_user:
requests_per_minute: 100
burst_limit: 20
per_token:
requests_per_minute: 60
burst_limit: 10

性能配置

系统性能参数

优化 LLM Gateway 的性能表现:

性能配置界面

并发控制

参数描述默认值建议值
最大并发请求数系统同时处理的最大请求数100根据服务器配置调整
请求队列长度等待处理的请求队列大小1000并发数的10倍
请求超时时间单个请求的最大处理时间300s根据模型响应时间调整
连接空闲超时HTTP连接空闲超时时间60s30-120s

资源限制

内存管理
  • 最大堆内存:设置 Go 程序最大内存使用
  • GC 目标百分比:垃圾回收触发阈值(默认100%)
  • 内存回收策略:保守/平衡/激进
  • 内存监控告警:超过阈值自动告警
CPU资源
  • 最大CPU核心数:限制程序使用的CPU核心数
  • CPU使用率告警:CPU使用率告警阈值
  • 负载均衡:启用多核心负载均衡
  • 优先级调度:设置进程优先级
网络资源
  • 最大网络连接数:限制同时建立的网络连接
  • 带宽限制:限制网络带宽使用
  • 连接复用:启用HTTP连接复用
  • DNS缓存:启用DNS解析缓存

缓存性能优化

💾
本地缓存
  • 内存缓存大小:100MB
  • 缓存淘汰策略:LRU
  • 缓存命中率目标:>85%
  • 缓存统计:启用详细统计
🖥️
分布式缓存
  • Redis连接池:优化连接池配置
  • 管道批处理:启用批量操作
  • 压缩传输:启用数据压缩
  • 故障转移:配置缓存故障转移

监控配置

系统监控设置

配置系统监控和告警功能:

监控配置界面

监控指标配置

  • CPU使用率
  • 内存使用率
  • 磁盘使用率
  • 网络I/O
  • 进程状态

告警配置

alerts:
- name: "高CPU使用率"
metric: "cpu_usage"
operator: ">"
threshold: 80
duration: "5m"
severity: "warning"

- name: "内存不足"
metric: "memory_usage"
operator: ">"
threshold: 90
duration: "2m"
severity: "critical"

- name: "API错误率过高"
metric: "error_rate"
operator: ">"
threshold: 5
duration: "1m"
severity: "critical"

备份与恢复

自动备份配置

备份配置界面

备份策略

💾
数据库备份
  • 备份频率:每日凌晨2点
  • 全量备份:每周日
  • 增量备份:每日
  • 保留策略:30天
⚙️
配置备份
  • 系统配置文件
  • 渠道配置信息
  • 用户权限配置
  • 密钥和证书文件
📄
日志备份
  • 访问日志归档
  • 系统日志备份
  • 审计日志保存
  • 错误日志收集
💽
存储配置
  • 本地存储:/backup目录
  • 远程存储:S3/OSS/NFS
  • 压缩加密:启用
  • 完整性校验:启用

灾难恢复

1
备份验证
定期验证备份文件的完整性和可恢复性
2
恢复测试
在测试环境定期进行恢复演练
3
应急预案
制定详细的灾难恢复应急预案
4
监控告警
监控备份任务执行状态,异常时及时告警

配置文件管理

环境变量配置

LLM Gateway 支持通过环境变量进行配置:

# 开发环境配置示例
export GIN_MODE=debug
export SQL_DSN="sqlite://./data/llm-gateway.db"
export REDIS_CONN_STRING="redis://localhost:6379/0"
export SESSION_SECRET="your-dev-secret-key"
export LOG_DIR="./logs"
export PORT=3000

配置文件模板

# docker-compose.yml 环境配置
environment:
- GIN_MODE=release
- SQL_DSN=mysql://user:password@db:3306/llmgateway
- REDIS_CONN_STRING=redis://redis:6379/0
- SESSION_SECRET=${SESSION_SECRET}
- ENABLE_PPROF=false
- LOG_LEVEL=info

故障排查

常见配置问题

数据库连接失败

问题症状:系统启动时报数据库连接错误

解决方案

  1. 检查数据库服务是否正常运行
  2. 验证连接字符串格式是否正确
  3. 确认用户名、密码和权限设置
  4. 检查网络连通性和防火墙设置
  5. 查看数据库服务器日志
Redis连接异常

问题症状:缓存功能失效,系统降级到内存缓存

解决方案

  1. 检查Redis服务状态:redis-cli ping
  2. 验证连接字符串和密码配置
  3. 检查Redis内存使用情况
  4. 查看Redis日志文件
  5. 测试网络连通性:telnet redis-host 6379
日志文件权限错误

问题症状:系统无法写入日志文件

解决方案

  1. 检查日志目录是否存在:ls -la /path/to/logs
  2. 确认目录权限:chmod 755 /path/to/logs
  3. 设置正确的文件所有者:chown user:group /path/to/logs
  4. 验证磁盘空间是否充足:df -h
性能问题

问题症状:系统响应缓慢,CPU或内存使用率过高

解决方案

  1. 检查并发配置是否合理
  2. 优化数据库查询和索引
  3. 调整缓存配置和策略
  4. 监控系统资源使用情况
  5. 分析慢查询日志
  6. 考虑水平扩展方案

配置验证工具

💻
配置检查命令
# 验证配置文件语法
llm-gateway --check-config

# 测试数据库连接
llm-gateway --test-db

# 测试Redis连接
llm-gateway --test-redis
🩺
系统诊断
# 系统健康检查
curl http://localhost:3000/health

# 配置信息查询
curl http://localhost:3000/api/system/info

# 监控指标查询
curl http://localhost:3000/metrics
提示

建议定期备份系统配置文件,并在修改重要配置前创建配置快照,以便快速回滚。