试试换个关键词

作品集

redis-helper

维护中

一个小巧的 Go 缓存工具库,封装了穿透 / 击穿 / 雪崩的常用解法,已在两个项目里跑了一年。

周期
2025.11 – 至今
角色
独立开发
技术栈
GoRedis
  • 单 flight 互斥回源,天然防击穿
  • TTL 自动加抖动,根绝雪崩
  • 空值缓存可配置,防穿透

把那次 P0 告警里学到的东西,沉淀成了一个不到 300 行的库。

API 故意做得像标准库的 sync 一样直白:

val, err := rh.Get(ctx, key, func() (string, error) {
    return loadFromDB(key)
})

一个回调解决回源、锁、空值、抖动。用了一年,再没为缓存踩过坑。