用于Redis缓存和TTL的ASP.NET会话状态提供程序

时间:2014-10-29 07:03:26

标签: caching redis

我们正在考虑将Redis用于会话状态,但看起来它只在RAM达到其限制时才支持LRU到期策略。

所以我们不会开始清理,直到RAM耗尽。

以前我们一直在使用AppFabric缓存,它允许用户根据上次访问时间设置到期策略,例如:如果没有在30分钟内阅读,那么到期

由于我们在虚拟化环境中运行这些计算机,因此在存储未被使用的数据时,我们不必分配活动RAM。

有没有办法用Redis Cache实现这种到期策略?

先谢谢, 乔尔

1 个答案:

答案 0 :(得分:3)

假设您正在使用:https://www.nuget.org/packages/Microsoft.Web.RedisSessionStateProvider/

redis中的每个会话都有效期。如果未使用会话,则会在达到到期时自动从redis中删除。

每次访问会话时,

RedisSessionStateProvider基本上在每个会话上设置EXPIRE(http://redis.io/commands/expire)(等于会话超时)。