示例四:一键自动生成通用微服务(grpc)项目代码,轻松实现高效的微服务开发

zhufuyi · 2023-11-08 22:13:13 · 1457 次点击 · 预计阅读时间 2 分钟 · 大约8小时之前 开始浏览    
这是一个创建于 2023-11-08 22:13:13 的文章,其中的信息可能已经有所发展或是发生改变。

在使用protobuf协议的grpc服务中,通常添加新grpc方法的步骤:

  1. 在proto文件定义grpc方法和message。
  2. 根据proto文件生成pb.go文件。
  3. 实现server端的grpc方法接口,在实现grpc方法函数里面编写业务逻辑代码。
  4. 使用第三方工具或写一个调用grpc方法的客户端来测试。

其实这四个步骤中涉及的绝大多数代码可以自动生成,简化到只需在proto文件定义grpc方法和message,然后在生成的模板文件填写具体业务逻辑代码即可。


依赖工具

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

sponge run


快速创建微服务项目

进入sponge的UI界面,点击左边菜单栏【Protobuf】-->【创建微服务项目】,填写一些参数生成通用的微服务项目代码。

micro-rpc-pb.png

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

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

# 生成代码
make proto

# 打开internal/service/user.go代码文件,根据生成的示例代码填写具体逻辑代码。

# 编译和启动服务
make run

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

micro-rpc-pb-test.png


这是根据上面步骤生成的通用微服务代码 https://github.com/zhufuyi/sponge_examples/tree/main/4_micro-grpc-protobuf

在生成的通用微服务代码上可以自动添加CRUD api接口人工添加自定义api接口,点击查看详细的开发通用微服务文档 https://go-sponge.com/zh-cn/microservice-development-protobuf




有疑问加站长微信联系(非本文作者))

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1457 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传