""" 应用配置模块 """ import os from typing import Optional from pydantic_settings import BaseSettings from pydantic import Field class Settings(BaseSettings): """应用配置类""" # 应用配置 APP_NAME: str = "AmazingData金融数据服务平台" APP_VERSION: str = "1.0.0" DEBUG: bool = Field(default=True, env="DEBUG") # 数据库配置 - 使用SQLite简化演示 DATABASE_URL: str = Field( default="sqlite:///./amazing_data.db", env="DATABASE_URL" ) # Redis配置 REDIS_URL: str = Field( default="redis://localhost:6379/0", env="REDIS_URL" ) # JWT配置 SECRET_KEY: str = Field( default="your-secret-key-change-in-production", env="SECRET_KEY" ) ACCESS_TOKEN_EXPIRE_HOURS: int = Field(default=24, env="ACCESS_TOKEN_EXPIRE_HOURS") ALGORITHM: str = "HS256" # 缓存配置 CACHE_DEFAULT_PERIOD: str = "daily" CACHE_DEFAULT_DAYS: int = 365 CACHE_AUTO_CLEANUP_DAYS: int = 7 CACHE_BATCH_SIZE: int = 100 CACHE_MISSING_THRESHOLD: float = 0.1 # 实时数据配置 REALTIME_SUBSCRIBE_INTERVAL: int = 1000 class Config: env_file = ".env" case_sensitive = True # 全局配置实例 settings = Settings()