随笔分类 - Golang
go语言相关
摘要:1. 介绍 gorm是一个使用Go语言编写的ORM框架。它文档齐全,对开发者友好,支持主流数据库。官方中文文档 https://gorm.io/zh_CN/docs/index.html 2. 安装 go get -u gorm.io/gorm go get -u gorm.io/driver/sq
阅读全文
摘要:你为什么要用反射?这个问题请读者自己回答。我强调一下反射的2个弊端: 代码不易阅读,不易维护,容易发生线上panic 性能很差,比正常代码慢一到两个数量级 go语言反射里最重要的两个概念是Type和Value,Type用于获取类型相关的信息(比如Slice的长度,struct的成员,函数的参数个数)
阅读全文
摘要:zap log 初始化:设置 日志文件每 5MB 会切割并且在当前目录下最多保存 5 个备份,并且会将旧文档保存30天 使用 lumberjack 做日志切分 package main import ( "github.com/natefinch/lumberjack" "go.uber.org/z
阅读全文
摘要:简介 ini 是 Windows 上常用的配置文件格式。MySQL 的 Windows 版就是使用 ini 格式存储配置的。go-ini是 Go 语言中用于操作 ini 文件的第三方库。 本文介绍go-ini库的使用。 快速使用 go-ini 是第三方库,使用前需要安装: $ go get gopk
阅读全文
摘要:在 Go http包的Server中,每一个请求在都有一个对应的 goroutine 去处理。请求处理函数通常会启动额外的 goroutine 用来访问后端服务,比如数据库和RPC服务。用来处理一个请求的 goroutine 通常需要访问一些与请求特定的数据,比如终端用户的身份认证信息、验证相关的t
阅读全文
摘要:Go语言标准库操作Redis数据库 快速了解 Redis 数据库 描述: Redis是一个开源的内存数据库, Redis提供了多种不同类型的数据结构,很多业务场景下的问题都可以很自然地映射到这些数据结构上。除此之外,通过复制、持久化和客户端分片等特性,我们可以很方便地将Redis扩展成一个能够包含数
阅读全文
摘要:Jaeger 是受到 Dapper 和 OpenZipkin 启发的由 Uber Technologies 作为开源发布的分布式跟踪系统。 Jaeger 用于监视和诊断基于微服务的分布式系统,包括: 分布式上下文传播 分布式传输监控 根本原因分析 服务依赖性分析 性能/延迟优化 注:简单理解的话,
阅读全文