Python 3 resolver for go-micro grpc services.
Project description
Python 3 resolver for go-micro grpc services.
Installation
pip install micro-client
Compiling
Make sure you have the needed protobuf and plugins.
Notes: * Make sure you have the python package grpcio-tools installed!
PATH=$PATH:$GOBIN_PATH protoc -I=$SOURCE_OF_MICRO_PROJECT --proto_path=$GOPATH/src:. --python_out=plugins=micro,grpc:. $PATH_TO_PROTO_FILE
python -m grpc_tools.protoc -I=$SOURCE_OF_MICRO_PROJECT --python_out=. --grpc_python_out=. $PATH_TO_PROTO_FILE
Etcd
from micro_client.registry import EtcdRegistry, EtcdClient
from micro_client.common import Services
etcd_client = EtcdClient(host='localhost', port=2379)
prefix = "/micro/registry/"
s = Services(EtcdRegistry(etcd_client, prefix))
Consul
import requests
from micro_client.registry.consulregistry import Registry
from micro_client.common import Services
s = Services('http://127.0.0.1:8500/v1', session=requests.Session()))
Use it!
# Import the stub and grpc structures for use
from some_pb2_grpc import SomeStub
from some_pb2 import Input, Structures
# Get the stub
stub = s.insecure('base_user_cf', SomeStub)
# Call it
result = stub.SomeCall(Input(Data=1), Structures(Some="data", ID=1))
# 如果 连接无法使用, reset stub
stub = s.insecure('base_user_cf', SomeStub)
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
micro-client-1.0.1.tar.gz
(4.5 kB
view hashes)
Built Distribution
Close
Hashes for micro_client-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ebdfe519aaf3e2ecd45f858b4dd236e7cd4e82de079538d820ff359ded725b4 |
|
MD5 | 2025c1fc91207c55cb2ffcb4fa7ecbcc |
|
BLAKE2b-256 | 8adba235977dc8bc1ab8ebed003fbe800a020d4d5d136814a81876aa3a39872b |