23 lines
626 B
Python
23 lines
626 B
Python
|
|
"""
|
|||
|
|
FastAPI 应用主入口
|
|||
|
|
"""
|
|||
|
|
from app.core.application import create_application
|
|||
|
|
from app.core.config import settings
|
|||
|
|
|
|||
|
|
# 创建应用实例
|
|||
|
|
app = create_application()
|
|||
|
|
|
|||
|
|
if __name__ == "__main__":
|
|||
|
|
import uvicorn
|
|||
|
|
|
|||
|
|
# 根据环境决定是否使用字符串形式的 app(支持热重载)
|
|||
|
|
app_str = "main:app" if settings.RELOAD else app
|
|||
|
|
|
|||
|
|
uvicorn.run(
|
|||
|
|
app_str,
|
|||
|
|
host=settings.HOST,
|
|||
|
|
port=settings.PORT,
|
|||
|
|
reload=settings.RELOAD,
|
|||
|
|
log_level=settings.LOG_LEVEL.lower(),
|
|||
|
|
workers=1 if settings.RELOAD else settings.WORKERS, # 热重载模式下只能用1个worker
|
|||
|
|
)
|