asp.net - 与浏览器缓存相比,输出缓存的优势

标签 asp.net http caching output-caching

IIS 具有在 asp.net 站点上设置“输出缓存”的功能。我想知道与我们的浏览器完成的缓存相比,这种类型的缓存有什么好处。 我想知道,如果我们的浏览器有能力缓存内容(如js/css/image),为什么.net 会实现输出缓存等功能?

最佳答案

想象一个需要大量服务器端资源来创建的页面——可能是数据库调用、繁重的计算等。

如果一个用户请求该页面,并且它被浏览器缓存,那么下次该用户请求同一页面时,它已经在他们的机器上了——所以它不必由服务器生成或再次通过网络传输。

接下来,假设第二个用户请求同一个页面。第一个用户的浏览器缓存了该页面的副本这一事实无济于事。如果没有输出缓存,服务器将需要重新执行那些耗时的操作才能生成页面。

如果页面使用输出缓存,那么第一次创建的结果将存储在服务器的内存中,因此可以发送缓存的结果以响应后续请求——这样可以节省时间和服务器端资源。

关于asp.net - 与浏览器缓存相比,输出缓存的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389223/

相关文章:

java - NoSuchMethodError : com. google.common.cache.CacheBuilder.maximumSize(J)

caching - 当http post请求并且没有缓存时处理浏览器后退按钮

java - 算法是指数的,有没有办法让它不是这样?

c# - 如何将 FontAwesome 图标添加到 ASP.NET MVC 项目?

asp.net - 由于获得权限,无法通过nuget安装润滑脂

c# - 发布到另一个页面网站有效,但在此过程中显示空白页面

c# - DataList 上的鼠标悬停图像弹出窗口在 Asp.net 中不起作用

http - 当我尝试通过简单的 HTTP 读取提要时,新的 Mule 版本 3.7.0 出现超时异常

java - 使用 HttpURLConnection 的多个 Http 请求和响应

asp.net - 如果我没有为操作方法指定 [httpGet] 或 [httpPost],调用它的规则是什么