.NET Remoting - 重定向消息/主机冗余

时间:2010-06-04 08:32:12

标签: .net redirect .net-2.0 .net-remoting

我正在尝试在.NET Remoting中完成某种形式的消息重定向。 alt text http://i47.tinypic.com/wlt4y9.jpg

正如您在图像中看到的,我希望客户端向提供程序发送消息(这是客户端必须知道的唯一URI),然后将其重定向到host1。这是棘手的部分;提供者将跟踪哪个主机处于活动状态(通过向主机公开注册/取消注册远程处理方法),换句话说,提供者必须能够动态地更改它应该将消息重定向到哪个URI。

我一直在尝试通过在客户端向其发送消息的提供程序中创建主机,然后在实现自定义代理(by inheriting from RealProxy)的客户端(在提供程序中)创建将重定向消息的客户端来解决此问题到目前首选的主机。但是,我一直回到关于动态更改URI的问题,我觉得我只是错过了一些简单但重要的部分,它可以解决这个问题而不会把它变成一个大毛怪。

非常感谢任何提示/提示!

1 个答案:

答案 0 :(得分:0)

为了将来的参考,我正在采取另一种简化的方法。将删除提供程序,而客户端将尝试直接访问host1。如果是SocketException,这是主机不回复时的内容,则将其隔离X分钟并尝试使用下一个主机。如果所有主机都关闭,请重新抛出异常。