向客户端扩展WCF消息传递

时间:2014-03-14 19:56:49

标签: web-services wcf mongodb caching tibco-rv

我继承了一个系统,该系统包括(为简单起见)1个WCF服务,多个客户端连接到该服务。该服务维护数据缓存(以及其他工作),并且客户端还维护数据的本地缓存,以便在可能的情况下保存对服务的调用。通过在计时器上发送的Tibco RV消息,使用来自WCF服务的最新数据更新客户端。每个客户端都会侦听此消息,然后调用该服务以获取本地缓存的最新数据。

如果只有一个WCF实例,这一切看起来都很好。我希望能够在负载均衡的环境中运行多个实例,但我不希望客户端从每个服务实例接收大量消息,告诉他们刷新缓存。

我已经简要地想过可以整合邮件的代理中介,但这基本上是失败的,因为这些邮件可能会在完全不同的时间出现,具体取决于服务的启动时间。

我认为在我的理想世界中,我有一个MongoDB服务器集群或其他东西;客户端只会从那里提取数据,这将取消WCF缓存方面。该服务可以根据需要重新加载Mongo商店,但我们仍然会招致网络使用。这种额外的网络使用似乎混淆了这种客户端缓存设计的原始设计目标。

有人能想到使用此设置扩展服务实例的影响较小的方法,并且没有单点故障吗?

0 个答案:

没有答案