다양한 위치에서 일부 데이터를 검색하기 위해 Stateless Session Bean을 실행 중입니다.무 상태 세션 빈 결과 캐싱?
이 SLSB의 캐싱을 달성하는 가장 좋은 방법은 무엇입니까?
요격기 사용 중? JBossCache 사용하기?
우리는 JBoss 5.0.1을 사용하고 있습니다.
다양한 위치에서 일부 데이터를 검색하기 위해 Stateless Session Bean을 실행 중입니다.무 상태 세션 빈 결과 캐싱?
이 SLSB의 캐싱을 달성하는 가장 좋은 방법은 무엇입니까?
요격기 사용 중? JBossCache 사용하기?
우리는 JBoss 5.0.1을 사용하고 있습니다.
기술적으로, 상태 유지 세션 빈에서 상태를 유지할 수 있습니다. 단지 상태가 호출 사이의 컨테이너에 의해 지워질 수 있습니다. 결과적으로 캐시가 사라질 수 있기 때문에 캐시 자체를 Bean에 보관하지 않아야합니다.
이미 JBoss Appserver를 사용하고 있기 때문에 JBossCache는 분명히 당연한 것처럼 보입니다. jboss 서비스 디스크립터를 사용하여 JBossCache 인스턴스를 구성 할 수 있으며 EJB는 JMX/JNDI에서 캐시 인스턴스를 검색 할 수 있습니다. 이미 JBossAS에 모두 포함되어 있으므로 추가 종속성은 필요 없습니다.
JBossCache를 사용하면 클러스터에 분산 된 캐시 보너스도 추가로 제공됩니다.
steteless 세션 빈 자체는 호출간에 데이터를 저장할 수 없으므로 이름은 상태가 없음을 나타냅니다. 하나. 캐시를 보유하고이 빈을 상태없는 빈 메소드에 전달하는 상태 유지 세션 빈을 작성할 수 있습니다.
void someMethod(StateFulBean sfb){
Cache cahce = sfb.getCache();
...
}
또한 EBJ 3.1을 사용할 때 싱글 톤 주석을 사용하고 캐시를 싱글 톤으로 세션 무 상태 세션 빈에 삽입 할 수 있습니다.
달성 할 수있는 기존의 인터셉터가 있습니까? (예 : 메소드 인수를 캐시 키로 사용하는 요격 ... 캐싱 코드와 비즈니스 코드를 섞어 놓지 않는 것이 좋습니다. – jruillier
나는 선반 밖의 그런 것들을 알지 못하지만, JBoss EJB 인터셉터는 작성하기가 쉽기 때문에 자신 만의 롤백을 할 수 있습니다. – skaffman