trpc 代码支持grpc
生成协议代码
原生的 protoc-gen-grpc 生成的协议桩代码不符合trpc的协议
grpc response 在 rpc 的出参中,而trpc放在rpc的入参
改造protoc-gen-grpc 代码 支持trpc的协议,插件 protoc-gen-trpc2grpc
- 安装 protoc-gen-trpc2grpc
go get github.com/submarineCluster/protoc-gen-trpc2grpc
也可安装腾讯内部版
go get git.woa.com/tencent_abtest/open-source/protoc-gen-trpc2grpc
执行完go get,可执行文件 protoc-gen-trpc2grpc 会存放在 $GOPATH/bin 下,记得将该路径放到 path 中
- 生成桩代码
protoc --proto_path=/Users/shaohui/Code/gopath/src:/Users/shaohui/Code/gopath/src/git.code.oa.com/trpcprotocol:. --trpc2grpc_out=require_unimplemented_servers=false:. ./tab_sdk_api_server.proto
├── go.mod
├── go.sum
├── makefile
├── tab_sdk_api_server.pb.go
├── tab_sdk_api_server.proto
├── tab_sdk_api_server.trpc.go
├── tab_sdk_api_server_mock.go
└── tab_sdk_api_server_trpc2grpc.pb.go
注册 grpc 服务
仅需将trpc的 service impl 注册给到grpc server即可