Memcache关于缓存失效时间的问题

问题:java操作memcache缓存设置完成之后,服务器中失效的时间总是小于正常应该失效的时间


解决方案:1.查看linux系统时间是否准确

                 2.查看memcache服务  使用stats命令查看时间戳是否为系统当前时间


问题由来:一些存储命令在发送时会包含一个失效值(与一个元素或一个客户端操作请求相关)到服务端。所有这类用法,实际发送的值可以是一个Unix时间戳(自1970年1月1日起至失效时间的整型秒数),或者是一个从现在算起的以秒为单位的数字。对于后一种情况,这个秒数不能超过60×60×24×30(30天时间的秒数);如果失效的值大于这个值, 服务端会将其作为一个真实的Unix时间戳来处理而不是自当前时间的偏移。

如果失效值被设置为0(默认),此元素永不过期(但是它可能由于服务端为了给其他新的元素分配空间而被删除)。

你可能感兴趣的:(Memcache关于缓存失效时间的问题)