1.6 KiB
1.6 KiB
gRPC 集成说明
已完成的工作
- ✅ 更新了配置结构,添加了
grpc_server配置支持 - ✅ 添加了 gRPC 依赖到
go.mod - ✅ 创建了 gRPC 客户端包装器 (
server/internal/grpc/user_client.go) - ✅ 修改了
/api/ymt/users接口使用 gRPC 调用SimpleListAllUser - ✅ 更新了路由和主程序传递 gRPC 配置
需要完成的步骤
1. 生成 Proto 文件
在项目根目录运行:
cd grpc
make generate
这将生成 grpc/user/userv1/*.pb.go 文件。
2. 下载 Go 依赖
在 server 目录运行:
cd server
go mod tidy
这将下载 google.golang.org/grpc 和 google.golang.org/protobuf 等依赖。
3. 配置 gRPC 服务器地址
确保 server/config.yaml 中配置了 gRPC 服务器地址:
app:
grpc_server:
host: "121.41.108.37"
port: "30900"
或者通过环境变量设置:
export GRPC_SERVER_HOST=121.41.108.37
export GRPC_SERVER_PORT=30900
4. 编译和运行
cd server
go build -o server ./cmd/server/main.go
./server
接口变更
/api/ymt/users 接口现在通过 gRPC 调用获取数据,而不是直接查询数据库。
请求参数:
limit(可选): 限制返回数量,默认 2000,最大 10000q(可选): 搜索关键词
响应格式:
[
{
"id": 1,
"name": "用户名(1)"
}
]
注意事项
- 如果 gRPC 服务器地址未配置,接口会返回错误
- gRPC 连接使用单例模式,整个应用共享一个连接
- 连接包含 keepalive 配置,自动维护连接健康