几个月前,我选择.NET库来实现ZeroMQ通信,我对zeromq.org建议的库很少这一事实感到非常困惑。
与此同时,我学到了一些东西,所以我将在这里分享。也许有人会觉得这很有帮助。所以让我问问自己:
NetMQ和clrzmq有什么区别?
(虽然我会亲自回答这个问题,但如果其他人在这个问题上有经验的话-欢迎选择答案!)
发布于 2016-07-31 10:09:02
这两种方法的主要区别在于:
libzmq库(它是libzmq库的.NET包装器);libzmq,而是用纯C#重写它。用哪一种?没有简单的答案。在选择时,要记住以下几件重要的事情:
libzmq应该比任何托管代码都快得多,但是在CLRZMQ和libzmq封送处理之间的通信中必须进行,所以我真的无法预测哪个库会在速度上获胜。更新: NetMQ的另一个重要优点是支持--您将在一两天内得到答案,有时在几个小时内就会得到答案。
更新2:在NetMQ (描述的这里)中,poller实现的一个问题在我的例子中被证明是NetMQ的显示停止问题。由于这个问题,我已经将我的项目迁移到CLRZMQ (我可能会改变主意.)然而,谈到poller,您应该注意到CLRZMQ文档中有一个问题,它被描述为这里
发布于 2016-08-12 22:41:23
据Doron Somech说:
http://somdoron.com/2013/03/introducing-netmq/
从2014年起,C#绑定(CLRZMQ)不再维护,NetMQ是ZeroMQ和.Net的默认选择。
看来:
https://github.com/zeromq/clrzmq4
替换了原始的CLRZMQ项目。
我正在使用NetMQ,并期待着为该项目做出贡献。
我为NetMQ和本机ZeroMQ构建了相同的Pub场景,没有发现任何性能差异。干得好,多伦!
https://stackoverflow.com/questions/38682886
复制相似问题