Skip to main content

lightweight rpc framework

Project description

Lightweight Remote Procedure Call framework. Only two components are of importance:

RpcServer
A long-running server, where callables can be registered.
remote_call
A single-use client, to call procedures on an RpcServer.

Overview

On the server side, you can define and register callables. These are then exposed by name:

def pingpong(*args, **kwargs):
    return args, kwargs

with RpcServer(23000) as server:
    server.register(pingpong)
    server.run()

On the client side, you can directly dispatch a remote_call. This will block until a reply is available:

remote_call('localhost', 23000, 'pingpong', 'hello', 'world')

About

This is a simple RPC library, primarily for prototyping and education setups. It uses a JSON based protocol, which protects against undesired code execution. Any complex protocols, such as packed or pickle based data, can be implemented on top.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for rpconnect, version 0.10.0
Filename, size File type Python version Upload date Hashes
Filename, size rpconnect-0.10.0.tar.gz (3.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page