`
gaojingsong
  • 浏览: 1181813 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【j2cache二级缓存框架介绍】

阅读更多

J2Cache —— 基于内存和 Redis 的两级 Java 缓存框架

 

J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8)。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine),第二级缓存使用 Redis 。 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。 该缓存框架主要用于集群环境中。单机也可使用,用于避免应用重启导致的缓存冷启动后对后端业务的冲击。

 

J2Cache 的两级缓存结构

L1: 进程内缓存(caffeine\ehcache)

L2: Redis 集中式缓存

 

J2Cache 配置

配置文件位于 core/resources 目录下,包含三个文件:

j2cache.properties J2Cache 核心配置文件,可配置两级的缓存,Redis 服务器、连接池以及缓存广播的方式

caffeine.properties 如果一级缓存选用 Caffeine ,那么该文件用来配置缓存信息

ehcache.xml Ehcache 的配置文件,配置说明请参考 Ehcache 文档

ehcache3.xml Ehcache3 的配置文件,配置说明请参考 Ehcache 文档

network.xml JGroups 网络配置,如果使用 JGroups 组播的话需要这个文件,一般无需修改

 

数据读取

读取顺序 -> L1 -> L2 -> DB



 

数据更新

1 从数据库中读取最新数据,依次更新 L1 -> L2 ,发送广播清除某个缓存信息

2 接收到广播(手工清除缓存 & 一级缓存自动失效),从 L1 中清除指定的缓存信息



 

  • 大小: 28.9 KB
  • 大小: 27.1 KB
0
0
分享到:
评论

相关推荐

    J2Cache 基于内存和 Redis 的两级 Java 缓存框架

    J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8)。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine),第二级缓存使用 Redis(推荐)/Memcached 。 由于大量的缓存读取会导致 L2...

    J2Cache两级缓存框架 v2.8.4.zip

    **J2Cache 详解:两级缓存框架 v2.8.4** J2Cache 是一个高性能、轻量级的Java缓存解决方案,旨在为Java应用提供简单易用的缓存功能,以提升系统的响应速度和减少数据库负载。v2.8.4版本是其发展历程中的一个重要...

    J2Cache两级缓存框架-其他

    J2Cache是OSChina目前正在使用的两级缓存框架(要求至少 Java 8)。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine),第二级缓存使用 Redis(推荐)/Memcached。由于大量的缓存读取会导致L2的网络...

    J2Cache - 基于内存和 Redis 的两级 Java 缓存框架

    J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8)。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine),第二级缓存使用 Redis(推荐)/Memcached 。 由于大量的缓存读取会导致 L2...

    Java 两级缓存框架,可以让应用支持两级缓存框架ehcache+redis 避免完全使用独立缓存系统所带来的网络IO开销问题

    J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8)。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine),第二级缓存使用 Redis(推荐)/Memcached 。 由于大量的缓存读取会导致 L2...

    J2Cache.pdf

    ### J2Cache 两级缓存框架详解 #### 引言 在现代软件开发尤其是Web应用领域,缓存技术被广泛采用以提升应用性能并减轻后端数据库的压力。J2Cache作为一个高效的缓存解决方案,旨在通过两级缓存机制提高数据访问...

    Java两级缓存框架,让应用支持两级缓存框架ehcache+redis 避免完全使用独立缓存系统所带来的网络IO开销问题

    通过 J2Cache,可以轻松实现一级缓存(Ehcache/Caffeine)和二级缓存(Redis)的配置和管理。 ### 5. 配置与使用 在实际项目中,你需要在配置文件中指定一级缓存和二级缓存的实现,并设置相应的参数,如缓存大小、...

    bootj2cache.rar

    总结来说,本文介绍了如何在SpringBoot 2.0中集成J2Cache,使用Ehcache和Redis构建二级缓存系统,提供了完整的项目实践案例。读者不仅可以从中学习到SpringBoot的缓存配置和J2Cache的使用,还能了解到如何设计和实现...

    J2Cache-master.zip

    Java 两级缓存框架J2Cache是一个高效且灵活的解决方案,旨在提高应用程序的性能和响应速度,通过在本地和远程缓存之间建立层次结构。它整合了Ehcache(现在被Caffeine替代)和Redis两种不同的缓存系统,以实现最佳的...

    Mybatis动态传参、日志记录、二级缓存.docx

    Mybatis 是一个基于 Java 的持久层框架,它提供了动态传参、二级缓存和日志记录等功能。本文将对 Mybatis 的动态传参、日志记录和二级缓存进行详细介绍。 一、Mybatis 动态传参 Mybatis 提供了多种方式来实现动态...

    SpringMVC+Nutz框架介绍.docx

    权限管理方面,框架基于Shiro进行了深度定制,实现了Ehcache的一级缓存和Redis的二级缓存,支持session同步。权限控制深入到按钮和方法级别,且有三套独立的验证体系,分别对应平台、商家和会员,便于权限的分级管理...

    SpringMVCNutz框架介绍.docx

    在安全性方面,该框架集成了 Shiro,实现了二级缓存并通过 Redis 支持 session 同步,提供了完善的权限授权和数据权限管理。同时,支持多数据源,能够与 Hibernate 和 MyBatis 等 ORM 框架兼容,方便切换数据库环境...

    SpringMVC+Nutz框架介绍范本模板.docx

    同时,集成了Shiro权限框架,支持二级缓存并利用Redis实现session同步。Ehcache作为Shiro的一级缓存,而Jedis作为Redis的Java实现,支持集群模式和单机模式的切换。邮件服务、Quartz定时任务、Beetl模板引擎、国际化...

    Mybatis整合第三方缓存ehcache.docx

    在 Mybatis 中,缓存机制是提高性能的重要手段,它分为一级缓存(SqlSession 级别)和二级缓存(Mapper 级别)。一级缓存默认开启,而二级缓存则需要额外配置。在某些场景下,Mybatis 的内置缓存可能无法满足需求,...

    SpringMVC+Nutz框架介绍范本模板.pdf

    2. **Apache Shiro** - 提供安全认证和授权服务,用于实现用户权限管理,支持二级缓存并借助Redis进行session同步。 3. **Nutz** - 作为ORM框架,简化了数据库操作,同时支持多种数据库,具备自动SQL注入防护。 4. *...

    SpringMVC+Nutz框架介绍.pdf

    - Apache Shiro用于权限管理和安全框架,支持二级缓存,可以通过Redis实现session同步。 - Ehcache作为Shiro的一级缓存,提高缓存效率。 - Jedis是Java实现的Redis客户端,支持Redis集群模式和单机模式切换。 - ...

    Coherence企业级缓存(五)与Hibernate集成(1).pdf

    - **配置 Hibernate**:在 Hibernate 中配置使用 Coherence 作为二级缓存。通常这是通过修改 Hibernate 的配置文件(如 `hibernate.cfg.xml` 或者 `persistence.xml`)来完成的,配置项可能包括缓存提供者 (`cache....

    三大缓存比较

    4. **轻量化**:Ehcache 的核心组件仅依赖于 slf4j 日志框架,没有额外的依赖。 5. **易于扩展**:支持多种缓存策略(LRU、LFU、FIFO),可以实现内存和硬盘上的数据存储,并且支持多实例、对象存储的高灵活性以及...

Global site tag (gtag.js) - Google Analytics