2014-06-19 3 views
2
나는 6.0.1 버전을 infinispan 사용하고

, 내가 로더로 SingleFileStore를 사용하도록 구성한Infinispan singleFileStore 캐시 재가동

구성 것이다이 아래와 같이 내 질문은

<namedCache name="MyCache"> 
<persistence passivation="true"> 
    <singleFile fetchPersistentState="true" 
       ignoreModifications="false" 
       purgeOnStartup="false" maxEntries="5000"> 
    </singleFile> 
    </persistence> 

입니다 캐시가 JVM 재시작 후에도 생존합니까? 내 캐시가 {n} 항목을 보유하고 있으며 jvm이 중단되었다고 말할 수 있습니다. JVM이 다시 시작되면 내 캐시가 {n} 항목으로 초기화됩니까?

미리 감사드립니다.

답변

2

비활성 상태에서 항목은 메모리 (활성화 됨) 또는 캐시 저장소 (비활성화 됨)에 있습니다. 따라서 아니, 그렇지 않습니다.

+0

그래서 jvm restarts에서 복구가 불가능합니까? 우리는 셧다운 훅을 사용할 수 있습니까? – blob

+0

셧다운 훅에 관해 이야기한다면, cacheManager.stop() 등을 호출 한 후 감사할만한 것들을 고려해야 할 것입니다.이 경우, 예, 엔트리가 디스크로 올바르게 비활성화됩니다. 나는 JVM 충돌이나 기계가 권력에서 벗어나는 것과 같은 감사하지 않은 것을 내 마음 속에 가지고 있었다. –

2

비활성화 기능을 사용하는 경우 시스템 종료 중에 메모리에있는 것만 유지됩니다. 그러나 지금은 InfiniSpan 설명서에서 증거를 찾을 수 없습니다.

어쨌든 SingeFileStore는 강력한 구현이 아닙니다. 저장된 값은 올바른 종료를 수행 한 경우에만 유지됩니다.

+0

증거는 소스 코드로만 제공되며, 설명서를 너무 많이 신뢰하지는 않습니다.하지만 당신 말이 맞습니다. 캐시 관리자가 중지 될 때 PassivationManagerImpl.passivateAll()이 호출됩니다 (@Stop에 의해 주석이 추가됨). –

+0

@flavius ​​그것을 찾아 주셔서 대단히 감사합니다! – cruftex

관련 문제