MapleStory Cookie With Halo

☕ JAVA/☕ Library & Pattern

[JAVA]싱글톤 방식의 주의점

뉴이 NUEY 2025. 2. 25. 15:58
반응형

 

싱글톤 방식의 주의점

 

문제되는 싱글톤 객체
사용 예시

 

  • 여러 클라이언트가 하나의 같은 객체 인스턴스를 공유하기 때문에, 싱글톤 객체는 상태를 유지stateful 하게 설계하면 안된다.

  • 무상태 stateless 로 설계해야한다.

    • 특정 클라이언트에 의존적 필드가 있으면 안된다.
    • 특정 클라이언트가 값을 변경할 수 있는 필드가 있으면 안된다.

    • 가급적 읽기만 가능해야 한다.
    • 필드 대신 자바에서 공유되지 않는 지역변수, 파라미터, ThreadLocal 등을 사용해야 한다.
  • 스프링 빈의 필드에 공유 값을 설정하면 큰 장애가 발생할 수 있다.
    (실무에서는 이러한 문제가 발생하면 원인을 찾기 힘들다)

 

개선된 예

 


※ 참조 : https://www.inflearn.com/roadmaps/373

반응형