multi-level-cache
是一个用 go 实现的多级缓存组件;
- ✅ 自定义本地缓存大小
- ✅ 自定义本地缓存、redis 缓存超时时间
- ✅ 自定义缓存模式「本地缓存」、「Redis 缓存」、「多级缓存」
- ✅ 自定义预热脚本
- ✅ 线程安全初始化缓存实例
- ✅ 自动检测缓存实例唯一
- ✅ 优先读取本地缓存模块、然后读取 redis 缓存,最终才回源数据库
- ✅ 支持单个、批量缓存key
- ✅ 访问出现异常时,支持自动降级到下一级,保证数据正常返回
- ✅ 缓存过期之后,下一次访问将自动加载数据到缓存
- ✅ 支持单个、批量失效缓存
- ✅ 只有 redis 清理成功之后,才会通知清理本地缓存
- ✅ 失效 redis 缓存之后,如果出现了异常,会进行重试,重试的次数可自定义
- ✅ 自动识别击穿key,将key加入到缓存中
- ✅ 支持自定义缓存空节点
- ✅ 支持自定义命中率统计方式
- ✅ 支持自定义序列化/反序列化方式
- ✅ 支持自定义日志打印方式