Show HN: Quite Fast, sharded cache for Go with LRU/LFU, TTL and object pooling
10 months ago
- #go
- #cache
- #performance
- Kioshun缓存库基准测试结果显示GET操作性能高达3.26亿次/秒
- 通过`go get github.com/unkn0wn-root/kioshun`即可简单安装
- 快速入门示例演示了Set、Get、Delete等基础缓存操作
- 配置选项包含MaxSize(最大容量)、ShardCount(分片数)、CleanupInterval(清理间隔)、DefaultTTL(默认存活时间)和EvictionPolicy(淘汰策略)
- 采用分片架构减少锁竞争,支持根据CPU核心数自动分片及最优分片数量
- API参考包含Set、Get、Delete、Exists、Clear、Size、Stats、Close等方法
- HTTP中间件兼容多种框架(Gin/Echo/Chi/Gorilla Mux),支持可配置的缓存策略
- 缓存失效设置需基于路径的键生成器才能实现模式匹配失效功能