FastAPI와 SQLite 데이터베이스를 연결하고 API 경로에서 데이터를 조회하기 위해 FastAPI를 사용하게 되었다.
1. 개요
fastAPI란?
파이썬 3.6부터 제공되는 트랜디하고 높은 성능을 가진 파이썬 프레임워크
위에서 알 수 있듯이 FastAPI는 파이썬 프레임워크이다.
우리가 알고 있는 기존에 가장 대중적으로 사용되고 있던 파이썬 프레임워크는 Django, Flask이다. 비교적 가벼운 웹개발이라면 Flask를 사용했고 조금 더 볼륨있는 프로젝트라면 Django를 사용했다.
하지만, 이 쌍둥이 타워 사이에 "조작법은 단순하면서도 성능적으로는 우세함을 보장한다"는 FastAPI라는 녀석이 비집고 들어온 것이다.
FastAPI의 특징에 대해 정리해본다면 아래와 같다.
- API 문서 자동 생성 (Swagger와 ReDoc 스타일 동일)
- 의존성 주입 위주의 설계를 통한 DB 등에 대한 관리 편리
- 비동기 동작으로 빠른 성능 보장
- Pydantic을 사용한 Validation 체크
- 뛰어난 공식문서 가이드
2. FastAPI 사용하기
FastAPI를 사용하는 방법에 대해서도 간단히 알아보도록 하자.
우선, 당연하게도 FastAPI를 설치부터 진행해야 한다.
- fastapi 설치
pip3 install fastapi - uvicorn 설치
pip3 install uvicorn
pip3 install uvicorn[standard]
3. 파이썬 서버 실행
uvicorn main:app --reload
(폴더 구조가 source/python/fast_api 였고 fast_api 안에 main이 있는 구조였음. 서버 실행할 때 python으로 이동 후 uvicorn fast_api.main:app --reload로 실행)
- univorn: 서버 실행을 위해 기본적으로 기재해야하는 명령어
- main: 실행할 초기 파이썬 파일 이름. 만약 실행 소스코드 파일 이름이 index.py였다면 index:app으로 수정해줘야 한다.
- app: FastAPI()모듈을 할당한 객체명을 기재한다. 만약, start=FastAPI()라고 위에서 실행했었다면 여기서도 main:start라고 기재해줘야 정상 실행한다.
- reload: 소스코드가 변경되었을 시, 서버를 자동으로 재시작해주는 옵션
4. visual studio 내에서 디버깅
- 왼쪽 메뉴 탭에서 run and debug
- 화면 상단에서 python file 클릭해서 생성
- 디버깅도 source/python으로 이동 후 위에 play 버튼 클릭해서 실행
- python/fast_api 경로에서 python에 launch.json이 존재해야 디버깅 가능!
참조
https://velog.io/@cho876/%EC%9A%94%EC%A6%98-%EB%9C%A8%EA%B3%A0%EC%9E%88%EB%8B%A4%EB%8A%94-FastAPI