[python] FastAPI에서 캐시 정책 설정하기
FastAPI는 빠르고 간단한 웹 애플리케이션 개발을 위한 파이썬 웹 프레임워크입니다. 캐싱은 웹 애플리케이션의 성능을 향상시키는 방법 중 하나로, 많은 요청을 처리할 때 데이터를 미리 저장해두고 재사용함으로써 응답 시간을 단축시킵니다. 이번 글에서는 FastAPI에서 캐시 정책을 설정하는 방법에 대해 알아보겠습니다.
캐시 정책 설정
FastAPI에서 캐시 정책을 설정하려면 다음과 같은 단계를 따릅니다.
Cache-Control
헤더를 설정합니다. 이 헤더는 클라이언트에게 해당 응답을 얼마 동안 캐시에 저장할 것인지 알려줍니다.- 캐시 갱신 시간을 설정합니다. 이를 위해
ETag
또는Last-Modified
헤더를 사용할 수 있습니다.
FastAPI에서는 캐시 관련 헤더를 손쉽게 설정할 수 있도록 Response
클래스를 제공합니다. 다음은 예제 코드입니다.
from fastapi import FastAPI, Response
app = FastAPI()
@app.get("/data")
def get_data(response: Response):
# 캐시 헤더를 설정합니다.
response.headers["Cache-Control"] = "max-age=3600, public"
response.headers["ETag"] = "my-etag"
# 데이터를 반환합니다.
return {"data": "Hello, FastAPI!"}
위의 코드에서는 /data
엔드포인트에서 캐시 관련 헤더를 설정하고, 데이터를 반환합니다. Cache-Control
헤더를 통해 캐시의 유효 기간을 1시간(max-age=3600
)로 설정하고, ETag
헤더를 사용하여 갱신 여부를 확인할 수 있습니다.
마무리
FastAPI에서 캐시 정책을 설정하는 방법에 대해 알아보았습니다. 캐싱을 효율적으로 사용하면 웹 애플리케이션의 응답 시간을 줄일 수 있어 사용자 경험을 향상시킬 수 있습니다. FastAPI의 간편한 인터페이스를 활용하여 캐시 기능을 구현해보세요.