当服务为format< my时,如何在客户端指定grpc服务器地址目标-service:port>

rseugnpd  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(260)

我们在java应用程序服务上使用grpcspringbootstarter是为了建立到另一个“服务器”服务的连接,所以我在 application.properties 以下地址:

grpc.client.name.address=static://service-name:port

尝试连接时,我收到以下错误消息:

StatusRuntimeException: UNAVAILABLE: io exception

所以我确定我有一个连接问题。关于静态方案的文件上说:
一个简单的IP静态列表(v4和v6),可用于连接服务器
所以我想这不是我需要用的。在我看来,最好的选择是使用 discovery 方案,但它不包含任何端口。。。
我需要使用什么样的方案配置来设置服务器地址?

a5g8bdjr

a5g8bdjr1#

它是由grpc无法解析地址引起的 service-name:port ;
如果你使用 static ,值必须为 ip:port ; 这个 service-name 需要解析为ip地址;
如果您使用的是注册中心,如领事馆或Eureka 等,您应该使用 discovery:///service-name 没有指定端口。
如果您没有使用注册中心,只使用服务器端到端,请更换 service-name 像ip一样 127.0.0.1 属于服务器的;
或修改主机配置进行解析 service-name 如下所示,linux上的文件是 /etc/hosts ```
127.0.0.1 service-name

相关问题