본문 바로가기

프로그래밍/python

fast api 파이썬의 고성능 프레임워크

퇴근 후에, 이것 저것 하나씩 건드려 보고 있던차에 아주 좋은 프레임워크를 발견했습니다.

바로 fast api라는 프레임 워크 입니다.

제가 생각하는 (저 아직 아는 것 많이 없습니다) 장점들을 공유하고자 합니다.

1. api 문서가 자동으로 생성됩니다.

  저는 nest js + graphql으로 api 서버 개발을 시작했었는데, 지금의 회사에서는 django + rest api로 개발을 진행하고 있습니다. graphql로 개발을 진행할때에는 api 문서를 자동으로 생성 해 주어서 프론트 개발자와의 협업이 정말 편리했는데 django등의 대부분의 프레임워크는 api 문서를 생성해주지 않습니다. 따라서 프론트엔드 개발자와의 원활한 소통을 위해서 조금 더 많은 시간을 사용해야 했습니다. 그런데 fast api는 api문서를 자동으로 생성해 줍니다.

 

2. 굉장히 빠릅니다.

 django, flask등의 python 웹 프레임워크보다 월등히 빠르고, node js, go와 대등할 정도로 빠릅니다.

정확한 비교를 해본것은 아니지만, 단순히 접속한 클라이언트에 "Hello": "World"만 리턴해 주는 서버를 실행 했을때에도 django와 확연한 속도 비교가 가능했습니다.

from typing import Optional

from fastapi import FastAPI

app =FastAPI()


@app.get('/')
def read_root():
    return {"Hello": "World"}

제 경우에는 위 두가지의 장점만으로도 fast api를 사용해볼 이유가 충분한 것 같습니다.

조금 더 빠른 웹 서버를 구현하기 위해서 golang도 공부를 해 보았지만 error의 처리가 javascript, python 등의 언어와 확연하게 다른 점, 확실하게 뛰어난 프레임 워크가 없는점(있는거 쓰기도 힘들어요,,ㅠ)등 때문에 실제 도입을 못 하고 있던 차에 좋은 프레임워크를 발견하게 되어 기분이 참 좋은 하루입니다 ㅎ_ㅎ

'프로그래밍 > python' 카테고리의 다른 글

python scrapy 사용해보기 -1 (미완성)  (0) 2021.05.16
python celery 속도 향상 시키기  (0) 2021.04.26