我试图用gRPC AsyncIO API实现gRPC服务器。我使用这个example作为示例,并试图定义服务器上的最大并发rpcs限制,如gRPC AsyncIO server source code中的源代码文档所述。 以下是我的实现:
import asyncio
from grpc.experimental import aio
import helloworld_pb2
import helloworld_pb2_grpc
class Greeter(helloworld_pb2_grpc.GreeterServicer):
async def SayHello(self, request, context):
return helloworld_pb2.HelloReply(message='Hello, %s!' % request.name)
async def serve():
server = aio.server(maximum_concurrent_rpcs = 10)
helloworld_pb2_grpc.add_GreeterServicer_to_server(Greeter(), server)
listen_addr = '[::]:50051'
server.add_insecure_port(listen_addr)
logging.info("Starting server on %s", listen_addr)
await server.start()
await server.wait_for_termination()
if __name__ == '__main__':
asyncio.run(serve())
但它引发了以下例外情况:
AttributeError: 'Server' object has no attribute '_server'
我的问题是,如何定义具有最大并发rpcs限制的gRPC异步IO服务器
注意helloworld_pb2
和helloworld_pb2_grpc
在这个repositroy中可用
由于此导入,您似乎没有使用最新版本
相关问题 更多 >
编程相关推荐