21

假设几台机器正在使用python'szeroMQ 客户端进行交互。

这些消息自然地格式化为字符串。

消息(字符串)的长度是否有限制?

4

4 回答 4

20

发送消息的大小没有限制,但是小消息的处理方式与大消息不同(请参阅此处)。

小消息的最大大小在源代码中定义为 30 字节(参见此处,查找 ZMQ_MAX_VSM_SIZE)。

于 2011-07-01T06:53:26.903 回答
3

有一个套接字选项ZMQ_MAXMSGSIZE 会导致发送过大消息的对等方断开连接,但默认值为“无限制”。

于 2015-07-27T16:26:37.097 回答
2

没有限制

对于在 zmq_msg_t 结构中传输的小尺寸消息,它们的限制是 29 字节(对于 zmq 版本 3.2.2)

“max_vsm_size = 29”,引自https://github.com/zeromq/libzmq/blob/master/src/msg.hpp

于 2013-07-09T22:06:20.697 回答
2

有些套接字类型最多支持 2^64,但有些小于 2^31。

无论如何,您应该构建一个将块保持在该大小以下的协议,但这是真正的答案。

https://github.com/zeromq/libzmq/issues/1332

于 2016-01-26T05:25:59.250 回答