Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iis 7 IIS是否关闭托管服务?我怎样才能防止呢?_Iis 7_Wcf - Fatal编程技术网

Iis 7 IIS是否关闭托管服务?我怎样才能防止呢?

Iis 7 IIS是否关闭托管服务?我怎样才能防止呢?,iis-7,wcf,Iis 7,Wcf,我想在IIS 7中托管WCF服务。我不熟悉这个话题,但一位同事向我保证,不管发生什么,IIS都会在一段时间(“几天”)后关闭托管服务 IIS何时真正自动关闭我的服务?如何设置它使其始终运行(即使他们没有做任何实际工作)?IIS可以随时卸载服务的AppDomain以节省内存 如果服务的端点收到请求,IIS将重新加载服务,请求将正常处理 就服务而言,这与服务器重新引导没有什么不同 只有当您的服务需要持续运行(而不仅仅是侦听)以执行某种后台处理时,这才是一个问题。 如果是这样,您应该编写一个普通的Wi

我想在IIS 7中托管WCF服务。我不熟悉这个话题,但一位同事向我保证,不管发生什么,IIS都会在一段时间(“几天”)后关闭托管服务


IIS何时真正自动关闭我的服务?如何设置它使其始终运行(即使他们没有做任何实际工作)?

IIS可以随时卸载服务的AppDomain以节省内存

如果服务的端点收到请求,IIS将重新加载服务,请求将正常处理

就服务而言,这与服务器重新引导没有什么不同

只有当您的服务需要持续运行(而不仅仅是侦听)以执行某种后台处理时,这才是一个问题。

如果是这样,您应该编写一个普通的Windows服务,而不要使用IIS。

IIS可以随时卸载服务的AppDomain以节省内存

如果服务的端点收到请求,IIS将重新加载服务,请求将正常处理

就服务而言,这与服务器重新引导没有什么不同

只有当您的服务需要持续运行(而不仅仅是侦听)以执行某种后台处理时,这才是一个问题。

如果是这样,您应该编写一个普通的Windows服务,而不要使用IIS。

IIS中的Web服务作为拥有应用程序池的应用程序托管。通常情况下,这些池被设置为定期循环使用-这样您的服务就会重新启动

在应用程序池设置(inetmgr控制台内)中,可以停用这些回收(在“高级设置”->“回收配置”下)

关于故障恢复,也有可能在这些设置中配置它们,但我不确定它们是否真的做到了您期望它们做的事情


最后,我建议您仅通过IIS之外的宿主应用程序作为系统服务宿主您的服务,然后将其配置为自动重新启动并创建日志条目。通常情况下,WCF服务的有效期不会超过请求所需的时间。在我们的一个项目中,我们是在认识到IIS的问题后才这样做的,这使我们的工作变得更容易…

IIS中的Web服务作为拥有应用程序池的应用程序托管。通常情况下,这些池被设置为定期循环使用-这样您的服务就会重新启动

在应用程序池设置(inetmgr控制台内)中,可以停用这些回收(在“高级设置”->“回收配置”下)

关于故障恢复,也有可能在这些设置中配置它们,但我不确定它们是否真的做到了您期望它们做的事情


最后,我建议您仅通过IIS之外的宿主应用程序作为系统服务宿主您的服务,然后将其配置为自动重新启动并创建日志条目。通常情况下,WCF服务的有效期不会超过请求所需的时间。在我们的一个项目中,我们确实是在认识到IIS的问题后这样做的,这使我们的工作更容易…

为什么?你想做什么?我想处理一个残废的架构,它给我带来了奇怪的需求。你可能应该创建一个正常的服务。为什么?你想做什么?我想处理一个残废的架构,它给我带来了奇怪的需求。你可能应该创建一个正常的服务。