https://blog.csdn.net/wn0112/article/details/99298710
python 的zmq 的发送接收有很多方法,send(), send_json(), send_multipart(),而golang 的zmq只有一个send()。
python subscribe 用的是recv_multipart(),收到的是一个列表,第一个值是订阅的Topic,第二个是数据。
那么golang用zmq应该怎么发呢? 通过查看python 版 zmq的 send_multipart() 函数源码发现,python 其实也只有一个send(),其它方式是自己加的,用了flag SNDMORE。
go的发送方式可以是:
// golang code
_, err = socket.Send(topic, zmq.SNDMORE)
_, err = socket.Send(data, 0)
这样python的 recv.multipart() 就能正确的收到了