摘要:
goimports配置 一、win https://golang.org/doc/go-get-install-deprecation go get golang.org/x/tools/cmd/goimports 使用 goimports检测代码有2种方式(如果下面不加 -w 仅打印修正impor 阅读全文
摘要:
使用zap接收gin框架默认的日志并配置日志归档 基于gin框架开发的项目中如何配置并使用zap来接收并记录gin框架默认的日志和如何配置日志归档。 我们在基于gin框架开发项目时通常都会选择使用专业的日志库来记录项目中的日志,go语言常用的日志库有zap、logrus等。网上也有很多类似的教程 但 阅读全文
摘要:
在Go语言项目中使用Zap日志库 Go语言原生的日志库的使用,然后详细介绍了非常流行的Uber开源的zap日志库,同时介绍了如何搭配Lumberjack实现日志的切割和归档。 一、在Go语言项目中使用Zap日志库 介绍 在许多Go语言项目中,我们需要一个好的日志记录器能够提供下面这些功能: 能够将事 阅读全文
摘要:
Python与设计模式 第一篇 创建类设计模式 [01] 设计原则 [02] 单例模式 [03] 工厂类相关模式 [04] 简单工厂模式 [05] 抽象工厂模式 [06] 建造者模式 [07] 建造者模式 第二篇 结构类设计模式 [01] 代理模式 [02] 装饰器模式 [03] 适配器模式 [04 阅读全文
摘要:
gin框架中间件详解 gin框架涉及中间件相关有4个常用的方法,它们分别是c.Next()、c.Abort()、c.Set()、c.Get()。 一、中间件的注册 gin框架中的中间件设计很巧妙,我们可以首先从我们最常用的r := gin.Default()的Default函数开始看,它内部构造一个 阅读全文
摘要:
gin框架路由理论 gin框架使用的是定制版本的httprouter,其路由的原理是大量使用公共前缀的树结构,它基本上是一个紧凑的Trie tree(或者只是Radix Tree)。具有公共前缀的节点也共享一个公共父节点。 一、Radix Tree 基数树(Radix Tree)又称为PAT位树(P 阅读全文
摘要:
Gin框架进阶 第一篇 Gin进阶 [01] Gin框架路由底层实现 [02] Gin框架中间件详解 [03] 在Go语言项目中使用Zap日志库 [04] Gin框架使用Zap日志库 [05] goimports配置 [06] Go语言配置管理神器之Viper [07] 优雅地关机或重启 [08] 阅读全文