繁体   English   中英

WAS / IIS如何管理ServiceHost实例?

[英]How does WAS/IIS manage ServiceHost instances?

似乎WAS每个服务实现都会调用一次ServiceHostFactory.CreateHost()。 WAS如何管理ServiceHost / ServiceHostFactory的生存期? 我们有一个自定义的工厂/主机,有时会被重新初始化。 我想知道WAS是否正在回收自身,还是有其他原因重新创建ServiceHostFactory / ServiceHost。 我猜想ServiceHostFactory会为AppDomain开火,并且是单例,有人可以确认吗?

检测WCF之后,似乎IIS / WAS将为每个终结点创建一个ServiceHostFactory。 从那里开始,它将视需要启动ServiceHosts,因为这取决于您的配置。

WAS管理工作进程的激活和生存期。 它管理基于消息的激活和工作进程回收,以维护应用程序资源。 阅读您的案子,这种肯定是对的。

您可以使用Single InstanceContext来处理所有客户端请求。 在合同实现中添加以下属性:

[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)]

另外,如果使用静态方法,请查看ServiceHost的启动操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM