Подтвердить что ты не робот

ZeroMQ vs Crossroads I/O

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

Насколько я вижу, в настоящее время существуют две разные реализации одной и той же концепции; ZeroMQ и Crossroads I/O, последний из которых является вилкой ZeroMQ (в 2012 году?).

Я пытаюсь выяснить, какой из них использовать и задаваться вопросом о различиях между ними, но пока не нашел много информации об этом.

Например:

  • Совместимы ли они с проводкой?
  • Являются ли они совместимыми с API, т.е. какой-то общий базовый API, возможно с различными дополнениями?
  • Они оба реализуют поддержку ZMTP (протокол передачи сообщений ZeroMQ)?
  • Есть ли у них какое-то общее понимание будущего развития или они будут продолжаться в двух разных и возможных разных направлениях?
  • Каковы плюсы и минусы по отношению к другому?

В принципе, как выбрать один из них?

4b9b3361

Ответ 1

Crossroads.io довольно мертв, так как Мартин Сустрик начал работу над новым стеком в C, названным nano: https://github.com/250bpm/nanomsg

Crossroads.io не использует afaik, реализует ZMTP/1.0 и ZMTP/2.0, но свою версию протокола.

Nano имеет подключаемые транспорты, и мы, вероятно, сделаем для этого транспорт ZMTP. Nano действительно приятный, переосмыслив оригинальную библиотеку libzmq, и если он удастся сделать хорошее новое ядро.

В идеале, Nano будет взаимодействовать как на уровне API, так и на уровне протокола, поэтому замените libzmq на замену. Тем не менее, у него довольно длинный путь.

Обратите внимание, что теперь появилось несколько перезаписи libzmq, включая JeroMQ (Java) и NetMQ (С#). Эти два действительно реализуют ZMTP/1.0 и ZMTP/2.0. Существуют также другие библиотеки, такие как Axon (https://github.com/visionmedia/axon), которые сильно вдохновлены 0MQ, но не совместимы.

Основываясь на опыте, пользователи оценивают интероперабельность больше, чем почти что-либо еще, поэтому вполне вероятно, что разные 0MQ-подобные стеки будут говорить одни и те же протоколы.