双工服务的实例,会话和并发

时间:2010-07-15 11:32:43

标签: wcf

我有一个要求,即服务应该每秒向客户端发送一条消息。该服务只能有一个客户端。

我创建了一个双工服务,现在对服务的实例,并发和会话感到困惑。

  1. 双工服务是否始终需要会话? SessionMode.Required

  2. InstanceContextMode应该始终是PerSession吗? InstanceContextMode = InstanceContextMode.PerSession?

  3. 什么应该是ConcurrencyMode?

  4. 如何阻止其他客户端与服务的连接。是否客户端中的回调引用是静态的,并在最初收到客户端请求时检查空引用。

  5. 我将实施心跳操作以检查服务的可用性。这应该是单向还是请求回复呼叫,并且此呼叫是否在同一会话中?

  6. 感谢。

1 个答案:

答案 0 :(得分:1)

可能我已经迟到了几个月......如果你只有一个客户端并且将来不会有更多的客户端,你可以使用最简单的设置:InstanceContextMode.Singleton,SessionMode.NotAllowed。

关于ConcurrencyMode,您可以阅读本教程:http://codeidol.com/csharp/wcf/Concurrency-Management/Service-Concurrency-Mode/