WCF PollingDuplexBinding变为Faulted

时间:2011-09-30 04:59:27

标签: silverlight wcf

我的silverlight客户端应用程序中的通知,我正在使用WCF pollingDuplex绑定。

服务器端的绑定详细信息......

PollingDuplexHttp Binding custPollBind = new PollingDuplexHttpBinding();

 custPollBind.InactivityTimeout = TimeSpan.FromDays(12);
                     custPollBind.ReceiveTimeout = TimeSpan.FromDays(12);
                     custPollBind.ServerPollTimeout = TimeSpan.FromSeconds(25);
                     custPollBind.TransferMode = TransferMode.StreamedResponse;
                     custPollBind.MaxOutputDelay = new TimeSpan(0, 0, 7);

客户端的绑定详细信息:

 PollingDuplexHttpBinding binding = new PollingDuplexHttpBinding()
                {

                   ReceiveTimeout = TimeSpan.FromDays(12),
                    InactivityTimeout = TimeSpan.FromDays(12),

               };



 EndpointAddress address = new EndpointAddress(endPoint);
                 client = new StuDuplexServiceClient(binding, address);

我希望频道不应该进入故障统计。

为此,同样在每个学院,我都会发送一些虚拟通知数据,以保持所有连接的客户端或通道处于活动状态。

工作正常。但是经过很长时间通常4-5或5-6或一些时间2-3小时所有连接的通道都会出现故障。和客户端应用程序不再连接到WCF服务。

经过很长一段时间后,如果我刷新页面或重新连接客户端应用程序,它正在连接,但仅在10-12秒后,通道再次成为故障状态。你可以说,它连接的时间只有10-12秒。

如果我再次启动我的服务,那么它工作正常。一段时间后,同样的问题就出现了问题。

我的WCF服务作为Windows服务托管。

对于服务行为我正在使用它..

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single)]

这会造成任何问题吗?我也通过删除它来检查。但没有运气。

0 个答案:

没有答案