天天看點

跟我一起學習ZeroMQ(2):ZeroMQ接口的詳細分類

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#