링크: https://hazelcast.com/use-cases/caching/hibernate-second-level-cache/
회사에서 어떤 분이 hazelcast의 2차 캐시를 붙이고 성능이 좋아졌다고 하여 관심을 가지게 되었다.
레퍼런스 문서: https://docs.hazelcast.org/docs/latest/manual/html-single/index.html#hibernate-second-level-cache
GitHub:
- https://github.com/hazelcast/hazelcast-hibernate
- Hibernate 3.3+
- Hibernate 4.x
- Hazelcast 3.6+
- https://github.com/hazelcast/hazelcast-hibernate5
- hazelcast-hibernate5 supports Java 6+, Hibernate 5.0.x, Hibernate 5.1.x and Hazelcast 3.7+
- hazelcast-hibernate52 supports Java 8, Hibernate 5.2.x and Hazelcast 3.7+
Hazelcast: 회사 이름?
IMDG: In Memory Data Grid
패턴: read-through, write-through, and write-behind.
네이버 D2 : 이제 필요한 것은 In Memory Data Grid https://d2.naver.com/helloworld/106824
메인 메모리를 저장소로 사용하려면 극복해야 하는 약점 두 가지: 용량의 한계와 신뢰성
- 용량의 한계: 분산 아키텍처를 이용하여 극복, Horizontal Scalability 방식을 사용
- 신뢰성: 복제 시스템을 구성해 해결
In Memory Key-Value Database - Key-Value 모델이다. 그래서 이 키(key)를 이용해 데이터를 분산시켜 저장
Arcus: Consistency Hash 모델
Hazelcast: modulo 방식
HazelCast: 더블 라이선스 정책을 취하고 있는 제품, ElasticMemory와 같은 기능을 사용하려면 상용 라이선스를 구입. 그러나 많은 기능이 오픈소스라서 별도의 비용 없이 사용할 수 있으며, 사용 레퍼런스 정보를 찾아 보기가 매우 쉽다.
영구 저장소에 저장 알고리즘: LRU(Least Recently Used), LFU(Least Frequently Used)
Full GC 제약 극복: Off-heap 메모리(Direct Buffer) 사용
- 장점: 큰 공간을 할당할 수 있고 Full GC에 대한 부담을 줄일 수 있다. 매우 큰 용량의 메모리 공간을 사용할 때 Full GC 시간을 없앨 수 있어 항상 일정한 처리 시간을 확보할 수 있다.
- 단점: 보통 Direct Buffer에 대한 접근은 Heap Buffer보다 느리다. Memory Allocator를 만드는 것과 같은 매우 전문적인 기술이 필요
Hazelcast IMDG Reference Manual: https://docs.hazelcast.org/docs/latest/manual/html-single/index.html
Hazelcast Topology: Embedded or Client/Server.
Github: https://github.com/hazelcast/hazelcast
Mail Group: https://groups.google.com/forum/#!forum/hazelcast
vs Infinispan @ 조대협's blog http://bcho.tistory.com/862 Infinispan과의 성능 비교 글들을 보면, 열세인데, 이부분은 조금 더 리서치 필요
'Programing > OpenSource' 카테고리의 다른 글
코드 스타일 목록 (0) | 2018.10.30 |
---|---|
MapStruct - DTO, VO 간 변환 유틸리티 (0) | 2018.10.24 |
카산드라(cassandra) 인텔리제이에서 프로젝트 열기. (0) | 2018.06.07 |
asciinema : Record and share your terminal sessions, the right way. (0) | 2018.05.28 |
jOOQ (0) | 2018.05.25 |