【问题标题】:Inactive Application Pool shut down on a thread在线程上关闭非活动应用程序池
【发布时间】:2014-06-12 22:29:50
【问题描述】:

在我需要大约一个半小时才能完成工作的 Web 服务中,我正在使用 Task.Factory.Run() 方法在其中进行处理,并且我的 Web 服务位于 VM 机器上 IIS 中的 default application pool 内.大约 30 分钟后,我的 WebService 停止工作。我去了 Windows 事件日志,它的默认应用程序池在 20 分钟后由于工作线程不活动而关闭。 那么这是否意味着这就是我的 WebService 也停止工作的原因?如果是,他们为什么认为它不活跃?是因为Task.Factory.Run()吗?

【问题讨论】:

标签: c# asp.net .net iis-7 task-parallel-library


【解决方案1】:

确实是这个原因。 Web 服务处于非活动状态,因为它没有收到任何请求。

WebServices 应该是请求和响应的无状态层,由应用程序池处理。如果您需要执行长期处理,您应该在不同的进程中执行(例如,您排队工作以使用 WCF 进程间通信的 Windows 服务)。

【讨论】:

    猜你喜欢
    • 2011-08-24
    • 2023-03-02
    • 2011-07-11
    • 1970-01-01
    • 2015-05-22
    • 2013-04-04
    • 2019-11-28
    • 2011-04-28
    • 1970-01-01
    相关资源
    最近更新 更多