首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpRuntime缓存已停止工作

HttpRuntime缓存已停止工作
EN

Stack Overflow用户
提问于 2015-07-24 03:26:47
回答 1查看 143关注 0票数 0

我使用httpruntime缓存每30分钟运行一段代码。该站点托管在共享环境中。直到上个星期,它都运行得很好。未更改任何代码,但它停止工作。

除了“应用程序启动”电子邮件,我还没有收到任何其他电子邮件。有没有关于如何找到问题的建议?

谢谢。

代码语言:javascript
复制
    void Application_Start(object sender, EventArgs e)
    {
        RegisterCache();
        SendEMail("Application Started");
    }

    private void RegisterCache()
    {
        try
        {
            HttpRuntime.Cache.Add("dummy", "dummy", null, DateTime.UtcNow.AddMinutes(30), 
                              Cache.NoSlidingExpiration, CacheItemPriority.NotRemovable, 
                              new CacheItemRemovedCallback(OnCacheItemRemoved));
        }
        catch (Exception ex)
        { 
            SendEMail(ex.Message);
        }
    }

    public void OnCacheItemRemoved(string key, object value, CacheItemRemovedReason reason)
    {
        try
        {
            RegisterCache();
            // ... get data from the interweb, email data...
        }
        catch (Exception ex)
        {
            SendEMail(ex.Message);
        }
        finally
        {
            SendEMail("Cache Item Removed");
        }
    }

    void Application_End(object sender, EventArgs e)
    {
        SendEMail("Application Ended");
    }
EN

回答 1

Stack Overflow用户

发布于 2015-07-24 07:35:40

一个可能的原因是IIS应用程序池中的空闲超时设置。默认情况下设置为20分钟。这将导致您的网站“关闭”,并且您的缓存移除事件将不会触发。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31596410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档