2015-07-01 15 views

回答

0

将TimeSpan.MaxValue设置为密钥过期没有任何意义。你不应该设置它,因为它不应该被删除。这就是StackExchange的redis客户端所做的事情 - 当你把TimeSpan.MaxValue实际上并没有设置到期时,它会调用PERSIST命令
在StackExchange的redis客户端中,查找类RedisDatabase.cs ,方法是

消息GetExpiryMessage(RedisKey键,commandflags中旗,时间跨度?届满,出ServerEndPoint服务器)

https://github.com/StackExchange/StackExchange.Redis
你也可以调用该方法Database.KeyTimeToLive,它会为你的关键返回0。
为什么它被驱逐可能是因为你的Azure缓存设置,它可能设置了maxmemory和驱逐策略:http://redis.io/topics/lru-cache

相关问题