参考文档: https://github.com/mbobakov/grpc-consul-resolver
package initializeimport ("fmt""go_final/mxshop-api/global"userpb "go_final/mxshop-api/proto/protofile"_ "github.com/mbobakov/grpc-consul-resolver" // It's important(这个一定要导入)"go.uber.org/zap""google.golang.org/grpc")// InitSrvConnWithLoadBalance 负载均衡拉取服务func InitSrvConnWithLoadBalance() {conn, err := grpc.Dial(fmt.Sprintf("consul://%s:%d/%s?wait=14s",global.ServerConfig.ConsulInfo.Host,global.ServerConfig.ConsulInfo.Port,global.ServerConfig.UserSrvInfo.Name,),grpc.WithInsecure(),grpc.WithDefaultServiceConfig(`{"loadBalancingPolicy": "round_robin"}`),)if err != nil {zap.S().Info("[InitSrvConnWithLoadBalance] 连接 【用户服务不可用】失败")}// defer conn.Close()global.UserClient = userpb.NewUserClient(conn)}
