140 lines
4.7 KiB
Bash
140 lines
4.7 KiB
Bash
# ==========================================
|
||
# MuMuAINovel 配置文件示例
|
||
# ==========================================
|
||
# 复制此文件为 .env 并修改配置值
|
||
# cp .env.example .env
|
||
|
||
# ==========================================
|
||
# 应用配置
|
||
# ==========================================
|
||
APP_NAME=MuMuAINovel
|
||
APP_VERSION=1.0.0
|
||
APP_HOST=0.0.0.0
|
||
APP_PORT=8000
|
||
DEBUG=True
|
||
|
||
# ==========================================
|
||
# 数据库配置
|
||
# ==========================================
|
||
|
||
# 选项1: PostgreSQL(生产环境推荐)
|
||
# DATABASE_URL=postgresql+asyncpg://username:password@localhost:5432/database_name
|
||
# 示例:
|
||
# DATABASE_URL=postgresql+asyncpg://mumuai:your_password@localhost:5432/mumuai_novel
|
||
|
||
# 选项2: SQLite(开发环境,默认)
|
||
DATABASE_URL=sqlite+aiosqlite:///data/ai_story.db
|
||
|
||
# PostgreSQL 连接池配置(优化后,支持80-150并发用户)
|
||
DATABASE_POOL_SIZE=30 # 核心连接数(默认30,小团队可用20)
|
||
DATABASE_MAX_OVERFLOW=20 # 最大溢出连接数(默认20,小团队可用10)
|
||
DATABASE_POOL_TIMEOUT=60 # 连接等待超时秒数(默认60)
|
||
DATABASE_POOL_RECYCLE=1800 # 连接回收时间秒数(默认1800=30分钟)
|
||
DATABASE_POOL_PRE_PING=True # 连接前检测是否有效
|
||
DATABASE_POOL_USE_LIFO=True # 使用LIFO策略提高连接复用率
|
||
|
||
# 会话监控配置
|
||
DATABASE_SESSION_MAX_ACTIVE=50 # 活跃会话警告阈值
|
||
DATABASE_SESSION_LEAK_THRESHOLD=100 # 会话泄漏严重告警阈值
|
||
|
||
# SQLite 性能优化配置(仅在使用SQLite时生效)
|
||
SQLITE_CACHE_SIZE_MB=128 # SQLite缓存大小(MB),默认128
|
||
SQLITE_MMAP_SIZE_MB=256 # 内存映射I/O大小(MB),默认256
|
||
SQLITE_WAL_AUTOCHECKPOINT=1000 # WAL自动检查点间隔
|
||
|
||
# 数据库监控配置
|
||
DATABASE_ENABLE_SLOW_QUERY_LOG=True # 启用慢查询日志
|
||
DATABASE_SLOW_QUERY_THRESHOLD=1.0 # 慢查询阈值(秒)
|
||
DATABASE_ENABLE_METRICS=True # 启用性能指标收集
|
||
|
||
# ==========================================
|
||
# 日志配置
|
||
# ==========================================
|
||
LOG_LEVEL=INFO
|
||
LOG_TO_FILE=True
|
||
LOG_FILE_PATH=logs/app.log
|
||
LOG_MAX_BYTES=10485760
|
||
LOG_BACKUP_COUNT=30
|
||
|
||
# ==========================================
|
||
# CORS配置
|
||
# ==========================================
|
||
CORS_ORIGINS=["http://localhost:8000","http://127.0.0.1:8000"]
|
||
|
||
# ==========================================
|
||
# AI服务配置
|
||
# ==========================================
|
||
|
||
# OpenAI配置
|
||
OPENAI_API_KEY=your_openai_api_key_here
|
||
OPENAI_BASE_URL=https://api.openai.com/v1
|
||
# 或使用兼容的API服务(如DeepSeek)
|
||
# OPENAI_BASE_URL=https://api.deepseek.com/v1
|
||
|
||
# Gemini配置(可选)
|
||
# GEMINI_API_KEY=your_gemini_api_key_here
|
||
# GEMINI_BASE_URL=https://generativelanguage.googleapis.com
|
||
|
||
# Anthropic配置(可选)
|
||
# ANTHROPIC_API_KEY=your_anthropic_api_key_here
|
||
# ANTHROPIC_BASE_URL=https://api.anthropic.com
|
||
|
||
# 默认AI配置
|
||
DEFAULT_AI_PROVIDER=openai
|
||
DEFAULT_MODEL=gpt-4
|
||
DEFAULT_TEMPERATURE=0.7
|
||
DEFAULT_MAX_TOKENS=2000
|
||
|
||
# ==========================================
|
||
# LinuxDO OAuth2 配置(可选)
|
||
# ==========================================
|
||
# LINUXDO_CLIENT_ID=your_client_id
|
||
# LINUXDO_CLIENT_SECRET=your_client_secret
|
||
# LINUXDO_REDIRECT_URI=http://localhost:8000/api/auth/callback
|
||
|
||
# 前端URL(OAuth回调后重定向)
|
||
FRONTEND_URL=http://localhost:8000
|
||
|
||
# 初始管理员(LinuxDO user_id)
|
||
# INITIAL_ADMIN_LINUXDO_ID=12345
|
||
|
||
# ==========================================
|
||
# 本地账户登录配置
|
||
# ==========================================
|
||
LOCAL_AUTH_ENABLED=True
|
||
LOCAL_AUTH_USERNAME=admin
|
||
LOCAL_AUTH_PASSWORD=admin123
|
||
LOCAL_AUTH_DISPLAY_NAME=本地管理员
|
||
|
||
# ==========================================
|
||
# 会话配置
|
||
# ==========================================
|
||
SESSION_EXPIRE_MINUTES=120
|
||
SESSION_REFRESH_THRESHOLD_MINUTES=30
|
||
|
||
# ==========================================
|
||
# 部署配置说明
|
||
# ==========================================
|
||
|
||
# 生产环境 PostgreSQL 配置示例(50-100并发用户):
|
||
# DATABASE_URL=postgresql+asyncpg://mumuai:SecurePassword123@db.example.com:5432/mumuai_prod
|
||
# DATABASE_POOL_SIZE=30
|
||
# DATABASE_MAX_OVERFLOW=20
|
||
# DATABASE_POOL_TIMEOUT=60
|
||
# DATABASE_POOL_RECYCLE=1800
|
||
# DATABASE_SESSION_MAX_ACTIVE=50
|
||
# DEBUG=False
|
||
# LOG_LEVEL=WARNING
|
||
|
||
# 高并发环境 PostgreSQL 配置示例(100+并发用户):
|
||
# DATABASE_URL=postgresql+asyncpg://mumuai:SecurePassword123@db.example.com:5432/mumuai_prod
|
||
# DATABASE_POOL_SIZE=40
|
||
# DATABASE_MAX_OVERFLOW=30
|
||
# DATABASE_SESSION_MAX_ACTIVE=80
|
||
# DATABASE_SESSION_LEAK_THRESHOLD=150
|
||
|
||
# Docker 部署配置示例:
|
||
# DATABASE_URL=postgresql+asyncpg://mumuai:password@postgres:5432/mumuai_novel
|
||
# OPENAI_BASE_URL=https://api.openai.com/v1
|
||
# FRONTEND_URL=https://your-domain.com
|
||
# LINUXDO_REDIRECT_URI=https://your-domain.com/api/auth/callback |