duanchi4184 2018-02-08 07:11
浏览 525
已采纳

如何正确设置gRPC客户端-服务器

I have a gRPC client and a server, when I run them they seem to be running fine, but when I try to dial a server with a client I get an error:

"Error": {
    "code": 14,
    "message": "all SubConns are in TransientFailure"
},

No idea what is it. I tried to find a solution with google, no success there.

Any ideas? Here is my server code:

lis, err := net.Listen("tcp", fmt.Sprintf("%s:%d", cfg.Host, cfg.Port))
if err != nil {
    logger.Critical(ctx, "failed to listen: %v", err)
} else {
    logger.Info(ctx, "[userserver] running at %s:%d", cfg.Host, cfg.Port)
}

grpcServer := grpc.NewServer()
userServer := userserver.New()
pb.RegisterDomainServer(grpcServer, userServer)
rpcErr := grpcServer.Serve(lis)

if rpcErr != nil {
    logger.Critical(ctx, "failed to serve: %v", rpcErr)
}

btw the server here shows log:

2018/02/08 07:03:37.603287 INFO: [userserver] running at localhost:3001

and client:

conn, err := grpc.Dial(c.serverAddr, grpc.WithInsecure())
if err != nil {
    return err
}
defer conn.Close()

client := pb.NewDomainClient(conn)
_, err = client.Dispatch(ctx, &pb.Command{
    Name:    command,
    Payload: payload,
})

and this is port buff

service Domain {
  rpc Dispatch(Command) returns (Response);
}

message Command {
  string name = 1;
  bytes payload = 2;
}

message Response {}
  • 写回答

2条回答 默认 最新

  • douba6365 2018-02-08 15:33
    关注

    Is the server listening to that port?

    // Most linux 
    lsof -i :3001
    
    // OSX
    lsof -iTCP -sTCP:LISTEN -P
    

    Are you connecting the client to the right address?

    c.serverAddr should be "127.0.0.1:3001"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥15 有一台三相异步电动机 M1控制一个小车,有四个控制按钮,一个复位、一个启动、一个停止,还有一个急停,两个行程开关分别为上限位和下限位。 上限位。 下限位。
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题
  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 mac电脑,安装charles后无法正常抓包
  • ¥18 visio打开文件一直显示文件未找到
  • ¥15 请教一下,openwrt如何让同一usb储存设备拔插后设备符号不变?