一般问题:缓存如何与ASP.NET中的服务器一起使用?

时间:2011-04-01 01:28:53

标签: asp.net caching

我正在尝试了解asp.net中的缓存,并且很难理解本文中的以下问题(http://msdn.microsoft.com/en-us/library/18c1wd61%28v=vs.71%29.aspx):

  1. 将项目添加到缓存时,我了解您可以指定数据持续多长时间的时间限制。但是,此数据仅保留给此用户,或者如果其他用户同时访问同一页面,此数据是否也会持续存在?
  2. 如果数据被添加到缓存中,它究竟在哪里?它是在服务器上还是在用户的浏览器上?如果它在服务器上,框架如何决定何时需要释放资源?

1 个答案:

答案 0 :(得分:2)

ASP .NET提供了一些形式的缓存,该页面上演示的表单是(任意)数据缓存(使用Cache对象)。所以回答你的问题:

1。)使用此方法缓存的数据可供所有用户使用(以线程安全的方式)。但是,如果您需要存储特定于用户的数据,请改用会话状态。

2.。)数据在服务器端缓存,并在发生以下任何一种情况时释放:

  • 根据来电者明确设定的到期时间而变得陈旧
  • 缓存数据所依赖的资源之一已更改
  • 或者服务器只需要更多内存(与其他缓存数据相比,数据的缓存优先级相对较低)