LifeSpan
@app.on_event("startup") 지, deprecated
- lifespan 방식과 이벤트 핸들러 방식은 함께 사용할 수 없어서 둘 중 하나만 사용해야 한다.
- 이벤트 핸들러는 등록된 순서대로 실행
@app.on_event("startup")
@app.on_event("shutdown")
- 애플리케이션당 한 번만 정의 가능
@asynccontextmanager
async def lifespan(app: FastAPI):
# 애플리케이션 시작 전
yield
# 애플리케이션 종료 전
app = FastAPI(lifespan=lifespan)
- 애플리케이션 개발할 때 시작과 종료 작업이 서로 연결되는 경우 많음
- 전역 변수 하나의 컨텍스트에서 같이 사용
- 효율적인 리소스 관리
- yield 기준으로 초기화한 데이터를 함수 내부의 상태로 유지 가능
https://fastapi.tiangolo.com/ko/advanced/events/#startup
Lifespan 이벤트 - FastAPI
FastAPI framework, high performance, easy to learn, fast to code, ready for production
fastapi.tiangolo.com
https://velog.io/@034179/FastAPI-Lifespan-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0
FastAPI Lifespan 이해하기
@app.on_event()에서 Lifespan으로의 변화
velog.io
Enum 활용 Spring 전역예외처리(Global Exception Handler)
java 의 enum 객체를 활용하여 spring boot의 프로젝트에 global exception handler를 적용시키는 방법. 1. 예외 발생시에 날려줄 code, message 등을 enum 객체로 생성 스크린샷 2023-09-10 233922.png
velog.io
[POST] success(bool), code, message
[POST] result(int), message
[PUT, PATCH] success(bool), code, message
[DELETE] result(int), message
[POST] success(bool), code, message
[PUT, PATCH] success(bool), code, message
[DELETE] success(bool), code, message
인증 result(int), message
삭제, 수정, 등록 success(bool), code, message
1. 명확한 목표, 응답 표준 정의
Mono<REsponseEntity<ChatApiREsponse>>
{
success(bool),
code,
message,
data **(nullable)**
}
-- RESTful API에서 사용되는 표준적이고 효과적인 응답 방식
2. 공통 응답 클래스 구현 dto
- python
예외 객체 생성
전역 예외 처리기
- spring
Mono<ResponseEntity<ApiResponse>>
3. 예외 처리 통합
- 커스텀 예외 정의
- 전역 예외 핸들러
'패스트캠퍼스 백엔드 부트캠프 3기 > Project' 카테고리의 다른 글
[Project] 데이터베이스 연결 드라이버 선택 (0) | 2025.06.23 |
---|---|
[Project] onErrorResume 타임 아웃 예외 처리 (0) | 2025.06.22 |
[Project] CORS 개념 및 에러 처리 (0) | 2025.06.05 |
[Project] Github 일정 관리 방식, Jira-Github 연동 정리 (0) | 2025.05.13 |
[Project] 서로 다른 서버 연결 시 RestTemplate, WebClient, RestClient (0) | 2025.04.12 |