layering-cache是一个支持分布式环境的多级缓存框架,使用方式和spring-cache类似。一级缓存使用Caffeine作为本地缓存,二级缓存使用redis作为集中式缓存。一级缓存和二级缓存的数据一致性是通过推和拉两种模式相结合的方式来实现的。推主要是基于redis的pub/sub机制,拉主要是基于消息队列和记录消费消息的偏移量来实现的。
https://github.com/xiaolyuh/layering-cache
作者信息
捐赠
项目的发展离不开你的支持,请作者喝杯咖啡吧!
技术支持
捐赠100元以上的用户可享有需求优先解决、协助部署、二次开发帮助。
spring-boot-student
spring-boot-student-banner
spring-boot-student-config
- Spring 安全配置@ConfigurationProperties的使用
- 自定义properties并使用@PropertySource注解引入配置文件,使用@Value获取属性值
- 通过@ImportResource注解引入XML配置
Spring Boot 核心-外部配置
spring-boot-student-log
- Spring Boot日志配置
- Spring Boot 使用XML配置日志
- Spring Boot 切换日志框架
- logback配置异步日志
- Logback 快速定位用户在一次请求中的所有日志
Spring Boot 日志配置
Logback 快速定位用户在一次请求中的所有日志
spring-boot-student-profile
Spring Boot Profile 配置
spring-boot-student-data-jpa
- Spring boot 和Spring data jpa配置
- DBCP2连接池配置
- Spring Boot连接池分析
- Spring MVC Test(测试Controller)
Spring Boot+Spring Data Jpa+DBCP2数据源
dbcp2数据源配置详解
Spring Boot中Datasource配置分析
Spring MVC 测试
spring-boot-student-mybatis
- Spring boot集成Mybatis和PageHPagehelper分页
- Mybatis一级缓存分析
- Mybatis二级缓存分析
- Mybatis自带二级缓存的配置
- Mysql查询的执行过程
Spring Boot+Mybatis+Pagehelper分页
MySQL查询的执行过程
《深入理解mybatis原理》 Mybatis数据源与连接池
MyBatis的一级缓存实现详解
MyBatis的二级缓存实现详解
MyBatis缓存机制的设计与实现
spring-boot-student-mybatis-ehcache
- Spring Boot集成Mybatis
- 使用ehcache作为Mybatis的二级缓存
Spring Boot + Mybatis + Ehcache 二级缓存实例
Spring Boot + Mybatis + 二级缓存实例(Ehcache,Redis)
spring-boot-student-mybatis-redis
- Spring Boot集成Mybatis
- 使用Redis作为Mybatis的二级缓存
- 通过实现ApplicationContextAware接口获取Spring容器,并获取容器中的Bean
Spring Boot + Mybatis + Redis二级缓存实例
Spring Boot + Mybatis + 二级缓存实例(Ehcache,Redis)
spring-boot-student-mybatis-druid 自己定制
- Druid简介
- Druid数据源配置
- Druid监控的配置
- Spring Boot与Druid集成
Druid简介(Spring Boot + Mybatis + Druid数据源)
maven替换中央仓库- 阿里云
spring-boot-student-mybatis-druid-2
- Spring Boot 使用druid连接池连接数据库(官方start)
Druid简介(Spring Boot + Mybatis + Druid数据源【官方start】)
spring-boot-student-encode
加密算法 AES MD5 SHA1
spring-boot-student-data-jpa-transaction
- 开启事务
- Spring 事务类型
- Spring 事务原理
- Spring 事务的实现方式
- Spring 事务的注意事项
Spring Boot Spring事务管理
Spring Boot AOP代理
spring-boot-student-cache
- 缓存的简介
- Spring对缓存支持
- 开启声名式缓存支持
- 声名式缓存注解
- Spring Boot的支持
Spring Boot 数据缓存 Cache
Spring Boot缓存实战 默认Cache(ConcurrentMapCacheManager)
spring-boot-student-cache-ehcache
- Spring Boot 使用 ehcache作为 Spring 缓存
Spring Boot缓存实战 EhCache
spring-boot-student-cache-redis
- Spring Boot缓存实战 Redis
- Spring Boot 使用 redis作为 Spring 缓存(自动刷新缓存)
- 自动刷新缓存
- redis key、value的序列化
- java反射
- 线程池
Spring Boot缓存实战 Redis
Spring Boot Cache + redis 设置有效时间和自动刷新缓存,时间支持在配置文件中配置
Redis 序列化方式StringRedisSerializer、FastJsonRedisSerializer
Spring Redis Cache @Cacheable 大并发下返回null
spring-boot-student-cache-caffeine
- Spring Boot 使用 caffeine作为 Spring 缓存
- caffeine 简介
Caffeine 缓存
Spring Boot 与 Caffeine的集成
spring-boot-student-cache-redis-caffeine
- 基于redis + caffeine实现的多级缓存
Redis 序列化方式StringRedisSerializer、FastJsonRedisSerializer和KryoRedisSerializer
Spring Boot缓存实战 Redis + Caffeine 实现多级缓存
spring-boot-student-data-mongo
- Spring Boot 使用Spring data mongo 操作mongodb数据库
spring-boot-student-data-redis
- Spring Boot 使用Spring data redis 操作redis数据库
spring-boot-student-data-redis-distributed-lock
基于 redis 实现的分布式锁(一)
基于 redis 实现的分布式锁(二)
spring-boot-student-drools
spring-boot-student-stock-redis
spring-boot-student-rabbitmq
spring-boot-student-monitor
spring-boot-student-validated
spring-boot-student-guava-retrying
spring-boot-student-spring-retry
spring-boot-student-completable-future