문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
java:ehcache [2014/09/25 11:45] kwon37xi [Replication 데이터 복제 전략] |
java:ehcache [2022/02/11 13:53] (현재) kwon37xi |
||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ====== ehcache ====== | ====== ehcache ====== | ||
| - | ===== Update Check 끄기 ===== | + | |
| - | | + | * https:// |
| - | * 시스템 프라퍼티< | + | * https://github.com/ehcache/ehcache3 |
| - | -Dnet.sf.ehcache.skipUpdateCheck=true | + | |
| - | </code> | + | |
| - | * '' | + | |
| - | <ehcache xmlns: | + | |
| - | xsi: | + | |
| - | updateCheck=" | + | |
| - | dynamicConfig=" | + | |
| - | </code> | + | |
| + | ===== Singleton Cache ===== | ||
| + | * 단일 JVM에서는 가능하면 Singleton '' | ||
| + | * Hibernate와 Spring에서 Singleton Cache Manager를 사용하도록 하고 로딩 순서를 보정해주면 될 듯 하다. | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| ===== Distributed Cache ===== | ===== Distributed Cache ===== | ||
| - | * EhCache 전용 서버를 따로 두고, 각 애플리케이션이 EhCache 서버에 접속하는 방식(Memcached와 유사?) | + | The data is held in a Terracotta Server Array with a subset of recently used data held in each application cache node. The distributed topology, available with BigMemory Max, supports a very rich set of consistency modes. |
| ===== Replicated Cache ===== | ===== Replicated Cache ===== | ||
| 줄 19: | 줄 16: | ||
| * Relication 전략은 각 애플리케이션의 메모리에서 각자 캐시를 하되 캐시 상태를 여러 애플리케이션이 서로 동기화한다. | * Relication 전략은 각 애플리케이션의 메모리에서 각자 캐시를 하되 캐시 상태를 여러 애플리케이션이 서로 동기화한다. | ||
| * 이 경우 캐시 된 데이터를 각자 자기 메모리에서 읽기 때문에 로컬 캐시를 사용하는 효과와 동일할 것이다. | * 이 경우 캐시 된 데이터를 각자 자기 메모리에서 읽기 때문에 로컬 캐시를 사용하는 효과와 동일할 것이다. | ||
| + | * 하지만 노드의 갯수가 증가하게 되면 그만큼 부하도 증가하고 성능도 떨어질 수 있다. 따라서 10 노드 이하 정도의 규모에서 사용한다. | ||
| + | * **Replication 캐시에서는 Time To Idle은 사용하지 말라**. 단 노드들 간의 데이터가 다소 비일관적이어도 괜찮다면 사용해도 된다. | ||
| ==== Replication 데이터 복제 전략 ==== | ==== Replication 데이터 복제 전략 ==== | ||
| * 각 애플리케이션에 캐시가 존재하고 RMI, JGroups, JMX 등을 통해 캐시를 서로 동기화 | * 각 애플리케이션에 캐시가 존재하고 RMI, JGroups, JMX 등을 통해 캐시를 서로 동기화 | ||
| * '' | * '' | ||
| + | * '' | ||
| + | * '' | ||
| * '' | * '' | ||
| - | | + | |
| - | * 복제 전략을 '' | + | * 복제 전략을 '' |
| - | * TODO : 내 예상으로는 '' | + | * TODO : 내 예상으로는 '' |
| - | * 따라서 여러 애플리케이션이 순차적으로 배포되면서 캐시를 리플리케이션 할 때는 **'' | + | * 따라서 여러 애플리케이션이 순차적으로 배포되면서 캐시를 리플리케이션 할 때는 **'' |
| * [[http:// | * [[http:// | ||
| * [[http:// | * [[http:// | ||
| + | |||
| + | ==== Replication과 Hibernate ==== | ||
| + | * [[java: | ||
| + | |||
| + | ==== Replication과 JGroups ==== | ||
| + | * [[http:// | ||
| + | |||
| + | ===== Update Check 끄기 ===== | ||
| + | * [[http:// | ||
| + | * 시스템 프라퍼티< | ||
| + | -Dnet.sf.ehcache.skipUpdateCheck=true | ||
| + | </ | ||
| + | * '' | ||
| + | <ehcache xmlns: | ||
| + | xsi: | ||
| + | updateCheck=" | ||
| + | dynamicConfig=" | ||
| + | </ | ||
| + | |||