GRPC:何时获得新客户?

时间:2019-06-05 18:44:13

标签: go grpc

我在项目中使用grpc,如果我有一个grpc服务调用helloService,是否应该使用GetNewHelloServiceClient在每个函数中获取一个新客户端?或者只是进入启动程序一次?

// for example:

c.GET("/hello", SayHello)

func SayHello() {
    c := pb.GetNewHelloServiceClient()
    res, err := c.SayHello(context.Background(), &request)

    if err != nil {
     return
    }
    fmt.print(res.Hello)
}

1 个答案:

答案 0 :(得分:1)

仅创建一次gRPC客户端。

go中的许多网络概念都是为重用而设计的:http客户端,http传输,sql.DB连接池等。它们都是例行安全的,并且只能创建一次,但可以重复使用多次。