2014-06-09 1 views
0

데이터베이스에 대한 최소 조회수와 함께 데이터베이스의 데이터를 사용해야하는 일부 기능이 있습니다. 이 데이터는 빈번하게 변경되지 않으므로 응용 프로그램로드시에 정적 ConcurrentHashMap을 사용하여 데이터를로드합니다 ( ). 새 데이터가 추가/변경되면 해당 데이터가 각 Hashmap에 추가/업데이트됩니다.데이터베이스에 대한 최소 조회수가 다른 여러 앱에서 java 공유 데이터

이제는 전쟁이 하나 뿐이므로 공유가 간단 해 졌으므로이 작업이 정상적으로 진행되었습니다.

하지만 지금은 3 개의 다른 전쟁과 1 개의 귀의 밑에 1 개의 Ejb가 있으며 모두 데이터를 동시에 공유해야합니다.

그래서 모든 전쟁과 Ejb가 방해받지 않고 액세스 할 수있는 장소에서이 데이터를 유지할 방법이 필요합니다.

저는 Maven이있는 JSP 서블릿 애플리케이션을 사용하고 있으며 서버는 Jboss-7.1.1.Final입니다.

이 작업을 수행하는 가장 좋은 방법을 제안 해주십시오.

답변

0

캐시를 보유하는 Singleton 또는 ApplicationScope 구성 요소를 사용하여 WAR의 각 응용 프로그램에 삽입 할 수 있습니다.

또는 캐시 주위에 REST 서비스를 빌드하고 각 응용 프로그램에서 사용할 수 있습니다.

하지만 여전히 나 자신의 캐시를 만들려고하지 말 것을 제안합니다. 표준 JPA를 사용하고 시작시 모든 레코드를로드 한 다음 JPA 구현에서 캐싱을 수행하도록 할 수 있습니다. 변경되지 않는 데이터에 대한 데이터베이스 히트는 많지 않습니다.

관련 문제