Redis 可以使用命令?`EXPIRE`?和?`TTL`,能讓一個鍵值對只存在于指定的時間段內。
~~~
SET resource:lock "Redis Demo"
EXPIRE resource:lock 120
~~~
這會導致鍵 resource:lock 會在120s 后被刪除,你可以使用?`TTL`?去查看一個鍵還能存 在多少時間:
~~~
TTL resource:lock # => 120
# after 122s later
TTL resource:lock # => -2
~~~
這里的 -2 是指 resource:lock 已經不存在了,如果返回值是 -1 說明這個鍵永遠不會過 期。注意:當你使用?`SET`?重新設置一個鍵, 它對應的?`TTL`?就會被重置。
~~~
SET resource:lock "Redis demo 1"
EXPIRE resource:lock 120
TTL resource:lock # => 119
SET resoource.lock "Redis demo 2"
TTL resource:lock # => -1
~~~