go-zero的安装及使用
一、linux 安装Go
解压压缩包至/usr/local
$ tar -C /usr/local -xzf go1.15.8.linux-amd64.tar.gz
添加/usr/local/go/bin到环境变量
$ $HOME/.profile
export PATH=$PATH:/usr/local/go/bin
$ source $HOME/.profile验证安装结果
$ go version
go version go1.15.1 linux/amd64
二、Go Module
查看GO111MODULE开启情况
$ go env GO111MODULE
开启GO111MODULE,如果已开启(即执行go env GO111MODULE结果为on)请跳过
$ go env -w GO111MODULE=”on”
设置GOPROXY
$ go env -w GOPROXY=https://goproxy.cn
设置GOMODCACHE
$ go env GOMODCACHE
如果目录不为空或者/dev/null,请跳过。
go env -w GOMODCACHE=$GOPATH/pkg/mod
三、Goctl安装
安装及下载
GO111MODULE=on GOPROXY=https://goproxy.cn/,direct go get -u github.com/tal-tech/go-zero/tools/goctl
安装结果验证
$ goctl -v
protoc & protoc-gen-go安装
1.protoc
进入[ protobuf release ] 页面,选择适合自己操作系统的压缩包文件
解压protoc-3.14.0-osx-x86_64.zip并进入protoc-3.14.0-osx-x86_64
$ cd protoc-3.14.0-osx-x86_64/bin
将启动的protoc二进制文件移动到被添加到环境变量的任意path下,如$GOPATH/bin,这里不建议直接将其和系统的以下path放在一起
$ mv protoc $GOPATH/bin
验证安装结果
$ protoc –version
2.protoc-gen-go
- 下载安装protoc-gen-go
$ go get -u github.com/golang/protobuf/protoc-gen-go@v1.3.2
go: found github.com/golang/protobuf/protoc-gen-go in github.com/golang/protobuf v1.4.3
go: google.golang.org/protobuf upgrade => v1.25.0
3.etcd安装 (ZooKeeper区别)
- 高一致性 发现服务 配置共享
- 后续 使用kq异步队列包 go-queue会接触到(主要是kafka[zookeeper]异步推送消息)
四、使用goctl(go control)创建服务
快速创建服务
goctl api new greet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17.
├── etc
│ └── greet-api.yaml
├── greet.api
├── greet.go
└── internal
├── config
│ └── config.go
├── handler
│ ├── greethandler.go
│ └── routes.go
├── logic
│ └── greetlogic.go
├── svc
│ └── servicecontext.go
└── types
└── types.goapi 网关层
goctl api -o blog.api
rpc 服务
goctl rpc template -o user.proto
goctl rpc proto -src user.proto -dir .
欢迎点击上方按钮对我打赏,谢谢你给我吃糖果