高效的缓存管理解决方案 AutoLoadCache

码农软件 · 软件分类 · 缓存系统 · 2019-08-29 22:57:35

软件介绍

现在使用的缓存技术很多,比如Redis、 Memcache 、 EhCache等,甚至还有使用ConcurrentHashMap 或 HashTable 来实现缓存。但在缓存的使用上,每个人都有自己的实现方式,大部分是直接与业务代码绑定,随着业务的变化,要更换缓存方案时,非常麻烦。接下来我们就使用AOP + Annotation 来解决这个问题,同时使用自动加载机制 来实现数据“常驻内存”。

设计思想及原理

在infoq 发表的文章《面对缓存,有哪些问题需要思考?》

《再谈缓存的穿透、数据一致性和最终一致性问题》

使用方法

注解(Annotation)说明

分布式锁支持

表达式的应用

缓存删除

Magic模式

注意事项

与Spring Cache的区别

最佳实战

autoload-cache-spring-boot-starter 推荐使用这个,test目录中也有可运行例子。

源码阅读

已经实现基于aspectj 的AOP,代码在com.jarvis.cache.aop.aspectj.AspectjAopInterceptor。想通过阅读代码了解详细细节,可以以此为入口。

注意:有些类get, set, hashCode(), toString() equals()等方法是使用 lombok 自动生成的,所以使用Eclipse 和 IntelliJ IDEA 时,需要先安装lombok。

更新日志

QQ群:429274886

本文地址:https://codercto.com/soft/d/13464.html

Linux内核设计与实现(原书第3版)

Linux内核设计与实现(原书第3版)

Robert Love / 陈莉君、康华 / 机械工业出版社华章公司 / 2011-4-30 / 69.00元

《Linux内核设计与实现(原书第3版)》详细描述了Linux内核的设计与实现。内核代码的编写者、开发者以及程序开发人员都可以通过阅读本书受益,他们可以更好理解操作系统原理,并将其应用在自己的编码中以提高效率和生产率。 《Linux内核设计与实现(原书第3版)》详细描述了Linux内核的主要子系统和特点,包括Linux内核的设计、实现和接口。从理论到实践涵盖了Linux内核的方方面面,可以满......一起来看看 《Linux内核设计与实现(原书第3版)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具