因此,正如我在前一篇文章中所要求的那样,我希望能够用不同的语言编写程序或函数,以便在它们之间进行交流。
最近我遇到了zeromq,我试图弄清楚这是否可以帮助我,因为它提供了一些套接字。例如,zeromq可以在用python编写的程序之间与用C++编写的程序或函数之间交换数据(或传递参数)吗?或者它的函数用于完全不同的东西?
发布于 2015-06-02 21:04:44
答:哦,是的,这正是ZeroMQ或nanomsg框架的强大之处
这两种方法都不是Communication 套接字,而是在Zero-* -一组勇敢的准则(SE 211caleableE 112F<代码>E 213/code>ormalE 116PE 217模式>E 118FE 219 rather )的上下文中创建的行为。
这将使您能够组装自己的快速&智能消息层。
问:下一步最好的方法是什么?
尽管你的第一印象,简单地忘记任何你知道的套接字和多线程同步技巧。
是的,宁愿忘记并建立你对“绿色领域”的新理解。
以Pieter的图书“代码连接,第1卷”为例(可在PDF中查阅),花上几个星期的时间来理解彼得的动机和典型的错误。
代码片段是危险的,如果您没有得到或完全错过full-context的大图.
相信我。我不能给你更好的建议。您可以查看我在ZeroMQ & nanomsg上的其他帖子,以了解不同之处。
你肯定会从这本书中受益,ZeroMQ会给你很多力量,你永远不会(也相信我永远不会)准备好自己从头开始编程。,的能量是如此巨大(如果可以重用的话)。
nota bene
对于现实世界的进程间通信,有一个小问题需要注意.各种ZeroMQ版本的互操作性。是的,ZeroMQ的力量是巨大的,然而,有必要将版本控制保留在您的消息传递层中,以解决某些平台没有更新路径以获得“更新”版本的情况。在这个问题上,重新整合了一个包含组件的交易系统,在该系统中,zmq.__version__ == 2.1.11是必需的,而最近的版本则远远高于14.x.y,这样就可以确保100%的端到端向后兼容。
然而,总体潜力是如此巨大,坚持下去并完成工作是有意义的。G/L关于这一点。
https://stackoverflow.com/questions/30597441
复制相似问题