GoFrame:如何简单地搭建一个简单地微服务

一切资料来源于GoFrame官网, 感兴趣的, 可以直接去官网查阅相关资料。

首先下载框架工具, 下载地址:https://github.com/gogf/gf/releases

然后进入你想要放置的项目文件夹, 执行命令行

bash 复制代码
gf init {project_name} #project_name为你的项目名

执行完后项目结构如图所示

然后打开mysql数据库, 新建数据库, 库中新建一张表(一般都会结合数据存储去做服务, 所以这里结合数据库说明)

然后再项目文件中添加数据库配置

然后再命令行执行如下命令, 从数据库中反向映射模型

bash 复制代码
gf gen pbentity

即可在项目中的manifest/protobuf中生成pbentity模型文件夹, 生成的proto文件, proto为Google官方开发的数据格式, 数据传输比json高效, 感兴趣的话, 可以自行了解。

然后再protobuf中撰写一个接口文件

然后执行如下命令生成接口和控制器文件

bash 复制代码
gf gen pb

此时会生成对应的接口文件如下:

然后执行如下命令, 反向映射dao模型文件

bash 复制代码
gf gen dao

可以看到dao中和model中多了t_person.go等文件

然后去logic编写服务给controller调用, 在logic中构建person.go文件

然后执行命令生成service接口

bash 复制代码
gf gen service

可以看到service中生成了person.go文件, 里面内容是申明了person服务的接口, 然后再logic/person/person.go中注册服务接口

然后再controller中重写person的控制器方法调用service即可完成整个api调用链路

最后回到internal/cmd/cmd.go中构建grpc命令, 并且注册控制器成为路由, 即可完成整个服务的构建

然后启动main.go, 即可启动整个服务了, 启动结果如下:

相关推荐
X54先生(人文科技)9 分钟前
关于“778之问”与“X54之答”的文明范式校验报告
人工智能·架构·开源·开源协议
jiayong231 小时前
RAG系列(三):实践案例与高级优化
ai·架构·rag·智能体
乐兮创想 小林1 小时前
金融投资官网的工程化设计:投资者关系信息架构、合规内容管理与系统对接
金融·架构·网站建设·企业官网·北京网站建设公司
a23121212 小时前
从零搭建Spring Ai多智能体后端应用
java·运维·微服务·多智能体·后端开发·spring ai
MRSM_012 小时前
若依微服务版(RuoYi-Cloud)快速上手
微服务·架构
hh.h.2 小时前
昇腾 CANN driver 层架构:软硬件接口的深度解析
架构·昇腾·driver·cann
国科安芯3 小时前
基于RISC-V架构的商业航天级MCU国产化技术路径与产业生态研究
网络·分布式·单片机·嵌入式硬件·架构·risc-v·安全性测试
fan65404143 小时前
GEO优化的技术底层:从RAG架构到信任链构建
人工智能·架构·信任链
名不经传的养虾人3 小时前
从0到1:企业级AI项目迭代日记 Vol.34|知识图谱接进来、异步嵌套修掉、依赖往回收——藏在修复里的三层架构演进
人工智能·架构·知识图谱·agent·ai编程·ai创业·企业ai
拓研C4 小时前
EM-Core自动驾驶类脑世界模型——全域客观认知底座(V1.0 正式版)
人工智能·机器学习·架构·机器人·自动驾驶·迁移学习·agi