我正在研究一个完全由消息驱动的小型分布式系统。现在,我每次发送东西时都会打开一个插座,然后关闭它。状态仅在服务器端维护(例如,如果没有消息从客户端到达5分钟,请认为它已死)。
但是,我必须在客户端上进行一些低级别的消息调度(如果状态消息无法到达服务器,重试,如果仍然失败,则假设服务器已关闭,切换到不同的服务器等) ,以及必须手动监听客户端和服务器(以及交换信息如何从服务器到达客户端)。我也计划添加某种广播系统,但这已经开始堆积......所以问题是,是否有一些现有的.NET总线/消息系统可以与Mono和Microsoft一起使用,它处理这个消息东西?我查看了NServiceBus,但这取决于MSMQ(仍然是真的吗?),Mono或多或少都支持它;总而言之,NServiceBus看起来有点过于沉重。理想情况下,系统将支持1:1和1:N连接,可以稳健地处理错误并报告错误,并具有一些高级功能(排队消息,安全性)。
答案 0 :(得分:2)
你有没有看过RabbitMQ?
答案 1 :(得分:1)
Marc Gravell的protobuf-net图书馆。谷歌协议缓冲区支持许多语言。
答案 2 :(得分:0)
你看过Mono-Olive吗?我知道他们正在实施WCF,如果他们已经实施了足够有用的东西,这可能是你最好的选择。