개발로 자기계발
article thumbnail
Published 2022. 12. 20. 00:04
FastAPI 란? - 01 Develop/FastAPI
728x90

"FastAPI는 표준 파이썬 타입 힌트를 바탕으로 한 파이썬 3.6이상에서 작동하는, 현대적이고 빠른(고성능) API 서버 웹 프레임워크다."

FastAPI 장점 및 특징

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

 

FastAPI 비동기처리 지원

  • 특정 로직의 실행이 끝날때 까지 기다리지 않고 나머지 코드를 먼저 실행하는 것.
  • 비동기로 실행한다면 print되는 순서를 보장할 수 없다 → 일찍 끝나는 것이 먼저 실행된다.
    • 동기란?
      • 호출한 함수가 작업 완료를 신경 쓴다. → 작업이 끝날때까지 기다린다.

 

FastAPI 기능

  • API 문서 자동 생성 (Swagger와 ReDoc 스타일 동일)
    • swagger란?
      • OAS를 위한 프레임워크
  • async/await(비동기처리)
  • 웹 소켓(양방향 소통)
  • Pydantic을 사용한 Data Validation (데이터 검증)
  • 회원인증
  • DB 입출력
  • type
  • HTTP 통신
728x90
SMALL
profile

개발로 자기계발

@김잠봉

틀린부분이나 조언이 있다면 언제든 환영입니다:-)