Uvicorn

파이썬 기반 ASGI을 구현한 웹서버. 자바로 치면 톰캣(서블릿 구현)임.

비동기 프로그래밍 수행에 초점을 두었음. 어플리케이션내 엔드포인트를 찾아갈 수 있게끔 HTTP 요청을 파싱하는 역할 진행

Starlette

ASGI기반의 프레임워크, 웹 어플리케이션 구현을 위한 라우팅, 미들웨어, 쿠키 등의 기능들을 제공함. FastAPI가 이걸 가져다가 더 래핑하고 몇개 추가해서 편하게 제공하는 것 뿐임.

FastAPI

Starlette에 더 다양한 편의 기능 추가. 특히 DI를 지원하며, 요청 데이터 자동 변환(pydantic활용),

image.png