首页 新闻 会员 周边

iis中寄宿wcf服务的问题

0
悬赏园豆:50 [已解决问题] 解决于 2017-12-01 15:34

iis中寄宿wcf服务,服务采用的是单实例模式

问题1:实例什么时候创建,是在服务启动时候还是第一次使用的时候

问题2:查资料都说wcf实例是在服务停止的时候销毁,那如果服务是寄宿在iis上,如果服务长时间没有访问,iis是否会回收wcf实例对象。

海之殇的主页 海之殇 | 菜鸟二级 | 园豆:500
提问于:2017-11-30 15:52
< >
分享
最佳答案
1

1:如果是通过静态成员变量实现的单例,是在单例类型被第一次访问时

2. 取决于IIS应用池的2个设置:Process Model 的 Idle Time-out 与 Recycling 的 Regular Time Interval ,可以都设置为0

收获园豆:40
dudu | 高人七级 |园豆:30979 | 2017-11-30 16:47

这个单例是整个wcf服务对象的单例,具体内部实现原理我也还不知道,我也是才刚学wcf

设置单例模式的时候是在wcf服务类中添加ServiceBehavior特性来实现的

[ServiceBehavior(InstanceContextMode =InstanceContextMode.Single,//设置实例模式为单例模式
        ConcurrencyMode =ConcurrencyMode.Multiple)]//设置并发模式为多线程模式

 

海之殇 | 园豆:500 (菜鸟二级) | 2017-11-30 17:06
其他回答(1)
1

1。不知道你的单实例长成什么样子,无法判断。

2. IIS有这个设置项 来销毁 “应用程序”,应用程序都会被销毁,里面的东西还会存在么。实验很简单,把Application Start 用日志记录下来。

收获园豆:10
花飘水流兮 | 园豆:13560 (专家六级) | 2017-11-30 16:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册