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

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page