1 Star 0 Fork 15

shyaoht/cachego

forked from 水不要鱼/cachego 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
_examples
_icons
pkg
.gitattributes
.gitignore
FUTURE.md
HISTORY.md
LICENSE
Makefile
README.en.md
README.md
cache.go
cache_test.go
config.go
config_test.go
doc.go
go.mod
option.go
option_test.go
segment.go
segment_test.go
value.go
value_test.go
克隆/下载
FUTURE.md 1.84 KB
一键复制 编辑 原始数据 按行查看 历史

✒ 未来版本的新特性 (Features in future versions)

v0.3.x

  • 支持内存大小限制,防止无上限的使用内存
  • 支持用户自定义达到内存限制时的处理策略
  • 支持缓存个数限制,防止数据量太多导致哈希性能下降
  • 支持用户自定义达到个数限制时的处理策略
  • 去除 GetWithTTL 方法
  • 重新设计 AutoSet 方法,引入 option 机制
  • 加入 singleflight 机制
  • 加入 monitor 监控机制,接口形式
  • 优化 value 使用,复用内存、代码可读性
  • GC 加入数量限制或时间限制
  • Set 引入 option 机制
  • Get 引入 option 机制
  • Delete 引入 option 机制,并可以限制删除数量、key 匹配模式
  • GC 引入 option 机制,并可以限制 GC 数量或时间、key 匹配模式

v0.2.x

  • 创建缓存实例的方式需要改进
  • 性能优化 - 引入 value 实例池 经过测试,这个实例池没有带来性能提升,反而影响了写入的性能,说明目前的性能瓶颈不在实例创建上,所以取消该特性。
  • 增加 debug 网络调试点
  • AutoSet 的构思,定时加载数据到缓存

v0.1.0

  • 简化设计,现在的我偏向于反设计
  • 加入分段锁,使用更细粒度的锁机制保证更高的缓存性能
  • 初步完善哨兵清理机制,配合分段锁,优化数据清理效率

v0.0.1

  • 简单实现一个并发访问安全、支持自动清理过期数据的缓存器
  • 支持懒清理机制,每一次访问的时候判断是否过期
  • 支持哨兵清理机制,每隔一定的时间间隔进行清理过期数据
  • 基础特性和高级特性分离设计模式,减少新用户学习上手难度
  • 链式编程友好的 API 设计,在一定程度上提供了很高的代码可读性
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/shyaoht/cachego.git
git@gitee.com:shyaoht/cachego.git
shyaoht
cachego
cachego
master

搜索帮助