Welcome to aiomas’ documentation!¶
aiomas is an easy-to-use library for request-reply channels, remote procedure calls (RPC) and multi-agent systems (MAS). It’s written in pure Python on top of asyncio.
The package is released under the MIT license. It requires Python 3.4 and above and runs on Linux, OS X, and Windows.
- Three layers of abstraction around raw TCP / unix domain sockets:
- Request-reply channels
- Remote-procedure calls (RPC)
- Agents and containers
- TLS support for authorization and encrypted communication.
- Interchangeable and extensible codecs: JSON and MsgPack (the latter optionally compressed with Blosc) are built-in. You can add custom codecs or write (de)serializers for your own objects to extend a codec.
- Deterministic, emulated sockets: A LocalQueue transport lets you send and receive message in a deterministic and reproducible order within a single process. This helps testing and debugging distributed algorithms.
- Topical Guides
- Developer Docs
- API reference