c# – 我应该如何在.NET中实现分布式远程方法调用系统?
原帖
我如何实现分布式远程方法调用系统? 我正在尝试创建以下内容: >主服务器跟踪单个“主机”. 我尝试过使用像SuperPool和Scs这样的RMI库,但它们有一些基本问题: > SCS仅支持服务器 – >客户或客户 – >服务器通信,没有客户端 – >客户沟通. 不同之处在于客户端上的任何组件也可以与其他客户端上的组件通信,而不是仅与客户端 – >服务器或服务器 – >客户端通信. 您如何建议我实施此项目(可能使用这些现有解决方案作为基础),还是有其他现有解决方案可能有效? 更广泛的例子 这是我正在尝试做的图表: 重要说明:客户端不会相互连接. 处理: > Client1连接到服务器 这个想法与SuperPool所做的一样,除了允许客户端 – >服务器 – >用于在第二个客户端上调用方法的客户端通信路径. 解决方法
虽然
ZeroMQ是相当低的水平,it supports bidirectional communication和
.NET support并且是
available on nuget.org
请注意,尽管ZeroMQ没有准备好进行方法调用的所有内容;您必须创建自己的协议或使用现有协议并实现它. Both Salt and Cloudless,构建在ZeroMQ之上,提供远程方法调用. ZeroMQ facilitates very robust asynchronous sockets (and more) Routing messages是绝对可能的.如果你将Ventilator and Sink in the ZeroMQ Guide结合起来,那么你就非常接近你想要完成的任务. 请注意,您仍然需要实现实际的协议和方法调用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |