Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vd2org/sarpc
Simple asynch rpc for python asyncio
https://github.com/vd2org/sarpc
aiohttp asyncio jsonrpc nats python rpc
Last synced: about 2 months ago
JSON representation
Simple asynch rpc for python asyncio
- Host: GitHub
- URL: https://github.com/vd2org/sarpc
- Owner: vd2org
- License: mit
- Created: 2018-04-27T12:09:25.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-02-26T11:45:46.000Z (almost 6 years ago)
- Last Synced: 2024-10-21T11:42:52.910Z (3 months ago)
- Topics: aiohttp, asyncio, jsonrpc, nats, python, rpc
- Language: Python
- Homepage:
- Size: 37.1 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Powerful asyncio rpc library
The arpc is a complex asynchonius framework. It implements an rpc client and an rpc server on top of the up-to-date
python asyncio framework.Comes in with the three following features;
1. A rpc Protocol API
2. Serializator is a serialization/deserialization module
3. protocol data to binary form converter
4. transport that transfers serialized data from client to server and back.You can use any combination of protocols, serializarors and transportes or extend the framework with your own
implementations.Initial code was derived from [tinyrpc](https://tinyrpc.readthedocs.io/en/latest/) but now has been completely rewriten.
Pull requests are welcome.
## Supported protocols
* [JSONRPC 2.0](https://www.jsonrpc.org/specification)
* pythonrpc## Supported serializators
* json
* pickle
* msgpack## Supported transports
* local for inporcess testing
* aiohttp via [aiohttp](https://aiohttp.readthedocs.io/en/stable/)
* nats via [asyncio-nats-client](https://github.com/nats-io/asyncio-nats)
* ZeroMQ via [pyzmq](https://pyzmq.readthedocs.io/en/latest/)## Requirements
* Python 3.6 or higher
## Optional requirements
* aiohttp for aiohttp transport
* asyncio-nats-client for nats transport
* pyzmq for ZeroMQ transport