1

我的工作人员角色公开WCF 服务并具有多个实例。

我希望我的客户调用此服务并使所有实例同时工作。

我正在尝试找出执行此分散收集任务的最佳方法。

(而且我试图避免使用服务总线并仅使用 WCF)

4

2 回答 2

0

如果没有像服务总线主题这样的东西,我想不出任何好的方法来做到这一点。或者使用几乎相同的自定义功能。你为什么要避免服务总线?

于 2013-08-12T23:56:49.047 回答
0

真的没有办法同时对多个服务器实例进行客户端调用,只使用 Azure 的内置服务。即使使用服务总线主题,也无法保证多个订阅者会同时消费一条消息并同时执行(即使有消息禁运时间,您仍然不能绝对保证每个订阅者都会在准确的时间)。

这将需要是应用程序端的操作。例如:您可以将您的 wcf 请求排队。然后,您的队列读取器可以直接连接到每个实例上的内部端点,从而触发并行运行的操作。这不会给你精确的并行操作,但它会非常接近。作为另一种选择,您可以为每个实例提供多个线程,并且您可以在每个线程上运行相同的请求(同样,由您管理)。

本质上,这是您的应用程序的架构方面。Azure 将无法促进跨实例的并行调用;您可以利用队列、内部服务等来完成此操作。

于 2013-08-13T00:23:32.377 回答