Backend/Spring2023. 12. 11. 09:30스프링의 싱글톤 (+ 싱글톤 레지스트리란?)
🔎 스프링에서 싱글톤을 사용하는 이유 앞선 포스팅에서 스프링 컨테이너가 의존관계를 주입할 객체를 생성하고 관리한다고 했었다. 그렇다면 대규모 트래픽 처리를 요구하는 애플리케이션에서 매 요청마다 새로운 빈(Bean)을 만든다고 생각해보자. 이 애플리케이션에 1초에 1천번의 요청이 온다고 하면 1분에는 6만번의 새로운 객체가 생성되는 현상이 발생하게 된다. 이는 성능에 부하가 생길 수 있다. 위와 같은 상황처럼 대규모 트래픽을 처리할 수 있게 스프링에서는 이미 만들어진 객체(1개)를 공유해서 효율적으로 사용할 수 있게 해준다. ❔ 어떻게 객체 인스턴스를 하나만 만들까? 그렇다면 스프링에서는 어떻게 하나의 인스턴스만 생성되도록 해줄까? 기본적으로 생각할 수 있는 싱글톤 패턴을 Java언어로 구현하는 방법을 생..