缓存方案:本地guavaCache, 远程redis?

本文介绍了不同类型的缓存策略,包括线程内部缓存、本地缓存及远程缓存。线程内部缓存可通过局部变量HashMap或ThreadLocal实现;本地缓存推荐使用GuavaCache,它支持过期自动删除等功能;远程缓存如Redis则适用于多JVM环境并具备主备切换等特性。

线程内部缓存:a. 局部变量HashMap, 方法间传递  b. 使用ThreadLocal

本地缓存:单jvm内共享 可以使用(Concurrent)HashMap自己实现,也可以使用GuavaCache。 guavaCache支持过期自动删除(全局的过期时间),垃圾回收, 回收通知。。。

远程缓存:多jvm共享     redis 主备切换 故障自动恢复, 单个key设置过期时间

                                       memcached 一致性hash 扩容需要自己实现

 

业务逻辑如果允许本地缓存,就不要使用远程缓存

 

转载于:https://www.cnblogs.com/yszzu/p/9426798.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值