localcache 是一个分布式缓存系统,参考 groupcache,将在其基础上引入 节点增删、缓存失效、发布订阅等功能
使用案例 1.启动服务
cd ./localcache/server
make run2.测试服务
curl "http://localhost:8001/cache/db1/1" && \
curl "http://localhost:8002/cache/db1/2" && \
curl "http://localhost:8003/cache/db1/3"当然两者可以结合使用
groupcache中每个节点都是相同的代码,即有分片路由能力,也保存缓存数据;这就导致路由信息保存在多个地方,不好维护,所以groupcache也没有提供增删节点的操作
整个查询流程如下:
接收 key --> 检查是否被缓存 -----> 返回缓存值 ⑴
| 否 是
|-----> 是否应当从远程节点获取 -----> 与远程节点交互 --> 返回缓存值 ⑵
| 否
|-----> 调用回调函数,获取值并添加到缓存 --> 返回缓存值 ⑶


