Lazy loaded image
Lazy loaded imageGo 项目模板 (整洁架构版)
字数 552阅读时长 2 分钟
2024-4-11
2024-4-12
type
status
date
slug
summary
tags
category
icon
password

1. 背景

整洁架构思想的理论可以参考:[中文译文]。
 
在 Go 工程实际的落地过程中,经过工作中的实践总结出一套可落地的方案,参考我的项目说明:
go-clean-arch
Github
go-clean-arch
Owner
xpzouying
Updated
Apr 10, 2024
 
为了避免每次在新创建项目时,从头开始整理项目目录,总结了一套整洁架构版本的 Go 工程的可用模板:
go-clean-code-template
Github
go-clean-code-template
Owner
xpzouying
Updated
Apr 11, 2024
,直接 Fork 后可以快速修改成自己的项目。
 
特点:
  1. 使用整洁架构的项目规范。
  1. 完备的运维配置。
  1. 支持 HTTP 服务的优雅关闭。
  1. 规范化的日志。
 
模板接口文档:

2. 项目模板说明

简单介绍一些项目能力。

2.1. Makefile

通过 Makefile 文件管理,
 
编译后,由于把编译信息已经完全注入到二进制后,可以通过命令行或者接口获取编译信息。
  1. 命令行
    1. API 接口方式(使用 httpie 命令)
       

      2.2. 日志规范

      服务运行后,日志的输出如下,
      notion image
      特别说明:
      可以理解为对于整洁架构中的每一层模块,工程中都指定了对应标签的日志,例如标红区域会标示出是哪一个业务,middleware、usecase 等等。
       
      这样做的好处是,
      1. 查看日志时,能快速定位那一模块的日志信息。
      1. 当我们搜索日志时,我们如果只关心某一层(middleware、domain、repository 等)本身的信息时,只需要用对应的日志标签进行过滤即可。比如想查看 HTTP 中间件的日志时,使用 middleware 标签过滤即可。
        1. notion image
           
       
      上一篇
      [论文翻译] - 如何阅读一篇论文 / How to Read a Paper
      下一篇
      实现微信支付接入

      评论
      Loading...