라이프사이클 훅을 제공
애플리케이션 bootstrap 및 종료 동안 발생
라이프사이클 훅 메서드 | 훅 메서드 호출을 트리거하는 라이프사이클 이벤트 |
---|---|
onModuleInit() | 호스트 모듈의 종속성이 해결된 후 호출됩니다. |
onApplicationBootstrap() | 모든 모듈이 초기화된 후, 연결을 수신하기 전에 호출됩니다. |
onModuleDestroy() * | 종료 신호(예: SIGTERM )를 받은 후 호출됩니다. |
beforeApplicationShutdown() * | 모든 onModuleDestroy() 핸들러가 완료된 후(프로미스가 해결되거나 거부됨); 완료된 후(프로미스가 해결되거나 거부됨) 기존 연결이 모두 닫히고(app.close() 호출됨) 호출됩니다. |
onApplicationShutdown() * | 연결이 닫힌 후(app.close() 해결됨) 호출됩니다. |
onModuleDestroy, beforeApplicationShutdown 및 onApplicationShutdown
이러한 이벤트의 경우, app.close()를 명시적으로 호출하지 않으면 시스템 신호(Such as SIGTERM)와 함께 작동하도록 선택
라이프사이클 훅을 사용하기 위해 typescript 의 interface
를 활용
훅에 async/await 적용 가능
대체로 종료 관련 훅은 컨테이너 수명을 관리하기 위해 적용