最近在折腾 Go 看了很多业界的 Go 项目
例如 https://github.com/go-ggz/ggz
想请教各位 你们的 Go 项目是怎么做工程化的
例如项目目录结构 ?
依赖管理用什么
数据库连接用什么包
路由用什么
监控用什么方案
日志用什么包
例如 https://github.com/go-ggz/ggz
想请教各位 你们的 Go 项目是怎么做工程化的
例如项目目录结构 ?
依赖管理用什么
数据库连接用什么包
路由用什么
监控用什么方案
日志用什么包
7 回答5.3k 阅读
6 回答6.9k 阅读✓ 已解决
4 回答2.3k 阅读
1 回答2k 阅读✓ 已解决
1 回答3.4k 阅读
2 回答2.2k 阅读
1 回答2.1k 阅读
拿你列的 ggz 来学习就很好,该项目的目录和文件就告知了我们一切:
go.mod
写明了用的是go modules
管理依赖包,并且该项目用到了哪些优秀的包;Makefile
写明了怎么构建编译二进制执行文件,包括 Docker 镜像;.env.example
写明了用的是.env
的配置管理方式;docker-compose.yml
写明了 Docker 容器编排;cmd
目录是main
入口;docker
目录里存放的是Dockerfile
;所以,我们也就可以很清晰的学习一个 Go 项目该如何去组织、构建、发布了