AI

FastAPI vs Flask

마시멜로를찾아서 2025. 3. 28. 09:05
반응형

FastAPI와 Flask는 모두 Python 기반의 웹 프레임워크지만, 철학, 성능, 생산성 면에서 큰 차이점이 있어요.


⚔️ FastAPI vs Flask 비교표

항목FastAPIFlask
🚀 속도 매우 빠름 (Starlette 기반, 비동기 지원) 보통 (동기 기반)
🧠 타입 지원 ✅ 강력한 타입 힌트 (Pydantic) ❌ 타입 지원 거의 없음
📝 문서 자동화 ✅ Swagger UI, ReDoc 자동 생성 ❌ 수동으로 Swagger 설정 필요
🧵 비동기 처리 ✅ async/await 완전 지원 ⚠️ 제한적 (기본은 동기)
👨‍🔧 개발자 경험 매우 뛰어남 (IDE 자동완성, 타입 검사) 단순하고 익숙함
🏗️ 설계 철학 현대적인, 명시적, 타입기반 API 최소주의, 자유로운 설계
🧪 유효성 검사 자동 (Pydantic 모델) 수동 처리 필요
🧩 플러그인 생태계 상대적으로 작음 (신생 프레임워크) 매우 큼 (오래된 커뮤니티)

🔍 예시 비교

FastAPI

 
from fastapi import FastAPI

app = FastAPI()

@app.get("/hello")
def say_hello(name: str):
    return {"message": f"Hello {name}"}

Flask

 
from flask import Flask, request

app = Flask(__name__)

@app.route("/hello")
def say_hello():
    name = request.args.get("name", "")
    return {"message": f"Hello {name}"}

🏁 결론: 언제 무엇을 쓸까?

상황추천
🚀 빠른 API + 자동 문서 + 타입 안정성 원할 때 ✅ FastAPI
🧬 복잡한 입력 유효성 검사, Swagger 자동화 필요 ✅ FastAPI
🧪 익숙한 방식, 간단한 프로젝트/PoC ✅ Flask
🌐 오래된 프로젝트와 호환 ✅ Flask

FastAPI는 특히 머신러닝/데이터 사이언스 모델 서빙에 최적이에요.
요즘은 거의 FastAPI로 가는 추세

반응형