touch
TOUCH
마지막 접근 시각(access time)을 현재 시각으로 변경
사용법은 touch key 이다.
마지막 접근 시각을 현재 시각으로 변경한다.
마지막 접근 시각 확인은
OBJECT idletime key
또는
DEBUG object key
명령으로 확인할 수 있다.
이 명령은 레디스 서버 최대 메모리 사용 정책(MAXMEMORY POLICY)과 관련이 있다.
최대 메모리 사용 정책과 관련된 6 가지 파라미터 중 volatile-lru
, allkeys-lru
는
마지막 접근 시각이 오래된 키부터 삭제하는 LRU(Least Recently Used) 알고리즘으로 키를 삭제한다.
그러므로 특정 키를 가능한 늦게 삭제되게 하려면 TOUCH
명령을 사용해서 마지막 접근 시각을 현재 시각으로 변경한다.
레디스 서버 버전 3.2.0까지는
TTL key
또는
TYPE key
명령으로 마지막 접근 시각을 변경할 수 있었다.
하지만 버전 3.2.1 부터는 이 명령으로 변경할 수 없고, 마지막 접근 시각을 변경하는 TOUCH
명령을 새로 만들었다.
물론
GET key
명령을 사용해서
변경할 수 있으나, 마지막 접근 시각을 변경하는 목적으로만 사용하기에는 서버나 클라이언트에 부하를 주므로 TOUCH
명령을 사용하자.
존재하지 않는 키를 지정해도 에러를 발생시키지 않고 무시한다.  
리턴 값은 touch
한 키의 개수이다.
최대 메모리 사용 정책(MAXMEMORY POLICY
)에 관한 간단한 설명은 여기를 보세요.
Example
명령> | set key value |
결과> | 1 |
명령> | object idletime key |
결과> | 5 |
명령> | touch key |
결과> | 1 |
명령> | object idletime key |
결과> | 2 |
명령문
TOUCH key [key ...]
- 이 명령은 version 3.2.1 부터 사용할 수 있다.
- 논리적 처리 소요시간은 O(N)이다. N은 키(key)의 개수이다.