FastAPI로 빠르고 간단한 파이썬 API 서버 만들기 - 설치부터 기본 예제까지
Python으로 웹 API를 개발할 때 가장 많이 사용되는 프레임워크는 Flask와 Django입니다.
하지만 최근에는 FastAPI가 성능과 편의성 면에서 강력한 대안으로 주목받고 있습니다.
✅ FastAPI란?
FastAPI는 다음과 같은 특징을 가진 최신 Python 웹 프레임워크입니다.
- 빠른 속도 – Flask보다 2~3배 빠르고, Node.js보다도 빠름
- 비동기 지원 – async/await 기반으로 높은 성능 구현
- 자동 문서화 – Swagger UI, ReDoc 자동 생성
- 간단한 코드 – Flask보다 더 직관적인 사용법 제공
특히 대규모 API 서버 구축이나 고성능 비동기 처리가 필요한 프로젝트에 적합합니다.
✅ FastAPI 설치하기
pip 명령어로 FastAPI와 실행 서버인 uvicorn을 설치합니다.
pip install fastapi uvicorn
✅ FastAPI 기본 예제
main.py
파일을 만들고 다음 코드를 입력합니다.
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello, FastAPI!"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "query": q}
✔ 코드 설명
FastAPI()
로 앱 인스턴스를 생성@app.get("/")
: 루트 경로에 GET 요청 처리@app.get("/items/{item_id}")
: URL 파라미터와 쿼리스트링 처리
✅ FastAPI 서버 실행
아래 명령어를 터미널에서 실행합니다.
uvicorn main:app --reload
--reload
옵션은 코드 변경 시 서버 자동 재시작- 접속 주소: http://127.0.0.1:8000
- 예시 요청: /items/42?q=fastapi
{
"item_id": 42,
"query": "fastapi"
}
✅ 자동 문서화 기능
FastAPI는 OpenAPI 기반의 자동 API 문서를 생성해 줍니다.
별도의 설정 없이 문서가 자동 생성되며, Swagger UI에서 API 요청 테스트도 가능합니다.
✅ 정리
- FastAPI는 간단한 문법과 빠른 성능을 갖춘 Python 기반의 API 프레임워크입니다.
- 비동기 처리를 기본으로 지원하고, 자동 문서화 기능 덕분에 백엔드 개발 생산성이 크게 향상됩니다.
- 설정이 간단하고 확장성이 뛰어나, 개인 프로젝트부터 실무 API 서버까지 널리 활용할 수 있습니다.
Python으로 REST API를 개발하고자 할 때, FastAPI는 꼭 한 번 써볼 만한 프레임워크입니다.
※ 본 포스트는 Python 3.12 환경을 기준으로 작성되었습니다.
반응형
'프로그래밍 > Python' 카테고리의 다른 글
[python] FastAPI에서 async/await으로 비동기 API 만들기 - 느린 작업도 빠르게 처리하기 (0) | 2025.03.20 |
---|---|
FastAPI에서 POST 요청 처리하기 - 사용자 입력 데이터 받기 예제 (0) | 2025.03.20 |
파이썬 로그 관리, loguru로 더 쉽게! 설정부터 파일 저장까지 정리 (0) | 2025.03.20 |
파이썬 데이터 검증을 쉽게 해주는 Pydantic 라이브러리 사용법 (0) | 2025.03.20 |
파이썬으로 네이버 주식 데이터 스크래핑하는 방법 (BeautifulSoup 사용) (0) | 2025.03.19 |