我在ubuntu 12.04上运行apache / php / memcached
我设置的密钥持续超过其到期时间。我们正在使用与我们正在迁移的memcached PAAS相同的代码。
如何确认实际上是否在密钥上设置了到期日期?
如果我telnet并获取[mykey],它只显示值,而不是过期。
答案 0 :(得分:0)
您可以通过运行stats cachedump
命令来验证memcached中项目的到期时间。 Cachedump需要两个数字参数;项目索引和要显示的项目数。 Memcached将返回一个包含大小(以字节为单位)和一个unix时间戳的项目列表。
示例telnet会话
// Add something to cache
>> set apples 0 130 3
>> Foo
<< STORED
// List ITEM stats
>> stats items
<< STAT items:1:number 1
<< STAT items:1:age 7
<< STAT items:1:evicted 0
<< STAT items:1:evicted_nonzero 0
<< STAT items:1:evicted_time 0
<< STAT items:1:outofmemory 0
<< STAT items:1:tailrepairs 0
<< STAT items:1:reclaimed 0
<< STAT items:1:expired_unfetched 0
<< STAT items:1:evicted_unfetched 0
<< END
// Verify expiration time
>> stats cachedump 1 1
<< ITEM apples [3 b; 1393944062 s]
<< END
并且1393944062 =&gt;星期二,2014年3月4日08:41:02 -0600