TOUCH

<< MIGRATE LOLWUT >>

마지막 접근 시각(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)의 개수이다.
관련 명령 TTL, PTTL, TYPE
Clients for Java Jedis, Lettuce, Redisson
Clients for C Hiredis

명령을 실습해 보시려면 여기를 클릭해서 Redis Web Client 를 실행하세요.


<< MIGRATE TOUCH LOLWUT >>

질문하거나 댓글을 보려면 클릭하세요.  댓글수 :    조회수 :

Email 답글이 올라오면 이메일로 알려드리겠습니다.