多对多进程间通信,没有中央集线器
本文关键字:集线器 进程间通信 | 更新日期: 2023-09-27 18:32:45
我正在寻找一种有效的方法来处理机器上运行的多个进程之间的多对多通信。
我的要求是:
- 没有中央
- 集线器(例如,没有路由消息的中央进程)
- 所有进程都必须能够发送消息
- 当有新消息(来自任何其他进程)可用时,将通知所有进程
我更喜欢基于命名管道的解决方案(例如,相对于基于文件系统的解决方案)。
您可以尝试将Windows Communication Foundation(WCF)与Peer to Peer绑定(NetPeerTcpBinding)一起使用。您基本上可以在其上创建一个分散的消息总线。它是基于TCP的,但是当它在同一台计算机上时,速度非常快,因此它适用于进程间通信(尽管技术上命名的管道可以实现更快的吞吐量和更好的延迟,但仅适用于对性能极其敏感的应用程序)。
阅读"使用 WCF 进行对等编程",了解该主题的简介。