我已经编写了一个从msmq读取消息的小型wcf服务应用程序。并在IIS-7中托管wcf服务。THe的问题是,只有在单击浏览按钮时才能阅读邮件。没有引用此服务uri的客户端应用程序。我需要wcf服务,以自动和持续运行的所有时间。
可以在没有任何用户交互的情况下连续运行IIS中托管的WCF服务吗?
发布于 2017-06-23 10:56:13
当您在IIS中托管任何内容时,它始终持续运行,除非您的站点是idle.IIS具有默认设置,其中站点空闲超过20分钟,它将关闭site.This设置位于应用程序池高级设置,如下所示

您可以将应用程序池空闲超时设置为零,这样它就永远不会关闭
我也想知道你到底是如何编写逻辑来从MSMQ service.In案例中提取数据的,你还没有看过细节,在WCF或Asp.net .If中运行循环的后台作业并不简单,你正在使用定时器线程,它可能不会一直工作。如果您使用的是像 这样的东西,那么it fine.But您必须确保它可以一直很好,并检查所有边缘情况,如this和this
所以我们的收获是
如果您需要后台任务,请使用Windows服务instead.Or您可以使用类似hangfire或this nuget的内容,并在相应的应用程序池
中将IdletimeOut设置为0
发布于 2017-06-23 05:53:21
您是否已将应用程序池配置为连续运行?这意味着至少禁用所有回收机制,将空闲超时设置为0,并将启动模式==设置为Always。
您可能会受益于使用Application Initialization模块来确保服务始终处于激活状态。
https://stackoverflow.com/questions/44707276
复制相似问题