Skip to main content

Python RSocket library

Project description

RSocket-py

Python implementation of RSocket

Installation

The latest version from pypi can be installed using:

pip install rsocket

or install any of the extras:

  • rx
  • aiohttp
  • quart
  • uic

Example:

pip install --pre rsocket[rx]

Alternatively, download the source code, build a package:

python3 setup.py bdist_wheel

and use the resulting package from the ./dist folder, or install locally:

python3 setup.py install

Documentation

Documentation is available on the official rsocket.io site.

Examples

Examples can be found in the /examples folder. It contains various server and client usages. The following is a table denoting which client example is constructed to be run against which server example. Some of the examples are in java to show compatibility with a different implementation.

The examples/test_examples.py shows which pairs of client/server work with each other, and can be used to execute all the examples (except for the client_springboot.py which is set up to work against https://github.com/benwilcock/spring-rsocket-demo)

server (python) server (java) client (python) client(java)
server.py client.py
server_quic.py client_quic.py
server_with_lease.py ClientWithLease
server_with_routing.py client_with_routing.py Client
server_with_routing.py client_rx.py
server_with_routing.py client_reconnect.py
Server run_against_example_java_server.py
server_quart_websocket.py client_websocket.py
server_aiohttp_websocket.py client_websocket.py

Build Status

build master Coverage Status CodeQL

Progress

  • Requests
    • Fire and forget
    • Response
    • Stream
    • Channel
    • Metadata push
  • Features
    • Keepalive / Max server life
    • Lease
    • Resume
    • Fragmentation
  • Extensions
    • Composite metadata
    • Per Stream Mimetype
    • Routing
    • Authentication
  • Transports
    • TCP
    • Websocket
    • QUIC
    • HTTP/2
    • Aeron
  • RxPy Integration
    • Stream Response
    • Channel Response
    • Channel Requester stream
    • Response
  • Other
    • Error handling all scenarios in the protocol spec
    • Reconnect
    • Load balancing

Download files

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

Source Distribution

rsocket-0.3.tar.gz (35.1 kB view hashes)

Uploaded source

Built Distribution

rsocket-0.3-py3-none-any.whl (58.1 kB view hashes)

Uploaded py3

Supported by

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