Web services 将WCF消息传递扩展到客户端

Web services 将WCF消息传递扩展到客户端,web-services,wcf,mongodb,caching,tibco-rv,Web Services,Wcf,Mongodb,Caching,Tibco Rv,为了简单起见,我继承了一个由多个客户端连接到的1个WCF服务组成的系统。该服务在其他工作中维护一个数据缓存,客户端还维护一个本地数据缓存,以便在可能的情况下保存对该服务的调用。客户端通过timer上发出的Tibco RV消息使用WCF服务的最新数据进行更新。每个客户端侦听此消息,然后调用服务以获取本地缓存的最新数据 只要有一个WCF实例,这一切看起来都很好。我希望能够在负载平衡的环境中运行多个实例,但我不希望客户端从每个服务实例接收一大堆消息,告诉它们刷新缓存 我曾经简单地考虑过一个可以整合消息

为了简单起见,我继承了一个由多个客户端连接到的1个WCF服务组成的系统。该服务在其他工作中维护一个数据缓存,客户端还维护一个本地数据缓存,以便在可能的情况下保存对该服务的调用。客户端通过timer上发出的Tibco RV消息使用WCF服务的最新数据进行更新。每个客户端侦听此消息,然后调用服务以获取本地缓存的最新数据

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

我曾经简单地考虑过一个可以整合消息的代理中介,但这基本上是失败的,因为这些消息可能在完全不同的时间出现,具体取决于服务启动的时间

我认为在我的理想世界中,我应该有一个MongoDB服务器集群或其他东西;客户机只需从那里提取数据,这就去掉了WCF缓存特性。这项服务可以根据需要重新加载Mongo商店,但我们仍然会遇到网络使用问题。产生这种额外的网络使用似乎混淆了这种客户机缓存设计的原始设计目标

有人能想出一种不那么有效的方法来扩展使用这种设置的服务实例,并且不出现单点故障吗