Fast, non-blocking RPC system.
Project description
Speedy - A Fast RPC System for Python
=====================================
A fast non-blocking RPC library for Python.
Installation
------------
pip install [--user] speedy
or
easy_install speedy
Usage
-----
##### Imports
import speedy
from speedy import zeromq
##### Server
class MyServer(speedy.Server):
def foo(self, handle, request):
handle.done(do_something(request.foo, request.bar))
server = MyServer(zeromq.server_socket(('127.0.0.1', port)))
# or use -1 to have the server grab an open port
# server = MyServer(zeromq.server_socket(('127.0.0.1', -1)))
server.serve() # blocks until server exits
##### Client
client = speedy.Client(zeromq.client_socket(('127.0.0.1', server_port)))
# requests are arbitrary python objects
request = { 'foo' : 123, 'bar' : 456 }
future = client.foo(request)
# Wait for the result. If the server encountered an error,
# an speedy.RemoteException will be thrown.
result = future.wait()
Feedback
--------
Questions, comments: <power@cs.nyu.edu>
=====================================
A fast non-blocking RPC library for Python.
Installation
------------
pip install [--user] speedy
or
easy_install speedy
Usage
-----
##### Imports
import speedy
from speedy import zeromq
##### Server
class MyServer(speedy.Server):
def foo(self, handle, request):
handle.done(do_something(request.foo, request.bar))
server = MyServer(zeromq.server_socket(('127.0.0.1', port)))
# or use -1 to have the server grab an open port
# server = MyServer(zeromq.server_socket(('127.0.0.1', -1)))
server.serve() # blocks until server exits
##### Client
client = speedy.Client(zeromq.client_socket(('127.0.0.1', server_port)))
# requests are arbitrary python objects
request = { 'foo' : 123, 'bar' : 456 }
future = client.foo(request)
# Wait for the result. If the server encountered an error,
# an speedy.RemoteException will be thrown.
result = future.wait()
Feedback
--------
Questions, comments: <power@cs.nyu.edu>
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
speedy-0.23.tar.gz
(10.3 kB
view details)
File details
Details for the file speedy-0.23.tar.gz
.
File metadata
- Download URL: speedy-0.23.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af0405c552f104ad21b183350a50d8bdf6bdd69a3fef328098dc503afc0afddb |
|
MD5 | 6ef04ff8cd928113315e36097f36da8d |
|
BLAKE2b-256 | 339aa3018fca2f4ca8709b6e1cfed227307fd8c902bc09f593a3c4ae954a7967 |