欢迎光临散文网 会员登陆 & 注册

一键生成通用的微服务(gRPC)项目代码,让你的开发效率至少提升2倍

2023-04-17 00:41 作者:gopher的院子  | 我要投稿

在使用protobuf的微服务中,通常添加新rpc方法的步骤:

  • (1) 通常先在proto文件定义rpc方法和message

  • (2) 根据proto文件生成pb.go文件

  • (3) 实现server端的rpc方法接口,在实现rpc方法函数里面编写业务逻辑代码

  • (4) 使用第三方工具或写一个调用rpc方法的客户端来测试

本文介绍的生成代码工具sponge,可以极大简化这些步骤,只需在proto文件定义rpc方法和message,然后在生成的模板文件填写业务逻辑代码这两个步骤,其他步骤的代码都已经生成了。

生成通用微服务(grpc)项目代码批量添加任意rpc方法代码这两个功能已经集成在生成代码工具sponge中。

  • 安装sponge地址:https://github.com/zhufuyi/sponge/blob/main/assets/readme-cn.md#%E5%BF%AB%E9%80%9F%E5%AE%89%E8%A3%85sponge

安装完sponge后,执行命令打开UI界面:


快速创建微服务项目

创建微服务前先准备一个proto文件,user.proto文件内容如下:

进入sponge的UI界面,点击左边菜单栏【protobuf】--> 【RPC类型】-->【创建RPC项目】,填写一些参数就可以生成通用的微服务项目代码了,下载源码地址 https://wwzy.lanzoub.com/iACyp0t2lo3a 。

微服务框架使用 grpc,还包含了常用的服务治理功能代码,构建部署脚本等,使用什么数据库由自己选择。


生成微服务项目代码的详细演示过程请看B站视频 https://www.bilibili.com/video/BV1WY4y1X7zH/


生成rpc服务代码

切换到user目录,执行命令:

使用goland IDE打开user服务代码,进入internal/service目录下,打开user_client_test.go文件,可以在这里测试rpc方法,类似在swagger界面测试接口,测试前填写参数,点击绿色按钮进行测试。

测试rpc方法


批量添加任意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方法了。


一键生成通用的微服务(gRPC)项目代码,让你的开发效率至少提升2倍的评论 (共 条)

分享到微博请遵守国家法律