본문 바로가기

기타

FastAPI 공식문서 (파이썬 패스트 API) 소개

파이썬 백엔드로 유명한 장고 django, 플라스크 flask의 뒤를 맹렬히 뒤쫓고 있는 FaskAPI입니다. 장고나 플라스크에 비해 아직 사용자 수가 (매우) 적지만 워낙 뛰어난 공식문서 덕분인지 가파르게 성장하고 있습니다. 

 

]

 

111

FastAPI 공식문서 (파이썬 패스트 API)

https://fastapi.tiangolo.com/ko/

 

FastAPI

FastAPI FastAPI 프레임워크, 고성능, 간편한 학습, 빠른 코드 작성, 준비된 프로덕션 문서: https://fastapi.tiangolo.com 소스 코드: https://github.com/tiangolo/fastapi FastAPI는 현대적이고, 빠르며(고성능), 파이썬

fastapi.tiangolo.com

FastAPI는 현대적이고, 빠르며(고성능), 파이썬 표준 타입 힌트에 기초한 Python3.6+의 API를 빌드하기 위한 웹 프레임워크입니다.

주요 특징으로:

  • 빠름: (Starlette과 Pydantic 덕분에) NodeJS  Go와 대등할 정도로 매우 높은 성능. 사용 가능한 가장 빠른 파이썬 프레임워크 중 하나.
  • 빠른 코드 작성: 약 200%에서 300%까지 기능 개발 속도 증가. *
  • 적은 버그: 사람(개발자)에 의한 에러 약 40% 감소. *
  • 직관적: 훌륭한 편집기 지원. 모든 곳에서 자동완성. 적은 디버깅 시간.
  • 쉬움: 쉽게 사용하고 배우도록 설계. 적은 문서 읽기 시간.
  • 짧음: 코드 중복 최소화. 각 매개변수 선언의 여러 기능. 적은 버그.
  • 견고함: 준비된 프로덕션 용 코드를 얻으세요. 자동 대화형 문서와 함께.
  • 표준 기반: API에 대한 (완전히 호환되는) 개방형 표준 기반: OpenAPI (이전에 Swagger로 알려졌던) 및 JSON 스키마

 

]

 

Flask vs FastAPI

FastAPI는 가볍고 쉬운 코드를 지향하기 때문에 Django랑 비교하기 보다는 Flask와 비교해야 어울릴 것 같습니다. 아직 저는 둘다 공부중이고 실무에는 적용전이라서 명확히 비교는 어렵지만, 일단 코드의 간편성에서 fast api가 더 간단해보이긴 했습니다. 장점인지 단점인지 모호한데 flask는 다양한 확장과 조합이 있어서 어떤걸 써야할지 고민이 되는 한편, fask api는 공식문서외에는 예제가 거의 없기 때문에(??) 선택지가 별로 없어서 고민이 덜한다고 볼 수 있습니다.

 

flask와 fast api 둘의 큰 차이는 wsgi를 지원하는지 asgi를 지원하는지라고 생각하는데요. 만약 wsgi 서버를 구현한다면 flask, asgi 서버를 쓰고 싶다면 fast api를 선택하는 것도 좋을 것 같습니다.

 

]