一键生成通用的微服务 (gRPC) 项目代码,让你的开发效率翻倍提升
在使用 protobuf 的微服务中,通常添加新 rpc 方法的步骤:
(1) 通常先在 proto 文件定义 rpc 方法和 message
(2) 根据 proto 文件生成 pb.go 文件
(3) 实现 server 端的 rpc 方法接口,在实现 rpc 方法函数里面编写业务逻辑代码
(4) 使用第三方工具或写一个调用 rpc 方法的客户端来测试
本文介绍的生成代码工具 sponge,可以极大简化这些步骤,只需在 proto 文件定义 rpc 方法和 message,然后在生成的模板文件填写业务逻辑代码这两个步骤,其他步骤的代码都已经生成了。
生成通用微服务(grpc)项目代码
和批量添加任意rpc方法代码
这两个功能已经集成在生成代码工具 sponge 中。
安装完 sponge 后,执行命令打开 UI 界面:
快速创建微服务项目
创建微服务前先准备一个 proto 文件,user.proto 文件内容如下:
进入 sponge 的 UI 界面,点击左边菜单栏【protobuf】--> 【RPC 类型】-->【创建 RPC 项目】,填写一些参数就可以生成通用的微服务项目代码了。
微服务框架使用 grpc,还包含了常用的服务治理功能代码,构建部署脚本等,使用什么数据库由自己选择。
生成微服务项目代码的详细演示过程请看 B 站视频 https://www.bilibili.com/video/BV1WY4y1X7zH/
切换到 user 目录,执行命令:
使用 goland IDE 打开 user 服务代码,进入 internal/service 目录下,打开user_client_test.go
文件,可以在这里测试 rpc 方法,类似在 swagger 界面测试接口,测试前填写参数,点击绿色按钮进行测试。
批量添加任意 api 接口代码嵌入到微服务
打开文件api/user/v1/user.proto
,添加修改密码和登出 2 个 rpc 方法,也可以在新创建的 proto 文件添加 rpc 方法。
添加 rpc 方法的详细演示过程请看 B 站视频 https://www.bilibili.com/video/BV1Yo4y1q76o/
切换到 user 服务目录,执行命令:
使用 goland IDE,进入 internal/service 目录下,打开user_client_test.go
文件,可以在这里测试新添加的 rpc 方法了。
这是根据上面步骤生成的完整源码: https://wwzy.lanzoub.com/iACyp0t2lo3a
评论