Memcached 구성

이 페이지에서는 Memorystore for Memcached의 수정할 수 있는 Memcached 구성 매개변수와 수정할 수 없는 Memcached 구성 매개변수 목록과 매개변수의 기본값을 제공합니다.

수정 가능한 구성 매개변수

Memorystore for Memcached 인스턴스를 만들거나 업데이트할 때 다음 매개변수를 수정할 수 있습니다. 매개변수를 업데이트하려면 별도의 두 단계를 거쳐 매개변수를 변경하고 적용해야 합니다. 이러한 구성을 변경하는 방법에 대한 자세한 내용은 Memcached 인스턴스 구성을 참조하세요.

매개변수 사용 가능한 값 기본값 설명
listen-backlog(-b) 1-10000 1024 조정 가능한 연결 백로그 큐의 길이입니다. 백로그는 Memcached에서 처리하기 위해 큐에 추가된 네트워크 연결 요청 수입니다.
disable-flush-all(-F) true, false false disable-flush-alltrue로 설정하면 오픈소스 Memcached flush-all 명령어가 사용 중지됩니다. 이 구성을 수정하면 cmd_flush 카운터가 증가하지만 실제로는 삭제가 발생하지 않습니다.
max-item-size(-I) 524288~134217728(바이트) 1048576 Memcached 매개변수 max-item-size는 인스턴스에 저장된 항목의 최대 크기 한도를 설정합니다. 몇 가지 추가 제약조건이 적용됩니다.
  • max-item-size는 slab_chunk_max보다 크거나 같아야 합니다. slab_chunk_max가 524288바이트(512KiB)로 설정되고, Memcached용 Memorystore는 이 값의 변경을 지원하지 않습니다. 따라서 max-item-size의 최소값은 오픈소스 Memcached 지원 최솟값(1024바이트)과 반대로 524288바이트입니다.
  • max-item-size는 slab_chunk_max(524288바이트)로 균등하게 나눌 수 있어야 합니다.
  • max-item-size는 캐시에 할당된 총 크기의 절반을 초과할 수 없습니다(-m flag).
slab-min-size(-n) 1~1024(바이트) 48 최소 항목 크기와 가장 작은 Memcached slab의 크기를 설정합니다.
slab-growth-factor(-f) 1.01~100.00 1.25 slab-growth-factor는 Memcached 단위/slab의 크기를 계산하는 데 사용되는 배율입니다. 이 값을 낮추면 메모리 사용량의 효율성이 향상될 수 있지만 저장할 항목의 크기와 사용 가능한 인스턴스 메모리에 따라 다릅니다.
protocol(-B) auto, ascii 자동 결합 프로토콜입니다. 사용할 서버에 연결하려는 프로토콜 클라이언트를 지정합니다. auto는 바이너리 및 ascii 프로토콜을 모두 지원합니다.
disable-cas(-C) true, false false disable-castrue로 설정된 경우 확인 및 설정(CAS) 작업이 사용 중지됩니다. CAS 작업을 사용 중지하면 캐시의 각 항목에 8바이트가 더 적게 사용됩니다. Memcached는 CAS 작업을 사용하여 마지막으로 가져온 이후에 업데이트되지 않은 항목의 데이터를 새로고침합니다.
disable-evictions(-M) true, false false true로 설정되면 메모리가 부족할 때 Memcached가 항목을 제거하는 대신 오류를 반환합니다. 인스턴스는 메모리를 사용할 수 있을 때까지 쓰기를 허용하지 않습니다.
max-reqs-per-event(-R) 1-1,000명 20 단일 클라이언트 연결이 수행할 수 있는 이벤트당 요청 수를 제한합니다. 클라이언트가 이 값을 초과하면 서버는 원래 클라이언트 요청을 계속 처리하기 전에 다른 클라이언트를 우선순위에 둡니다.
reserved-memory-percent 0.0-50.0 10.0 인스턴스의 예약된 메모리를 지정된 비율로 설정하여 메모리 오버헤드에 사용할 수 있는 공간을 늘립니다. 또한 이 설정은 캐시 메모리를 동일한 비율로 줄입니다. 2021년 10월 25일 이전에 생성된 인스턴스에는 기본값 0이 사용됩니다. 자세한 내용은 메모리 관리 권장사항을 참조하세요.

