Зачем нужен JeroMQ, если он может использовать JZMQ?
Простой вопрос Почему "портировать" zmq на java и назвать его JeroMQ - хорошая идея?
2 ответа
Решение
JeroMQ - официальный проект сообщества ZeroMQ; это полный порт библиотеки C++ libzmq, поддерживающей версию 3.2.
Преимущества:
- Чистая Java, поэтому нет необходимости ссылаться на C/C++ через JNI. Это чрезвычайно полезно на устройствах, где нативные библиотеки трудны или невозможны.
- 100% совместимость с JZMQ API (два проекта согласовали единый API, поэтому вы можете прозрачно импортировать один или другой).
- На 100% совместим с проводным протоколом ZeroMQ, поэтому некоторые узлы можно запускать с помощью JeroMQ, а некоторые - с помощью собственной библиотеки, и она работает как положено.
- Хорошая производительность, относительно близко к родной библиотеке.
Недостатки:
- Нет многоадресной рассылки PGM - пока нет версии Java этой библиотеки.
- Пока не поддерживает функциональность ZeroMQ v4, включая безопасность.
JeroMQ - это чистая Java-реализация ZeroMq. Если ваш целевой язык - Java, начать работу с JeroMq проще, поскольку он использует один файл jar. ZeroMq (zmq), с другой стороны, написан на C. Вы должны собрать zmq, libzmq и привязки языка Java, jzmq, чтобы использовать его в приложении Java. JeroMq API идентичен jzmq, поэтому запуск с JeroMq и переключение на jzmq в дальнейшем не повлияет на ваше приложение, за исключением производительности; Zmq работает лучше, чем JeroMq.
Надеюсь, это поможет,