环境准备
开发流程
https://go-zero.dev/cn/docs/prepare/dev-flow
- goctl环境准备
- 数据库设计
- 业务开发
- 新建工程
- 创建服务目录
- 创建服务类型(api/rpc/rmq/job/script)
- 编写api、proto文件
- 代码生成
- 生成数据库访问层代码model
- 配置config,yaml变更
- 资源依赖填充(ServiceContext)
- 添加中间件
- 业务代码填充
- 错误处理
Go Module设置
查看GO111MODULE开启情况
1 2 |
|
开启GO111MODULE,如果已开启(即执行go env GO111MODULE结果为on)请跳过。
1 |
|
设置GOPROXY
1 |
|
设置GOMODCACHE
查看GOMODCACHE
1 2 |
|
如果目录不为空或者/dev/null,请跳过。
1 |
|
Goctl安装
Goctl在go-zero项目开发着有着很大的作用,其可以有效的帮助开发者大大提高开发效率,减少代码的出错率,缩短业务开发的工作量
很多人会把 goctl 读作 go-C-T-L
,这种是错误的念法,应参照 go control
读做 ɡō kənˈtrōl
。
1 2 |
|
通过此命令可以将goctl工具安装到 $GOPATH/bin 目录下
如果装完没有 goctl,可以编辑一下 .zshrc
, 添加以下内容
1 |
|
然后
1 2 3 4 5 6 |
|
protoc & protoc-gen-go安装
protoc是一款用C++编写的工具,其可以将proto文件翻译为指定语言的代码。
在go-zero的微服务中,我们采用grpc进行服务间的通信,而grpc的编写就需要用到protoc和翻译成go语言rpc stub代码的插件protoc-gen-go。
1 2 3 4 5 6 7 8 9 10 |
|