지원되는 확장 옵션

매개변수 사용 가능한 값 기본값 설명
track_sizes true, false false(사용 중지됨) track-sizestrue로 설정된 경우 사용자는 Memcached stats sizes 명령어를 실행할 수 있습니다. 프로덕션 환경에서는 이 구성을 사용 설정하지 않는 것이 좋습니다.
watcher_logbuf_size 0-2097151(키비바이트) 262144 연결된 활성 감시자당 쓰기 버퍼 크기입니다. 이 구성을 변경하면 watch 명령어의 로깅 버퍼 크기가 조정됩니다. 로그 손실을 방지하려면 로그가 가득 찼을 때 watcher_logbuf_size를 늘립니다.
worker_logbuf_size 48~524288(키비바이트) 65536 각 활성 작업자의 버퍼 크기를 제어합니다. 백그라운드 스레드는 이러한 버퍼에서 읽습니다.
lru_crawler true, false true(사용 설정됨) lru_crawler 구성은 slab를 검색하고 해당 slab에서 가장 오래전에 사용한(lru) 항목을 삭제하는 백그라운드 프로세스를 사용 설정합니다. 이 프로세스는 CPU 또는 메모리를 많이 사용하지 않습니다. 사용 설정되어 있으므로 lru_crawlerfalse로 설정할 때까지 실행 시점에 프로세스가 실행됩니다.
idle_timeout 0~86400초 0(사용 중지됨) 기본적으로 0(사용 중지됨)으로 설정됩니다. 이 구성은 클라이언트가 제한 시간 초과 및 연결 해제 전에 유휴 상태가 될 수 있는 시간(초)을 설정합니다.
lru_maintainer true, false true(사용 설정됨) 기본적으로 사용 설정됩니다. lru_maintainer는 '가장 오래전에 사용한 항목'(lru)별로 모든 항목을 올바르게 정렬하기 위해 항목이 얼마나 최근에 액세스하였는지 확인하는 백그라운드 프로세스입니다.
maxconns_fast true, false false(사용 중지됨) 최대 클라이언트 수에 도달했을 때 Memcached가 새 연결을 처리하는 방법을 관리합니다. maxconns-fastfalse로 설정되면 최대 연결 한도를 초과하는 연결이 큐에 추가됩니다. maxconns-fasttrue로 설정되면 최대 연결 한도를 초과하는 연결이 삭제되고 오류 메시지가 표시됩니다.
hash_algorithm jenkins, murmur3 murmur3 인스턴스가 사용하는 해시 알고리즘을 지정합니다.

수정할 수 없는 구성 매개변수

다음 표에는 Memorystore for Memcached로 수정할 수 없는 Memcached 구성 매개변수와 매개변수의 기본값이 나와 있습니다. 자세한 내용은 기본 Memcached 구성 매개변수 목록을 참조하세요.

매개변수 기본값
port(-p) 11211
memory-limit(-m) Memorystore는 이 값을 인스턴스 노드 구성에서 각 노드에 구성된 메모리와 일치하도록 설정합니다. 이 구성을 수정할 수 없습니다. 그러나 위에 나열된 예약된 메모리 구성으로 예약된 메모리를 추가할 수 있습니다.
threads(-t) Memorystore는 이 값을 각 인스턴스 노드의 CPU 수와 일치하도록 설정합니다.
conn-limit(-c) 노드당 65000
verbose(-v)
slab_automove true(사용 설정됨)
slab_reassign true(사용 설정됨)
enable-largepages(-L) false(사용 중지됨)
lock-memory(-k) false(사용 중지됨)
expirezero-does-not-evict 지원되지 않음 Memcached 1.4.35에서 지원 중단되었습니다.
slab_chunk_max 524288바이트
최신 true(사용 설정됨)

다음 단계