Go 服务基础设施一站式方案:infra-go 实战
每个 Go 业务服务,绕不开这几件事:读配置、打日志、连数据库、接 Redis、起 HTTP 服务、做鉴权限流、安全优雅地退出。每开一个新项目都要把这一套重新实现一遍,虽然熟,但很烦,而且每个人写的风格还不一样。 如果把这些能力收敛成一个库...
分类下共 7 篇文章
每个 Go 业务服务,绕不开这几件事:读配置、打日志、连数据库、接 Redis、起 HTTP 服务、做鉴权限流、安全优雅地退出。每开一个新项目都要把这一套重新实现一遍,虽然熟,但很烦,而且每个人写的风格还不一样。 如果把这些能力收敛成一个库...
一句话总结90% 的场景用 x/time/rate,匀速场景用 uber-go/ratelimit,分布式用 sethvargo/go-limiter。 五大库速览 库 算法 分布式 一句话定位 x/time/...
在 Go 语言中,有多种方式可以连接字符串,本文介绍常用的几种方式并进行性能对比。 1. 使用 + 号连接最简单直接的方式,但会产生新的字符串对象。 1s := "Hello" + " " + &qu...
目前 Go 生态里,最炙手可热的 Redis 客户端非 go-redis 莫属。 亮点满满: 原生 Go 实现,性能杠杠的,跑得飞快 内置连接池,高并发也不怵 全面特性支持:集群、哨兵、管道、事务,应有尽有 安装1go get gith...
代码及工程组织意外的变量隐藏避免变量隐藏(外部作用域变量被内部作用域同名变量隐藏),有助于避免变量引用错误,有助于他人阅读理解。 不必要的代码嵌套避免不必要的、过多的嵌套层次,并且让正常代码路径尽量左对齐(而不是放在分支路径中),有助于构建...
protoc123456https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.4➜ ~ wget https://github.com/protocolbuffers...
客户端sdk: https://firebase.google.com/docs/auth/?hl=zh-cn golang sdk: GitHub - firebase/firebase-admin-go: Firebase A...