有些机构可以解释我在asp.net中的缓存吗?
我很困惑,在缓存中,编译页面保留在已执行页面的服务器上,该页面在同一页面请求中重复使用。
我在互联网上阅读,但理论并未明确我对缓存的确切运作方式的怀疑。
所以请在此赐教。请提供一些您自己的解决方案,而不是提供任何链接。
答案 0 :(得分:2)
编译页面时,输出不是客户端的简单html页面。相反,输出是服务器运行的代码块,以便为相关请求提供服务。
另一方面,缓存需要服务器运行的代码的部分或全部输出(通常是只读的;通常是html),并将该输出保存在内存中。因此,下次服务器看到相同的请求时,它可以简单地从内存中提取相关的输出,而不是重复执行相同的代码。
对于简单的任务,这里的节省是最小的,但对于服务器进行大量处理以生成相应输出的复杂任务,这可以产生非常大的性能改进。还值得注意的是,缓存非常频繁变化的数据可能不太值得,因为一旦相应的数据发生变化,缓存的输出就会过时。