Skip to content

YvCeung/easy-cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EasyCache

EasyCache 是一个基于 极客兔兔分布式缓存 改造而来的项目,相较于原版,做了多项增强和拓展优化。旨在提升整体性能的同时,也兼顾架构设计。

🔧 相比原项目新增的特性

  1. 支持多种缓存淘汰策略
    原项目使用了简单的 LRU 实现,FastCache 在此基础上提供了多种可切换的淘汰算法(如 LRU、LFU、FIFO 等)。不仅方便灵活配置,也利于练习常见缓存算法的实现能力。

  2. 扩展通信方式由 HTTP 升级为 RPC
    将节点间通信方式从 HTTP 改为自定义 RPC 协议,显著提升了通信效率,也为后续拓展和讨论 RPC 框架设计打下基础。

  3. 更细粒度的并发控制
    对原有锁机制进行了细化,降低了锁竞争,提升并发性能,特别适合对性能敏感的分布式环境。

  4. 引入热点互备机制(Hot Key Backup)
    为解决热点 Key 请求集中导致单节点负载过高的问题,借鉴 GroupCache 的设计,引入热点 Key 的副本备份机制,提升系统稳定性与响应能力。

  5. 接入 etcd 实现动态节点发现与管理
    通过接入 etcd,实现了分布式节点的注册、心跳检测、自动上下线等功能。这部分为系统的动态伸缩和高可用能力提供了基础支撑,也能引出一系列实战中的分布式问题。

  6. 支持缓存过期与自动清理机制
    增加了缓存的过期策略,支持按 Key 设置 TTL,并定时清理过期缓存,保持内存占用稳定、可控。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published