Похоже, что ZeroMQ будет собирать данные на стороне сервера при использовании протоколов pgm и epgm и отправлять несколько обновлений в один и тот же пакет многоадресной передачи. Например, если я вызову zmq_msg_send 10 000 раз и посмотрю на данные, которые я отправляю в tcpdump, я вижу, что я отправляю менее 10 000 различных сообщений. Ожидается ли это? Есть ли способ настроить ZeroMQ, чтобы не делать этого?ZeroMQ упаковывает несколько сообщений в одно и то же обновление
ответ
Да, это ожидаемое поведение. Цитата из ZeroMQ FAQ (http://www.zeromq.org/area:faq):
ØMQ пакеты сообщений условно. Вместо того, чтобы ждать предопределенного количества сообщений и/или предопределенного временного интервала, он отправляет все сообщения, доступные в данный момент за один раз. Представьте, что плата сетевого интерфейса занята отправкой данных. Когда он будет готов отправить больше данных, он запросит ØMQ для новых сообщений. ØMQ отправляет все доступные сообщения в данный момент. Это вредит латентности первого сообщения в пакете? Нет. Сообщение не будет отправлено ранее, так как сетевая карта была занята. Напротив, латентность последующих сообщений будет улучшена, потому что отправка одной партии на карту быстрее, чем отправка небольших сообщений. С другой стороны, если сетевая карта не занята, сообщение отправляется сразу, не дожидаясь следующего сообщения. Таким образом, он будет иметь наилучшую возможную задержку.
Невозможно настроить это. И нет причин, так как партии ZeroMQ не увеличивают задержки.
- 1. GCM Несколько сообщений в то же время
- 2. Вставить несколько строк, используя одно и то же соединение MySQL?
- 3. Как прекратить получать одно и то же SMS несколько раз?
- 4. ffmpeg декодирует несколько потоков в одно и то же время
- 5. Несколько обращений Async в одно и то же время - ASP.NET
- 6. MySQL одно и то же письмо несколько раз в строке
- 7. Несколько анимаций CALayer Выполнено в одно и то же время
- 8. Добавьте одно и то же значение в строку несколько раз
- 9. Развернуть одно и то же развертывание несколько раз в Kubernetes
- 10. Выполнять несколько файлов .py в одно и то же время
- 11. Перетащите несколько элементов в одно и то же текстовое поле
- 12. Вызовите одно и то же крепление несколько раз в py.test
- 13. Несколько совпадений, выводимых в одно и то же поле
- 14. Вставить несколько значений в одно и то же поле таблицы
- 15. Обновление двух контрольных баров за одно и то же время
- 16. В Java, будет ли несколько потоков ждать() одно и то же условие разблокируется в одно и то же время позже?
- 17. PHP, генерирующий одно и то же случайное число в одно и то же время (в секундах)
- 18. Как отобразить одно и то же изображение несколько раз, используя одно и то же изображение в javascript
- 19. Excel Объединить несколько ячеек, одно и то же другое изменение
- 20. Java Несколько массивов, разделяющих одно и то же содержимое родителя
- 21. VueJS: несколько компонентов прослушивают одно и то же событие
- 22. Несколько DropDownList, но одно и то же действие
- 23. несколько аварийных сигналов, вызывающих одно и то же обслуживание
- 24. Как легко обрезать одно и то же изображение несколько раз
- 25. Ссылка на несколько «похожих» кнопок на одно и то же.
- 26. Несколько контроллеров, одно и то же имя контроллера
- 27. Сценарий возвращает одно и то же значение несколько раз
- 28. ASP.NET: несколько сборочных версий, одно и то же веб-приложение
- 29. Несколько подписчиков на одно и то же событие
- 30. Несколько экземпляров классов, воспитывающих одно и то же событие