2016-09-29 3 views
0

분산 시스템에서 데이터를 처리하는 myBatis 캐시 (로컬 및 둘째 레벨)에 대해 알고 싶습니다. 오라클 데이터베이스에 대해 5 개의 인스턴스를 실행하고 데이터 액세스를 위해 MyBatis를 사용합니다. 5 개의 인스턴스는 모두 동일하지만 다른 서버에서 실행됩니다. Mybatis는 SESSION 캐시를 사용하도록 구성되어 있습니다. 삽입/삭제/업데이트 문이 실행될 때 캐시가 지워집니다.분산 시스템의 MyBatis 캐싱 전략

1 인스턴스가 실행되면 해당 서버의 로컬 캐시가 지워집니다. 다른 4 개의 인스턴스가 캐시를 플러시/갱신해야한다는 것을 어떻게 알 수 있습니까?

답변

0

트랙주기 :

을 나는 모든 인스턴스는 부하 분산 장치 뒤에있는 단일 오라클 DB에 대해 실행 같아요. 인스턴스 노드가 클러스터에있는 것이 더 좋을 것입니다. 그렇지 않으면 어떻게 서로 통신 할 수 있습니까? 그런 다음 캐시는 클러스터 노드간에 공유 될 수 있습니다 (예 : Jboss doc, working with Hibernate에서 설명).

질문은 MyBatis 캐시를 사용하기 위해 서버 (또는 응용 프로그램, beans.xml과 같은 파일에서)를 구성하는 방법에 관한 것입니다.

SessionFactory가 @ApplicationScoped으로 선언되면 충분할 수 있습니다.