I've used ZeroMQ in the past with with JVM applications via the jzmq
library. I am planning on using zeromq on a new project where some of the services are implemented on the JVM. I just discovered jeromq, a pure java implementation of zeromq, and I would like to use it mostly since it is tracking zeromq 3.x and it removes the headache of dealing with jzmq
. However, I can't tell from the repo page if it is production ready. Does anyone have experience with jeromq
in production?
As the author of the project, I'm a little bit biased.
The reason I made jeromq was I also had some trouble with deploying jzmq having JNI.
The project has a short history but keep improving from feedbacks and contributions.
But it's not a replacement of jzmq. Both project are active and driven by a major community. You can get help from the community and contribute to the projects also.
From the 3.0-SNAPSHOT, it has a API level compatibility. You can switch between jeromq and jzmq easily without changing your code.
Why not write a JNI that would do all the interaction with 0MQ ? This would bring the problem in your hands instead of hoping for some 3rd party library being mature enough or production-ready.
That's what I'd do. The C/C++ API of zeromq is IMHO the most mature of them and, as such, I think it would bring you the most benefit.
Writing a JNI is not hard either so I think this would be a good way to go.
jeromq
is on zmq
's github organization made me think it was going to be the recommended approach in the future. I think jzmq
(which does the bridging to the C++ version) is really the only option for zmq
on the JVM for production uses as of now. –
Hungarian I have been using it (jeromq-0.5.2.jar) in a production MatLab system for over a year, and it has been pretty solid. You must just create some cleanup objects that close the sockets when your MatLab program exits or is terminated, else the sockets hang around and you need to restart the MatLab environment
© 2022 - 2024 — McMap. All rights reserved.