티스토리 뷰

WEB2.0/프로그래밍

짧고 간단한 memcached 설명

나를찾는아이 2014. 1. 15. 10:00
728x90
반응형

memcached는 많은 사랑을 받고 있는 분산메모리캐시서버입니다.


memcached의 중요한 키워드는 "분산(Distributed)"과 "메모리(Memory)"인데요.



메모리에 저장한 데이터를 불러오는것이 하드디스크에 저장된 데이터를 불러오는것보다 훨씬 빠른 속도를 자랑하기에


빠른 입출력을 필요로 하는 key-value형태의 데이터를 저장하기에 적합합니다.



이때 key는 250 글자를 넘을수 없고, 기본적으로 value값의 제한은 1MB입니다.



memcached는 분산시스템입니다.


memcached client는 key값에 대한 hash 값으로 해당 key-value가 저장될 memcached server를 결정하여 데이터를 분산시켜 저장하고 key값에 대한 value를 찾을때도 해당 hash값으로 저장되어있는 memcached server를 찾아 데이터를 가져옵니다.


이러한 내부 메커니즘은 모두 래핑되어있기때문에 memcached를 사용하는 여러분은 이 절차에 대해 신경쓸필요가 없습니다.


이러한 분산 매커니즘의 이유로 가급적 memcached client는 버전은 동일한것으로 사용하는것이 좋습니다.



memcached는 데이터를 메모리에 저장하기 때문에 서버의 물리적 메모리 크기가 클수록 좋습니다.


다른 데몬이나 리소스들이 사용할 메모리를 남겨놓고 남은 크기를 memcached에 할당하면 됩니다.



최대 성능을 보장하기 위해 memcached는 인증이나 암호화와 같은 어떠한 형태의 보안도 제공하지 않습니다.


이것은 memcached 서버를 외부에서 접속할수 없는 분리된 네트워크에 배치하여 처리해야한다는것을 의미합니다.




AWS에서는 Amazon ElastiCache 라는 이름으로 memcached와 redis 두가지를 제공하고 있습니다.


물론 여러분의 어플리케이션 코드를 그대로 사용할수 있습니다.



게다가 AWS는 auto discovery(오류가 있는 서버를 발견하면 자동 제거하고 새로운 서버로 교체)를 지원하는


elasticache cluster client를 제공하고 있습니다.


JAVA, PHP버전을 제공하고 있으며 간단한 설치를 통해 사용할수 있습니다.



참고자료


http://www.slideshare.net/AshyGrey/about-memcached-13950629

http://charsyam.wordpress.com/2011/11/25/memcached-%EC%97%90%EC%84%9C%EC%9D%98-consistent-hashing/
http://www.mikeperham.com/2009/01/14/consistent-hashing-in-memcache-client/

http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/WhatIs.html

http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/AutoDiscovery.html#AutoDiscovery.ModifyAppPHP

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함