gpt4 book ai didi

asp.net - OutputCache 在持续时间之前过期

转载 作者:行者123 更新时间:2023-12-02 14:27:33 25 4
gpt4 key购买 nike

我在 ASP.NET 4.0 Webforms 应用程序 (IIS 7.5) 上使用一个非常简单的输出缓存指令,该指令将页面缓存 1 小时。该应用程序没有任何内存压力,但页面在一小时之前就过期了。我创建了一个测试页,仅写出 DateTime.Now 来确认行为。

看起来,只要我继续刷新页面,它就会保持缓存(大部分),但是如果我停止请求它几分钟并返回日期时间戳更改。我看到其他一些人提出了类似的问题,但没有答案。我认为这与某处的某种配置或优化设置有关,其中 IIS 在持续时间之前从缓存中弹出很少访问的页面,但我似乎找不到任何记录。

<%@ Page Language="C#" MasterPageFile="Default.Master" AutoEventWireup="true" Title="Test"%> <%@ OutputCache duration="3600" location="Any" varyByParam="*" %>

<%=DateTime.Now%>

最佳答案

您是否在父页面或该页面上的任何其他控件上设置了输出缓存?

此外,您的应用程序池在关闭之前设置为空闲多长时间?如果您的应用程序池回收,那么您的缓存将被重置。

Caching Portions of an ASP.NET Page

You should also be aware of what happens when a user control with output caching set exists in a Web Forms page that also has output caching set. If the page output cache duration is longer than the user control output cache duration, the page output cache duration is effective for the entire page, including the user control. For example, if page output caching is set to 100 seconds and the user control output caching is set to 50 seconds, the entire page is stored in the output cache for 100 seconds, regardless of the shorter setting for the user control. The following example demonstrates this.

关于asp.net - OutputCache 在持续时间之前过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7669715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com