gRPC 解析器与选择器的实现与测试
1. 解析器的实现
1.1 创建解析器包
首先,为解析器和选择器代码创建一个新包,在终端中运行以下命令:
$ mkdir internal/loadbalance
1.2 定义解析器结构体
在 internal/loadbalance 目录下创建 resolver.go 文件,代码如下:
package loadbalance
import (
"context"
"fmt"
"sync"
"go.uber.org/zap"
"google.golang.org/grpc"
"google.golang.org/grpc/attributes"
"google.golang.org/grpc/resolver"
"google.golang.org/grpc/serviceconfig"
api "github.com/travisjeffery/proglog/api/v1"
)
type Resolver struct {
mu sync.Mutex
clientConn resolver.ClientConn
resolverConn *grpc.ClientConn
serviceConfig *serviceconfig.ParseRe
超级会员免费看
订阅专栏 解锁全文
30

被折叠的 条评论
为什么被折叠?



