我目前正在做一个WCF - WSIT集成任务。我将WS-ReliableMessaging与WCF和ws2007HttpBinding结合使用。
可靠的会话设置正确,我正在使用InstanceContextMode.PerSession,并且我的服务实例在一分钟不活动后被终止。
我唯一关心的是,我不确定如何创建一个使用现有OperationContext的SessionId初始化的WCF代理。Visual Studio生成的代理似乎不接受SessionId作为构造函数,等等。
我希望能够使用SessionId重新连接到活动的服务,即使我的代理客户端死了,我必须重新创建它。
发布于 2011-03-22 21:28:05
据我所知,WCF中的可靠会话只有在客户端和服务器都处于活动状态时才能存活。可靠会话是在通道级别实现的WS-ReliableMassaging,它提供传输级别的可靠性-这意味着它可以处理丢失的消息,按顺序传递,重新发送消息等=可靠性只是为了克服不可靠的传输协议,如HTTP。
对于任何参与者可能“死亡”或脱机的情况,您必须使用消息传递( MS世界中的MSMQ)。在与Java world集成时,您可能需要其他基于JMS的消息传递平台。
发布于 2011-03-23 13:53:53
您可以使用持久服务
http://www.wcftutorial.net/How-to-Create-Durable-Service.aspx http://blogs.microsoft.co.il/blogs/egady/archive/2008/01/05/wcf-3-5-durable-services.aspx
https://stackoverflow.com/questions/5391817
复制相似问题