Skip to main content

Open RPC.

Project description

orpc

Open RPC.

Install

pip install orpc

Client Install

pip install orpc-client

Protocol

oRPC request

  • request_package = 4bytes-length-byteorder-big + msgstack.dumps(request_body)
  • request_body = {"event": "xxx", "args": [], "kwargs": {}}

oRPC response

  • response_package = 4bytes-length-byteorder-big + msgstack.dumps(response_body)
  • response_body = {"result": xx, "code": 0, "message": "xxx"}

simple orpc server usage

Configs

  • server.listen: 0.0.0.0
  • server.port 8392
  • server.backlog: 8192
  • server.buffer_size: 4096
  • server.rfile_buffer_size: buffer_size
  • server.wfile_buffer_size: buffer_size
  • max_request_size: 4194304
  • result_packer: zenutils.packutils.RcmPacker
  • authentication.enable
  • authentication.event
  • authentication.users
  • services
  • enable-debug-service

More configs see pypi package daemon-application.

  • services is a list of dict which item contains fields below:
    • class: str
    • args: list
    • kwargs: dict
  • authentication.users is a username and password dict.
  • The authentication.event service takes _protocol_instance as a keyword parameter.
  • Set _protocol_instance.authenticated flag to True if login success.
  • The authentication.event service's password parameter must be given in hash format, e.g. {SSM3}tcvAvgJqVjqC661OmZewsweDma4AOVaXruOtnCFqZrJoTllTYlNvcw==, a salted sm3 hash.

Command Help

test@testdeMacBook-Pro orpc % orpc --help
Usage: orpc [OPTIONS] COMMAND [ARGS]...

Options:
  --logfmt TEXT
  --logfile TEXT
  --loglevel TEXT
  --pidfile TEXT          pidfile file path.
  --workspace TEXT        Set running folder
  --daemon / --no-daemon  Run application in background or in foreground.
  -c, --config TEXT       Config file path. Application will search config
                          file if this option is missing. Use sub-command
                          show-config-fileapaths to get the searching tactics.
  --help                  Show this message and exit.

Commands:
  restart                Restart Daemon application.
  show-config-filepaths  Print out the config searching paths.
  show-configs           Print out the final config items.
  start                  Start daemon application.
  stop                   Stop daemon application.

Releases

v0.1.0

  • First release.

Project details


Download files

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

Source Distribution

orpc-0.1.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

orpc-0.1.0-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file orpc-0.1.0.tar.gz.

File metadata

  • Download URL: orpc-0.1.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for orpc-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7fd6835ba8d08edb642abff8df15303c5da19a780b2d164ea3efb924b7e84fe2
MD5 98c38a9e4842b4d09f399227ad05d2ca
BLAKE2b-256 ca30b48e769558970c03be68afbd18f2e78b769edf18c114b9097b2490830bed

See more details on using hashes here.

File details

Details for the file orpc-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: orpc-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for orpc-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e1aa3eada75753000ef5e4290b286c73b9283cbce123a23763c87aeeb41918af
MD5 3838bf8534577a098f11d7e364b87248
BLAKE2b-256 948e8dc9c0ccf78cee46ffcaa295f904f82d9a565762a6c13429a54560775de3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page