Redis

[redis] EXPIRE와 EXPIREAT 커맨드

'김용환' 2016. 1. 14. 09:44




EXPIRE 커맨드는 주어진 키의 타임아웃을 초 단위로 설정한다. 

키는 특정 초가 지난 후 삭제된다. 음수의 타임아웃은 키를 바로 삭제한다


127.0.0.1:6379> MSET a 1 b 2 c 3

OK

127.0.0.1:6379> EXPIRE a

(error) ERR wrong number of arguments for 'expire' command

127.0.0.1:6379> EXPIRE a 5

(integer) 1

127.0.0.1:6379> GET a

"1"


# 5초 뒤에 보면, 키가 만료되었다.


127.0.0.1:6379> GET a

(nil)



expire실행시 키에 -1을 넣으면 바로 삭제된다. (del 커맨드와 동일하게 작동한다.)


127.0.0.1:6379> GET b

"2"

127.0.0.1:6379> EXPIRE b -1

(integer) 1

127.0.0.1:6379> GET b

(nil)



EXPIREAT 커맨드는 유닉스 타임스탬프를 기반으로 타임아웃을 설정한다. 타임스탬프가 과거가 되면 즉시 키를 삭제한다.


127.0.0.1:6379> GET c

"3"

127.0.0.1:6379> EXPIREAT c 1111

(integer) 1

127.0.0.1:6379> GET c

(nil)