기존 시스템에 분산 캐시를 위하여 Memcached를 도입하려고 했으나 내가 원하던 기능은 리플리케이션인데 이를 권장하지 않는다는 내용을 보고 InfiniSpan을 써야겠다고 여겼다.
Replcation이란 용어가 좀 생소했는데 파일에 대한 공유 부분이고 Memcached를 이용하려 하는 개발자들도 이 부분에 대해 중요하게 생각하지 않나 싶다.
마지막 레퍼를 보면 repcached라는 기능이 있는데 이 기능이 Memcached에서의 Replication기능인데 이것을 사용해도 무방한듯하다. 다만 이 기능을 사용하면 Memecached의 멀티 스레드 기능을 사용할 수 없고 이로 인한 성능 저하가 오게 된다.
Memcached (http://memcached.org/)
메모리를 사용해 캐시서비스를 제공해주는 데몬
* 설치
- 윈디하나의 솔라나라 (http://www.solanara.net/solanara/memcached)
* 사용법
- 붉은 늑대의 자바 한모금, Spring에서 Memcached 사용하기 (http://tinywolf.tistory.com/80)
- 붉은 늑대의 자바 한모금, Spring에서 Memcached 사용하기 2 (http://tinywolf.tistory.com/81)
- 붉은 늑대의 자바 한모금, Memcached + Replication (http://tinywolf.tistory.com/88)
* 관련 자바 라이브러리
- javamemcachedclient (http://code.google.com/p/javamemcachedclient)
- spymemcached (http://code.google.com/p/spymemcached)
- xmemcached (http://code.google.com/p/xmemcached)
* 리플리케이션이란 (출처 : http://ko.wikipedia.org/wiki/리플리케이션)
리플리케이션(Replication)는 데이터 저장과 백업하는 방법과 관련이 있는 데이터를 호스트 컴퓨터에서 다른 컴퓨터로 복사하는 것인데 이때 다른 컴퓨터가 반드시 떨어진 지역에 있어야 하는 것은 아니다. 컴퓨터 네트워크 상태에서는 데이터 저장를 할 수 있게 하는데 로컬 데이터 물리적 기억 장치와는 완전하게 구분된다. 리플리케이션는 유명한 데이터베이스 관리 시스템 (RDBMS, Relational DataBase Management Systems)에서 추가적으로 제공하거나 여러 대의 데이터베이스 서버의 부하를 맞추어 줄 용도로 제공한다.
* 리플리케이션은 권장하지 않는다는 부분
Reference
[1] WebBrain, 분산 캐시 이론 – Consistent Hashing (http://brain.payzip.co.kr/2012/11/22/1105/)
[2] 초보자를 위한 분산 캐시 이야기 (http://www.slideshare.net/OnGameServer/ss-10451675)
[3] NHN HelloWorld, Memcached의 확장성 개선 (http://helloworld.naver.com/helloworld/151047)
[4] NHN HelloWorld, 확장성 있는 웹 아키텍처와 분산 시스템 (http://helloworld.naver.com/helloworld/206816)
[5] 돌고래사육사, repcached (memcached + replication) (http://blog.naver.com/PostView.nhn?blogId=seuis398&logNo=70078268543)
'Infra > NoSQL&Cache' 카테고리의 다른 글
[KAFKA] 콘솔 명령어 모음 (1) | 2018.10.15 |
---|---|
Redis 설치 및 커맨드 정리 (0) | 2018.08.12 |
MongoDB 명령어 (0) | 2014.03.09 |
JBoss - Infini Span (0) | 2013.11.20 |