缓存是否被覆盖?

时间:2009-01-09 16:31:48

标签: asp.net session caching

如果您的网站上有多个用户在同一页面上,并且他们正在运行查询(搜索),结果将存储在数据表中。如果您将它存储在缓存中,最后一个人的搜索是否会覆盖应用程序缓存?这是使用Session的原因吗?

3 个答案:

答案 0 :(得分:2)

如果您将它们存放在同一个键下,请确保。如果您使用关键用户或会话特定,则可以避免冲突。

答案 1 :(得分:2)

这取决于您如何将信息存储到缓存中。如果信息是不同查询的结果,则缓存应该将该值存储在不同的密钥中。

答案 2 :(得分:1)

您应该注意,缓存和会话的方式与简单访问范围不同。

缓存中的项目通常是可以在需要时重新创建的类别,默认情况下,项目可以从缓存中删除。

另一方面,会话中的项目将保留在会话中,直到被代码专门删除。此外,会话可能不是正在进行的本地存储,它可能位于另一个进程,服务器甚至是数据库中。