hrpc/README.md
2020-08-09 02:52:29 +02:00

893 B

hrpc

Build Status

Simple RPC with Protobuf Services

Install

$ pip install hrpc

Example

TLDR; See the example directory

Define an RPC service in a schema.proto.

syntax = "proto2";

message EchoMsg {
  required string value = 1;
}

service Example {
  rpc Echo (EchoMsg) returns (EchoMsg) {}
}

Then generate the services and stubs with hrpc.

$ pip install hrpc
$ hrpc schema.proto

This creates schema_gprc.py (services) and schema_pb2.py (stubs) files.

You can then write a async-ready server and client like so.

# server.py
# client.py

And run them in separate terminals to see the output.

$ python server.py # terminal 1
$ python client.py # terminal 2