与命名管道和多个客户端通信?

时间:2011-06-23 10:13:04

标签: .net wcf communication named-pipes

你好!

我有一个可以在同一台计算机上运行多个实例的应用程序。然后我还有一个较小的程序,在starup上大多数连接到主应用程序的现有实例(在同一台计算机上)。一些数据将被转移以确定较小的程序应该与之交谈的实例。

使用WCF的命名管道似乎是要走的路?

如果我做对了,命名管道的工作方式与我建立服务器/客户端WCF应用程序的方式大致相同。

我看到的问题是如何连接到多个实例?在常规WCF应用程序中,您将知道服务的路径,但在这种情况下,可能会有多于一个?

我知道新的WCF支持某种广播,因此客户端不必使用特定的路径,而是可以在网上收听并找到要连接的服务。这是否可以使用命名管道?

请求建议

2 个答案:

答案 0 :(得分:0)

我认为你在谈论WCF的发现,但如果我没有弄错你似乎需要更接近RoutingService的东西:http://msdn.microsoft.com/en-us/library/ee517422.aspx

通过这种方式,您可以为所有客户端提供单一的服务路径(RoutingService),并且RoutingService有责任将调用重定向到其路由表中配置的正确服务(此配置可以更改)在运行时)。关于RoutingService的一篇很棒的文章可以在这里找到:

http://weblogs.thinktecture.com/cweyer/2009/05/whats-new-in-wcf4-routing-service---or-look-ma-just-one-service-to-talk-to.html

此致

答案 1 :(得分:0)

我们目前正在设计一个类似的系统。

我们打算这样做的方式是:

  • 启动时,客户端将通知服务他们正在运行并可以在特定地址接收通知
  • 当服务器程序需要发送内容时,它会查看通知并使用这些地址。