참고
목적
- ASP.NET Core에서 의존성 주입(DI) 에 의해 추가되는 Service 는 크게 3가지 생명주기를 지닙니다.
- Singleton
- Scoped
- Transient
- 각각의 수명들의 특징에 대해서 조사합니다.
Singleton
- Singleton의 경우는 클라이언트(보통 웹브라우저) 의 접속 상태에 관계없이, 웹 서비스 시작 때 생성되어서, 웹 서비스가 종료될 때까지 유지 됩니다.
- Sigleton 이란 이름에 맞게, 클라이언트가 아무리 많이 붙어도 오직 1개의 서비스만 존재하게 됩니다.
Scoped
- Scoped는 클라이언트의 Request 시작부터, Response 종료까지 유지됩니다.
- 각 클라이언트마다 존재하므로, 연결되는 클라이언트 수 만큼 존재하게 될 수 있습니다.
Transient
- Transient 는 매 사용때마다 생성됩니다.
- 1개의 객체만 의존성 주입하여 사용하게 될 경우, Scoped와 구분이 잘 되지 않습니다.
ASP.NET Core 서비스 생명주기 이미지
728x90
'웹 프로그래밍 > ASP.NET & ASP.NET Core' 카테고리의 다른 글
[ASP.NET Core] 종속성 주입 (0) | 2022.05.21 |
---|---|
[ASP.NET Core] 서비스 생명주기 예제 (0) | 2022.04.16 |
[ASP.NET Core] Dependency Injection 예제 (0) | 2022.04.15 |
[ASP.NET Core] ASP.NET Core Solution 구조 (0) | 2022.04.15 |
[ASP.NET Core] 의존성 역전 원칙 예제(DIP) (0) | 2022.04.14 |
이 글을 공유하기