Initial working version
This commit is contained in:
commit
959be5996a
3
bootstrap.sh
Executable file
3
bootstrap.sh
Executable file
@ -0,0 +1,3 @@
|
||||
python3 -m grpc_tools.protoc -I protos --python_out=python-server --grpc_python_out=python-server protos/hello.proto
|
||||
python3 -m grpc_tools.protoc -I protos --python_out=python-client --grpc_python_out=python-client protos/hello.proto
|
||||
|
13
protos/hello.proto
Normal file
13
protos/hello.proto
Normal file
@ -0,0 +1,13 @@
|
||||
syntax = "proto3";
|
||||
|
||||
message GreetRequest {
|
||||
string message = 1;
|
||||
}
|
||||
|
||||
message GreetReply {
|
||||
string message = 1;
|
||||
}
|
||||
|
||||
service HelloService {
|
||||
rpc greet(GreetRequest) returns (GreetReply);
|
||||
}
|
13
python-client/greet_client.py
Executable file
13
python-client/greet_client.py
Executable file
@ -0,0 +1,13 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import grpc
|
||||
|
||||
import hello_pb2
|
||||
import hello_pb2_grpc
|
||||
|
||||
channel = grpc.insecure_channel("localhost:50505")
|
||||
stub = hello_pb2_grpc.HelloServiceStub(channel)
|
||||
|
||||
reply = stub.greet(hello_pb2.GreetRequest(message="Hello service"))
|
||||
|
||||
print(f"service replied \"{reply.message}\"")
|
27
python-server/greet_server.py
Executable file
27
python-server/greet_server.py
Executable file
@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import grpc
|
||||
|
||||
import hello_pb2
|
||||
import hello_pb2_grpc
|
||||
|
||||
from concurrent import futures
|
||||
|
||||
import time
|
||||
|
||||
class GreetServer(hello_pb2_grpc.HelloServiceServicer):
|
||||
def greet(self, request, context):
|
||||
print(f"received \"{request.message}\"")
|
||||
return hello_pb2.GreetReply(message="Hello back")
|
||||
|
||||
|
||||
def serve():
|
||||
server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
|
||||
hello_pb2_grpc.add_HelloServiceServicer_to_server(GreetServer(), server)
|
||||
server.add_insecure_port("[::]:50505")
|
||||
server.start()
|
||||
server.wait_for_termination()
|
||||
|
||||
if __name__ == "__main__":
|
||||
print("serving...")
|
||||
serve()
|
Reference in New Issue
Block a user