gRPC
- 服务发现
Code Source: https://github.com/gogf/examples/tree/main/grpc/resolver
介绍
本示例展示了如何在 GoFrame
的 gRPC
服务中使用 etcd
进行服务发现。
目录结构
.
├── client/ # 客户端示例
│ └── client.go # 带服务发现的客户端
├── controller/ # 服务控制器
│ └── helloworld.go # Hello 服务实现
├── protobuf/ # protobuf协议定义
│ └── helloworld.proto # 服务和消息定义
├── server/ # 服务器示例
│ └── server.go # 带服务注册的服务器
├── go.mod # Go 模块文件
└── go.sum # Go 模块校验和
环境要求
- Go 1.22 或更高版本
- Git
- GoFrame
- Protocol Buffers
- etcd
使用说明
-
启动
etcd
:docker run -d --name etcd -p 2379:2379 -e ALLOW_NONE_AUTHENTICATION=yes bitnami/etcd:3.4.24
-
启动服务器:
cd server
go run server.go -
运行客户端:
cd client
go run client.go