FastAPI의 Async, 멀티 Thread, 멀티 Process 이해
FastAPI_Async_Thread/main.py
from fastapi import FastAPI
import asyncio
import time
app = FastAPI()
# long-running I/O-bound 작업 시뮬레이션
async def long_running_task():
# 특정 초동안 수행 시뮬레이션
await asyncio.sleep(20)
return {"status": "long_running task completed"}
@app.get("/async_task")
async def run_async_task():
result = await long_running_task()
return result
@app.get("/sync_task")
async def run_sync_task():
time.sleep(20)
return {"status": "long_running task completed"}
@app.get("/quick")
async def quick_response():
return {"status": "quick response"}