简单的Golang后端服务框架 - 精简版

宋子桓🌈 be8f4ff51e 更新 .gitignore 并移除 test_self 配置文件 3 weeks ago
src fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
.gitattributes fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
.gitignore be8f4ff51e 更新 .gitignore 并移除 test_self 配置文件 3 weeks ago
LICENSE fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
NAME fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
README.md fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
REEPORT fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
VERSION fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
go.mod fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
go.sum fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago
resource.go fe5bf5092c 初始化配置文件和命令行参数解析 3 weeks ago

README.md

Golang 后端服务 模板程序 - 简单版

使用 Golang 实现的后端服务模板程序。

介绍

本模板程序旨在实现一个 Golang 的后端服务,可以是 Http 也可以是其他。为了完成这个目的,我设计了一部分基础套件。

  • 日志(支持投递到标准输出、文件、日期切割的文件、自定义输出、多输出合并)
  • 命令行参数(支持stringbooluintint
  • 配置文件(支持jsonyaml格式,也可以自定义解析器)
  • 退出信号量捕获(在posix系统上可以使用信号量捕获退出信号,并做清理操作。在win32上,命令行的ctrl+c也可被捕获,但当程序作为服务在后台运行时,相关停止、重启操作暂未内捕获)
  • 全局变量和资源(打包了VersionLicenseNameReport等变量)
  • 服务模式(可使用控制单元启动多服务,或直接启动单服务)

入口

入口文件在src/cmd下,目前分别有两个程序:lionv1tigerv1

  • lionv1 是使用控制单元的多服务演示程序。
  • tigerv1 是直接运行服务的单服务演示程序。

入口程序不直接包含太多的实际代码,真正的main函数位于src\mainfunc下。 程序的返回值代表程序的Exit Code。 一般采用0表示正确结束。

编译

使用go build进行正常编译即可。

日后支持:

  • 添加编译参数,允许编译时注入编译时间和git commit id

运行

执行编译好的可执行文件即可。具体命令行参数可参见上文。注意编译时选择的目标平台要与运行平台一致。

协议

本软件基于 MIT LICENSE 发布。 了解更多关于 MIT LICENSE , 请 点击此处