티스토리 뷰
게시판이나 블로그 등 웹 기반의 애플리케이션은 최근에 사용된 데이터가 또 다시 사용되는 경향을 갖고 있다.
80:20 법칙에 따라 20%의 데이터가 전체 조회 건수의 80%를 차지할 경우 캐시를 사용함으로써 성능을 대폭 향상시킬 수 있을 것이다.
-
주요 특징
- 경량의 빠른 캐시 엔진
- 확장(scable) - 메모리 & 디스크 저장 지원, 멀티 CPU의 동시 접근에 튜닝
- 분산 지원 - 동기/비동기 복사, 피어(peer) 자동 발견
- 높은 품질 - Hibernate, Confluence, Spring 등에서 사용되고 있으며, Gaia 컴포넌트에서도 EHCache를 사용하여 Cache를 구현하였다.
-
기본 사용법
EHCache를 사용하기 위해서는 다음과 같은 작업이 필요하다.- EHCache를 설치 및 Cache 설정 파일 작성
- 클래스 패스에 위치한 ehcache.xml 파일로부터 Cache 설정 정보를 로딩한다.
- 클래스 패스에 위차한 ehcache.xml 파일이 아닌 다른 파일 설정을 사용하고 싶다면 다음과 같이 URL InputStream 또는 String(경로) 객체를 사용하여 설정 파일의 위치를 지정할 수 있다.
-
URL configFile = this.getClass().getResource("/ehcache_config_replicate.xml") CacheManager cacheManager = new CacheManager(configFile);
- CacheManager 생성
- CacheManager로부터 구한 Cache를 이용해 CRUD 작업 수행
- CacheManager 종료
- EHCache를 설치 및 Cache 설정 파일 작성
-
분산 캐시
- EHCache는 분산 캐시를 지원한다.
- EHCache는 피어(peer) 자동 발견 및 RMI를 이용한 클러스터 간 데이터 전송의 신뢰성 등 분산 캐시를 위한 완전한 기능을 제공하고 있다.
- RMI를 이용하여 분산 캐시를 구현하고 있기 때문에 Serializable한 객체만 분산 캐시에서 사용 가능하다. 키 역시 Serializable해야 한다.
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- script
- redis
- cross
- ehcache
- MongoDB
- web
- cors
- auth
- class
- https
- Spring Boot
- Java
- 대규모
- HTTP
- stateful
- stateless
- output
- Token
- SPOF
- Groovy
- JWT
- ngrinder
- synchronized
- thread
- NoSQL
- Runnable
- Cross Origin
- URI
- iinput
- 404
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
글 보관함