ZeroMQ integration with asyncio.
Project description
asyncio (PEP 3156) support for ZeroMQ.
Documentation
RPC Example
Simple client-server RPC example:
import asyncio import aiozmq import aiozmq.rpc class ServerHandler(aiozmq.rpc.AttrHandler): @aiozmq.rpc.method def remote_func(self, a:int, b:int) -> int: return a + b @asyncio.coroutine def go(): server = yield from aiozmq.rpc.start_server( ServerHandler(), bind='tcp://127.0.0.1:5555') client = yield from aiozmq.rpc.open_client( connect='tcp://127.0.0.1:5555') ret = yield from client.rpc.remote_func(1, 2) assert 3 == ret server.close() client.close() asyncio.set_event_loop_policy(aiozmq.ZmqEventLoopPolicy()) asyncio.get_event_loop().run_until_complete(go())
Requirements
Python 3.3+
pyzmq 13.1+
asyncio http://code.google.com/p/tulip/ or Python 3.4+
optional submodule aiozmq.rpc requires msgpack-python
License
aiozmq is offered under the BSD license.
CHANGES
0.1.0 (XXXX-XX-XX)
Implement ZmqEventLoop with create_zmq_connection method which operates on zmq transport and protocol.
Implement ZmqEventLoopPolicy.
Introduce ZmqTransport and ZmqProtocol.
Implement zmq.rpc with RPC, PUSHPULL and PUBSUB protocols.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiozmq-0.1.0b6.tar.gz
(20.0 kB
view hashes)