也许(希望)我错过了一些非常简单的事情,但我似乎无法弄清楚这一点。
我有一套gRPC服务,我想把它放在nghttpx代理后面。为此,我需要能够使用非根URL上的通道配置我的客户端。例如
channel = grpc.insecure_channel('localhost:50051/myapp')
stub = MyAppStub(channel)
这不能立即通过代理工作(它只是挂起),所以我在子上下文中测试了服务器。
server = grpc.server(executor)
service_pb2.add_MyAppServicer_to_server(
MyAppService(), server)
server.add_insecure_port('{}:{}/myapp'.format(hostname, port))
server.start()
我得到以下
E1103 21:00:13.880474000 140735277326336 server_chttp2.c:159]
{"created":"@1478203213.880457000","description":"OS Error",
"errno":8,"file":"src/core/lib/iomgr/resolve_address_posix.c",
"file_line":115,"os_error":"nodename nor servname provided, or not known",
"syscall":"getaddrinfo","target_address":"[::]:50051/myapp"}
所以问题是 - 是否可以在非根网址上创建gRPC频道?