💜 Key Point

싱글톤

💜 Today I Learned

[싱글톤]

싱글톤은 인스턴스를 오직 한 개만 생성할 때 사용되는 디자인 패턴이다.

싱글톤 패턴은 프로그램 전체에서 특정 클래스의 인스턴스가 하나만 존재하도록 보장한다.
동일한 리소스나 서비스에 대한 중복 생성 방지, 전역 접근 지점을 제공한다.

  • 싱글톤 패턴 구현 방법
    • 생성자를 private로 선언
    • 정적 변수로 인스턴스 저장
      싱글톤
    • 인스턴스에 접근할 수 있는 정적 메소드 제공
  • 싱글톤 장점
    • 메모리 효율
    • 데이터 공유
    • 접근 제어

NestJS는 내부적으로 싱글톤 패턴을 적극 활용하는 프레임워크이다.

싱글톤과 반대로 각 요청마다 새로운 인스턴스가 필요할 때는 요청 스코프, 트랜시언트 스코프 등을 사용할 수 있다.

  • 요청 스코프(Request-scoped) : 요청이 들어올 때마다 새로운 인스턴스 생성
  • 트랜시언트 스코프(Transient-scoped) : DI 시스템이 새로운 인스턴스를 주입할 때마다 새로운 인스턴스 생성

0개의 댓글