복붙노트

[SPRING] 스프링 프로토 타입 범위를 사용해야 할 때?

SPRING

스프링 프로토 타입 범위를 사용해야 할 때?

나는 언제 봄에 프로토 타입 범위를 정확히 사용해야 하는가를 알고 싶다. 콩이 요청되면 싱글 톤이 동일한 객체 인스턴스를 반환한다는 것을 이해했습니다.

그렇다면 프로토 타입을 고려해야하는 이유는 무엇입니까?

예를 들어 설명하면 그 필요성을 이해하는 데 많은 도움이됩니다.

해결법

  1. ==============================

    1.명확한 간단한 정의가되기 위해서 :

    명확한 간단한 정의가되기 위해서 :

    프로토 타입 빈은 사용 시점에 생성됩니다. 그래서 statefull beans를 갖고 싶을 때, 때로는 프로토 타입 범위를 가질 필요가 있거나 bean에서 값을 캐시하지 않을 때가 있습니다. 프로토 타입 bean은 하나의 세션 또는 일부 호출과 연관 될 수 있습니다.

    예:

    일반적인 DAO는 대화 상태를 유지하지 않기 때문에 데이터 액세스 개체 (DAO)는 일반적으로 프로토 타입으로 구성되지 않습니다. 이 작성자가 싱글 톤 다이어그램의 핵심을 재사용하는 것이 더 쉬웠습니다.

  2. ==============================

    2.범위 프로토 타입을 사용하여 몇 가지 흥미로운 사용 사례가 있습니다. 예를 들어 실시간 시스템과 같이보다 안정적이고 신뢰할 수있는 응용 프로그램 디자인 / 아키텍처를 구축 할 수 있습니다.

    범위 프로토 타입을 사용하여 몇 가지 흥미로운 사용 사례가 있습니다. 예를 들어 실시간 시스템과 같이보다 안정적이고 신뢰할 수있는 응용 프로그램 디자인 / 아키텍처를 구축 할 수 있습니다.

    차량 추적을위한 실시간 시스템을 구축해야한다고 상상해보십시오. 5 초마다 정보를 공유하는 2.000.000 대의 자동차가있을 것입니다. 서버 측에서는 두 가지 이상의 구 성 그룹, 즉 Cars 및 Trucks에 대한 구성 그룹으로 작업하게됩니다.

    이 간단한 예제를 기반으로 프로토 타입 패턴을 통해 메모리의 구별되는 구성 그룹을 사용하도록 응용 프로그램을 설계하면 더 나은 성능을 얻을 수 있습니다.

    따라서이 경우 서버가 Truck에서 새 메시지를 받으면 예를 들어 서버는 VehicleGrupConfiguration 인스턴스의 해시 맵에서 메모리의 구성 인스턴스를 가져온 다음이 메시지에 있어야하는 구성 동작을 적용합니다. 예 : 시간 초과, 재시도 등.

    이 상황을 구현하는 방법은 여러 가지가 있음을 강조하고 싶지만이 예제는 프로토 타입 패턴이 성능 및 디자인 패턴 문제에서 매우 강력 함을 보여줍니다.

  3. from https://stackoverflow.com/questions/21969044/when-to-use-spring-prototype-scope by cc-by-sa and MIT license