2011-01-08 8 views
3

2 개의 애플리케이션이 있습니다. 첫 번째는 참조 데이터를 제공하는 웹 애플리케이션입니다. 두 번째는 참조 데이터가 사용되는 ESB 기반 애플리케이션입니다. 참조 데이터는 매우 자주 변경되지만 변경되지 않습니다. 참조 데이터를 캐시하십시오. 웹 응용 프로그램 (나는 소유자가 아닙니다)이 최대 절전 모드를 사용했습니다. 하지만 ESB 기반 애플리케이션은 그렇지 않았습니다. 우리는 EHCache 만 사용했습니다. 참조 데이터가 ESB 응용 프로그램에 반영되어야하는 독립적 인 웹 응용 프로그램에 의해 변경 될 때. 우리는 메시지 큐를 사용하여 구현했습니다. 참조 데이터가 변경되면 웹 응용 프로그램이 메시지 대기열로 메시지를 보냅니다. 우리 ESB 응용 프로그램은 해당 메시지를 청취합니다. & 캐시를 지 웁니다 & 다시 데이터를 캐시합니다.이 작업은하지만 시간이 많이 걸립니다. 최대 절전 모드를 사용하여 상황을 개선하려면 어떻게해야합니까? 내가 볼 수있는 것과최대 절전 모드를 사용하는 캐싱

감사합니다, Subhendu

+0

@Subendru 최대 절전 모드를 사용하면이 문제가 해결되지 않습니다. 캐시가 너무 자주 지워지면 참조 데이터가 원하는대로 자주 변경되지 않습니다. 캐시를 다시 채우는 데 너무 오래 걸리면 변경된 캐시 항목 만 지울 수 있습니다. –

답변

1

하지 정말 최대 절전 모드 문제. 나는 이것이 캐싱에 대해 더 많은 것이라고 말하고 싶다. 따라서 분산 캐시를 살펴 보도록 권장합니다. 특별히 Infinispan입니다. 이렇게하면 두 응용 프로그램이 동일한 캐시를 공유하고 조작 할 수 있습니다. 당신이 Hibernate를 사용하고 있지만, 캐시가 여전히 다른 머신에 있고, 다른 상태를 가지고 있다면, 당신은 똑같은 문제에 직면 할 것이다.

0

하나 개의 솔루션은 최대 절전 모드 응용 프로그램에 EHCache는을 사용할 수 있지만

그래서 내가 당신을 위해 볼 수있는 유일한 방법은, 비용을 최소화하는 것입니다 ... 당신이에 대한 제어를하지 않아도, 말 많은 다른 캐시 영역을 사용하고 캐시 된 데이터의 작은 부분 만 무효화하십시오 (지금과 같은 방식으로).

관련 문제