Проблема с nanomsg следующая:
Я в качестве пробы создаю сокет типа BUS, и делаю
for(int i=0;i<10;i++)
nn_send(...,"test").
Принимающая сторона получает одно сообщение из десяти.
Если добавить после отправки sleep(1ms), то все ок.
Учитывая, что zeromq/nanomsg заявляют высокую скорость отправки (200к+ сообщений в секунду), вопрос - как корректно отправлять большие партии сообщений?
Там наверняка нет никаких секретов, ты просто отправляешь сообщение, оно отправляется.
Всё.
Понятий "большие партии сообщений" в месседжингах нет вообще. Ты можешь делать транзакции, и в рамках их отправлять сообщения , тогда они отправятся все, либо ни одного. Но не знаю, поддерживает ли ZeroMQ их.
А "больших партий" нет в природе, каждое сообщение посылается отдельно и индивидуально и там нет никаких особых сектеров, ты просто должен корректно работать по его API, и всё. Так что ищи ошибки в твоей программе.