ZeroMQ Предел размера сообщения Длина? - PullRequest
20 голосов
/ 01 июля 2011

Предположим, что несколько машин взаимодействуют друг с другом, используя python's zeroMQ client.

Эти сообщения естественно отформатированы как строки.

Есть ли ограничение на длину сообщения (строки)?

Ответы [ 4 ]

18 голосов
/ 01 июля 2011

Размер отправляемых сообщений не ограничен, однако небольшие сообщения обрабатываются иначе, чем большие сообщения (см. здесь ).

Максимальный размер небольших сообщений определен висходный код размером 30 байт (см. здесь , ищите ZMQ_MAX_VSM_SIZE).

1 голос
/ 26 января 2016

Некоторые типы сокетов поддерживают до 2 ^ 64, но некоторые менее 2 ^ 31.

Вы должны создать протокол, который в любом случае будет поддерживать куски ниже этого размера, но это реальный ответ.

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

1 голос
/ 27 июля 2015

Существует опция сокета ZMQ_MAXMSGSIZE, которая приводит к отключению однорангового узла, отправляющего сообщение большего размера, но по умолчанию используется «без ограничений».

1 голос
/ 10 июля 2013

Без ограничений

Что касается сообщений небольшого размера, передаваемых в структурах zmq_msg_t, их ограничение составляет 29 байт (для zmq версии 3.2.2)

"max_vsm_size = 29", цитируется с https://github.com/zeromq/libzmq/blob/master/src/msg.hpp

...