[−][src]Crate async_zmq
Async version for ZeroMQ bindings
This is high-level bindings for zmq
in asynchronous manner. Crate itself uses some modules from
async-std
, but it should also work on any other async runtime. The goal for this project
is providing simple interface that is compatible with any async executor and reactor.
TODO list
- [ ] PAIR
- [x] PUB
- [x] SUB
- [ ] REQ
- [ ] REP
- [ ] DEALER
- [ ] ROUTER
- [ ] PULL
- [ ] PUSH
- [ ] XPUB
- [ ] XSUB
- [ ] STREAM
Usage
Users could simply initialize any socket type with async_zmq::*
in mind, and then call
bind()
or connect
depends on your scenario. For example, if someone wants a publish socket,
then he could initialize the socket like this:
let zmq = async_zmq::publish("tcp://127.0.0.1:5555")?.bind();
To learn more about each socket type usage. See modules below.
Prelude
Prelude module provides some common types, traits and their methods. This crate also re-export so it can be easier for you to import them.
Another common issue when people adopting a library is to deal with its error handling flow.
To prevent introducing more overhead, async_zmq
uses the exact same Result
/Error
type
in zmq
crate and re-export them.
Re-exports
pub use prelude::*; |
Modules
dealer | DEALER socket module of Request-reply pattern in ZMQ |
pair | PAIR socket module of Exclusive pair pattern in ZMQ |
prelude | The prelude re-exports most commonly used traits and macros from this crate. |
publish | PUB socket module of Pub-Sub pattern in ZMQ |
pull | PULL socket module of Pipeline pattern in ZMQ |
push | PUSH socket module of Pipeline pattern in ZMQ |
reply | REP socket module of Request-reply pattern in ZMQ |
request | REQ socket module of Request-request pattern in ZMQ |
router | ROUTER socket module of Request-reply pattern in ZMQ |
stream | STREAM socket module of Pub-Sub pattern in ZMQ |
subscribe | SUB socket module of Pub-Sub pattern in ZMQ |
xpublish | XPUB socket module of Pub-Sub pattern in ZMQ |
xsubscribe | XSUB socket module of Pub-Sub pattern in ZMQ |