Golang 运行时除数为 0 返回 Inf

在 Golang 中,除数为 0 时,常规情况下是无法编译通过的,但是如果除数是由运行时决定的,那么为除数为 0 时则不会 panic,而是实现为 IEEE 754 标准,返回 In [阅读全文]

Traefik 简介以及中间件插件开发

Traefix 简介 Traefik 是整个系统的网关大门,负责拦截并路由每个传入的请求,它不需要像Nginx这类反向代理一样需要一个配置文件来配置所有可能路由,而是实时 [阅读全文]

实现自定义的 Gin Logger 中间件

gin 的中间件原理解析 在 gin 中,中间件是一系列 gin.HandlerFunc 链,它的函数签名类型和我们业务中写的URL对应的 handler 是一样的,都是gin.HandlerFunc。 gin [阅读全文]

Go 单元测试 gostub 打桩使用方法

golang 单元测试中常用以下 4 个库方便测试代码的编写: gostub 主要用来给变量、函数、过程打桩 但是给函数打桩时,需要做侵入式修改 convey 主要用途是用来组织测试用例 [阅读全文]

Zap 源码阅读笔记

zap.Logger 日志Logger结构体,以此调用打印日志内容,定义如下: type Logger struct { core zapcore.Core development bool name string errorOutput zapcore.WriteSyncer addCaller bool addStack zapcore.LevelEnabler callerSkip int } zapcore.Entry 日志主体内容结构体,表示一条具体日志,定义 [阅读全文]