java 缓存-门面框架
背景
- 门面模式的好处。
slf4j本质上只是一个日志接口,是日志门面接口,它可以支持目前大部分的日志框架,也就是说如果你代码里用的是slf4j做为编码,那么以后你切换日志框架只是换一个maven依赖另一个日志框架,修改> 一下日志配置文件,而不需要修改代码。
- 不想要太多的依赖,特别是spring的依赖。
现有缓存门面框架
Spring-Cache
- 好处嘛,见参考资料呗
- 缺点 : 依赖spring-context框架.没有单独出来
JSR107 JCache
- java提出的规范
- 具体实现少。(最大缺点)
easy-cache
- 依赖spring-boot实现.
- 不如用spring-cache
wacache
- 优点: 思想和功能稍微多一点.
- 抽象并统一了目前流行缓存访问接口,概括目前流行的缓存框架,并且很容易继续扩展.
- 同时为缓存的写入,删除,读取提供监听事件支持.
- 简单实用
- 缺点:
- 断更了. 2017就不维护了。
- 他是把所有的依赖都引入了,通过代码参数切换,实际我们可能就只用一种。
这个自己可以改造一下就ok,小问题。
jad-cache
- Spring3中缓存模块的扩展,分离了spring的缓存
- 也断更了。
JetCache
- 阿里巴巴开发.
- 功能强大
- 和spring脱离
- 推荐使用他。
其他缓存框架
J2Cache
- 基于内存和 Redis 的两级 Java 缓存框架
- 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。
memcache
- 客户端应用中实现的分布式
性能上都很出色,具体到细节,由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比
Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化,但是比起 Memcached,还是稍有逊色。
XXL-CACHE
- 是一个分布式缓存管理平台
- XXL系列
- 目前断更了,不知道什么时候还会更新.
AutoLoadCache
AutoLoadCache 是基于AOP+Annotation等技术实现的高效的缓存管理解决方案,实现缓存与业务逻辑的解耦,并增加异步刷新及“拿来主义机制”,以适应高并发环境下的使用。
- 没用过,没细看. 暂不做评价.
参考资料
- 聊聊Spring Cache的缓存抽象与JSR107缓存抽象JCache,并使用API方式使用Spring Cache【享学Spring】
- 新项目技术栈落地(三)——日志和缓存框架的选择

- memcache、redis原理对比
- 缓存篇(二)- JetCache
讲解了他们背景.

浙公网安备 33010602011771号