搜 索

Go-zero从入门到放弃

  • 165阅读
  • 2022年09月11日
  • 0评论
首页 / Go/Python / 正文

如果你想使用Go语言来开发微服务,你的选择无非就是go-micro、go-kit还有就是Go-zero,前两个我没用过,不做评价,今天重点说明一下Go-zero这个框架.

为何要使用Go-zero

首先go-zero对新手非常友好,上手快;其次其简洁开发量少扩展性强;再次其功能强大,能够满足你对微服务的功能需求。
以下摘自官网

强大的工具支持,尽可能少的代码编写
极简的接口
完全兼容 net/http
支持中间件,方便扩展
高性能
面向故障编程,弹性设计
内建服务发现、负载均衡
内建限流、熔断、降载,且自动触发,自动恢复
API 参数自动校验
超时级联控制
自动缓存控制
链路跟踪、统计报警等
高并发支撑,稳定保障了疫情期间每天的流量洪峰

如何使用Go-zero

Go-zero的安装

安装goctl

# 命令行安装(适用于go语言版本>=1.16)
GOPROXY=https://goproxy.cn/,direct go install github.com/zeromicro/go-zero/tools/goctl@latest
# 确保新安装的goctl在GOPATH/bin目录下,若没有则添加命令行
vi .bashrc
# 添加
> export PATH=$PATH:$GOPATH/bin
source .bashrc
# 检查goctl是否安装完成
goctl -v
# goctl version 1.4.0 darwin/amd64

protoc安装

# 方式一,使用goctl检查后自动安装
goctl env check -i -f --verbose
# [goctl-env]: "protoc" is installed
# [goctl-env]: "protoc-gen-go" is already installed in "/opt/coding/project/goproject/bin/protoc-gen-go"
# 
# 方式二,使用homebrew来安装
brew install protobuf protoc-gen-go protoc-gen-go-grpc
# 检查是否安装完成
protoc --version
# libprotoc 3.13.0

项目创建

代码生成

业务逻辑编写

GORM

文档编写,代码测试

相关项目

扩展

参考资料

Go-zero官方教程

评论区
暂无评论
avatar