2

使用 ASP.NET,我将数据放入特定于用户的缓存中。该站点使用 Windows 身份验证:

HttpContext.Current.Cache.Insert(....)

此缓存是否仅对用户可用,或者任何使用相同键请求缓存的用户都会获得相同的数据?

4

2 回答 2

8

您可以使用户名成为密钥的一部分,例如“Joe.CacheKey1”。解析密钥将由您决定。

您可能使用 Cache 而不是 Session 的一些原因:

  1. 会话被禁用。
  2. Session 的过期策略不能满足您的需求,但 Cache 可以
  3. 您需要利用 Session 所没有的缓存的某些功能,例如对项目驱逐采取行动,当存在内存压力时自动驱逐等。

使用 Cache 而不是 Session 的一个不好的原因是因为您不知道 Session 存在。

于 2012-11-28T22:41:19.680 回答
2

缓存是全局的,因此每次使用都将通过站点访问相同的资源。如果需要会话持久用户数据,可以查看会话。

于 2012-11-28T22:39:55.220 回答