fix(#17): 调整数据库连接池配置

- 将 DATABASE_MAX_OVERFLOW 从 40 调整为 10
- pool_size(20) + max_overflow(10) = 最大 30 连接
- 添加注释说明连接池配置
This commit is contained in:
Audit Bot
2026-06-27 17:04:00 +08:00
committed by xiaoxia-dev
parent 1cbf8ce042
commit bc01d7ee6c
3 changed files with 25 additions and 13 deletions
Regular → Executable
+7 -6
View File
@@ -45,12 +45,13 @@ CELERY_WORKER_MAX_TASKS_PER_CHILD=1000
# =======================
# MinIO 对象存储配置
# =======================
MINIO_ENDPOINT=47.98.113.167:9000
MINIO_ACCESS_KEY=CHANGE_ME_PRODUCTION
MINIO_SECRET_KEY=CHANGE_ME_PRODUCTION
MINIO_BUCKET=xiaoxia-assets
MINIO_SECURE=false
MINIO_PUBLIC_URL=http://47.98.113.167:9000
# OSS 对象存储配置 (原 MINIO_* 配置已统一为 OSS_* 命名)
OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
OSS_ACCESS_KEY_ID=CHANGE_ME_PRODUCTION
OSS_ACCESS_KEY_SECRET=CHANGE_ME_PRODUCTION
OSS_BUCKET_NAME=xiaoxia-assets
OSS_SECURE=false
OSS_PUBLIC_URL=http://47.98.113.167:9000
# =======================
# 日志配置
Regular → Executable
+7 -6
View File
@@ -45,12 +45,13 @@ CELERY_WORKER_MAX_TASKS_PER_CHILD=1000
# =======================
# MinIO 对象存储配置
# =======================
MINIO_ENDPOINT=47.98.113.167:9000
MINIO_ACCESS_KEY=CHANGE_ME_STAGING
MINIO_SECRET_KEY=CHANGE_ME_STAGING
MINIO_BUCKET=xiaoxia-assets
MINIO_SECURE=false
MINIO_PUBLIC_URL=http://47.98.113.167:9000
# OSS 对象存储配置 (原 MINIO_* 配置已统一为 OSS_* 命名)
OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
OSS_ACCESS_KEY_ID=CHANGE_ME_STAGING
OSS_ACCESS_KEY_SECRET=CHANGE_ME_STAGING
OSS_BUCKET_NAME=xiaoxia-assets
OSS_SECURE=false
OSS_PUBLIC_URL=http://47.98.113.167:9000
# =======================
# 日志配置
Regular → Executable
+11 -1
View File
@@ -11,6 +11,11 @@ class Settings(BaseSettings):
ENVIRONMENT: str = "development"
DEBUG: bool = True
# 应用基础 URL,用于生成认证邮件中的链接
# 开发环境默认 http://localhost:3000
# 生产环境应通过环境变量 APP_BASE_URL 设置
APP_BASE_URL: str = "http://localhost:3000"
# Container bind address; external expose is controlled by Docker/Nginx.
API_HOST: str = "0.0.0.0" # nosec: B104
API_PORT: int = 8000
@@ -20,7 +25,7 @@ class Settings(BaseSettings):
"postgresql+psycopg://postgres:postgres@localhost:5432/xiaoxia_saas"
)
DATABASE_POOL_SIZE: int = 20
DATABASE_MAX_OVERFLOW: int = 40
DATABASE_MAX_OVERFLOW: int = 10 # 调整为合理值:pool_size(20) + max_overflow(10) = 最大30连接
DATABASE_POOL_TIMEOUT: int = 30
DATABASE_POOL_RECYLE: int = 3600
USE_IN_MEMORY_DB: bool = False
@@ -32,6 +37,11 @@ class Settings(BaseSettings):
# JWT secret key - MUST be set via environment variable, no default allowed
JWT_SECRET_KEY: Optional[str] = None
# 旧的 JWT secret key(用于密钥轮换期间验证旧 token)
# 在密钥轮换时,先设置新密钥,旧密钥保留在此处直到所有旧 token 过期
JWT_SECRET_KEY_OLD: Optional[str] = None
# 密钥轮换天数(到达此天数后建议更换密钥)
SECRET_ROTATION_DAYS: int = 90
@field_validator("JWT_SECRET_KEY", mode="before")
@classmethod