ZeroMQ再已经有多种开发语言的库了,但都是基于libzmq的,更多的是适配(java有完整的实现);目前主要支持的语言如下:
C、C++、C#、Erlan、F#、Go、Java、Node.js、Perl、Python和Ruby
每种语言基本都有几种不同的适配或实现,主要如下:
名称 | 接口类型 | url | 说明 |
libzmq | C | https://github.com/zeromq/libzmq | 用C++实现的,是最底层的库,许多其他语言的实现都是基于libzmq的 |
czmq | C | https://github.com/zeromq/czmq | 是对libzmq接口的一个高层次的封装,更加易于使用 |
zmqpp | C++ | https://github.com/zeromq/zmqpp | 是对libzmq接口的一个高层次的封装,可以说更偏向于oop,并且也实现了认证机制 |
cppzmq | C++ | https://github.com/zeromq/cppzmq | 是对libzmq接口的一个封装,相对于zmqpp来讲,封装层次没有那么高 |
azmq | C++ | https://github.com/zeromq/azmq | 事件循环使用的是boost.asio来支持的,很好的解决了zmq与boost.asio整合的问题 |
czmqpp | C++ | https://github.com/zeromq/czmqpp | 感觉热度不是很高 |
fbzmq | C++ | https://github.com/facebook/fbzmq | 是facebook封装的,有很多fb的元素 |
NetMQ | C# | https://github.com/zeromq/netmq | 完全使用C#语言实现,不依赖于libzmq库 |
clrzmq4 | C# | https://github.com/zeromq/clrzmq4 | 是对libzmq接口的封装,依赖于libzmq库 |
JeroMQ | java | https://github.com/zeromq/jeromq | 完全使用java语言实现,不依赖于libzmq |
JZMQ | java | https://github.com/zeromq/jzmq | 是对libzmq接口的封装,依赖于libzmq库 |
jczmq | java | https://github.com/zeromq/czmq/tree/master/bindings/jni | 通过JNI调用czmq |
Pyzmq | pyth | https://github.com/zeromq/pyzmq | 是对libzmq接口的封装,依赖于libzmq库 |
rbzmq | ruby | https://github.com/zeromq/rbzmq | 是对libzmq接口的封装,依赖于libzmq库 |
rust-zmq | rust | https://github.com/erickt/rust-zmq | 是对libzmq接口的封装,依赖于libzmq库 |
zmq4 | go | https://github.com/pebbe/zmq4 | 是对libzmq接口的封装,依赖于libzmq库 |
goczmq | go | https://github.com/zeromq/goczmq | 是对libzmq接口的封装,依赖于libzmq库 |
更详细的信息请参见:https://zeromq.org/get-started/?language=cpp&library=zmqpp#