본문으로 이동

Memcached

Memcached는 데이터베이스 호출, API 호출, 페이지 렌더링 결과 같은 작은 데이터를 메모리에 저장하는 키-값 저장소 오픈소스 소프트웨어이다.

위키베이스 항목 수정하기

특징

Memcached는 작은 임의의 데이터(문자열, 객체)를 메모리에 두는 키-값 저장소라고 스스로 소개한다.[1] Memcached는 고성능 멀티스레드 이벤트 기반 키-값 캐시 저장소로, 분산 시스템에서 쓰도록 만들어졌다.[2] 네트워크 입출력은 막힘 없이 처리하지만 디스크에는 접근하지 않으며, 디스크로 가면 캐시를 쓰는 의미가 없어진다고 README는 설명한다.[2] 기본적으로 가장 오래 쓰이지 않은 항목부터 내보내는 LRU(Least Recently Used) 캐시이고, 항목은 정해진 시간이 지나면 만료된다.[3]

분산

서버를 고르는 일은 클라이언트가 맡아, 클라이언트가 키를 해시해 서버를 정한다.[3] Memcached 서버들은 서로를 알지 못하며, 서버 사이에 통신, 동기화, 방송, 복제가 없다.[3]

라이선스

Memcached 소스 코드 저장소는 BSD 3조항 라이선스 등으로 표시된다.[2] 저장소의 LICENSE 파일은 2003년 댄가 인터랙티브(Danga Interactive)의 저작권을 적는다.[4]

사용 사례

미디어위키는 비용이 큰 계산을 줄이고 데이터베이스 서버의 부하를 덜기 위해 값을 캐시하는 데 Memcached를 쓸 수 있다.[5] 위키백과처럼 규모가 크거나 웹 서버가 여러 대인 위키에서는 Memcached가 미디어위키의 객체 캐시로 흔히 고르는 선택이라고 미디어위키 문서는 안내한다.[5] 페미위키는 인프라 저장소의 Docker 설정에서 Memcached 컨테이너를 실행하고, 미디어위키의 주 캐시와 파서 캐시, 메시지 캐시를 Memcached(PECL 클라이언트)로 설정한다.[6]

출처

  1. ↑ “memcached - a distributed memory object caching system”. 《memcached.org》 (영어). 2026년 11월 7일에 확인함. 
  2. ↑ 2.0 2.1 2.2 “memcached/memcached”. 《GitHub》 (영어). 2026년 11월 7일에 확인함. 
  3. ↑ 3.0 3.1 3.2 “Memcached Documentation”. 《docs.memcached.org》 (영어). 2026년 11월 7일에 확인함. 
  4. ↑ “LICENSE”. 《GitHub》 (영어). 2026년 11월 7일에 확인함. 
  5. ↑ 5.0 5.1 “Manual:Memcached”. 《MediaWiki》 (영어). 2026년 11월 7일에 확인함. 
  6. ↑ “infra/docker/container.tf”. 《GitHub》 (영어). 2026년 11월 7일에 확인함.