Java两级缓存框架 J2Cache

Java两级缓存框架 J2Cache

Apache
Java
跨平台
开源中国
2014-01-07
红薯

J2Cache 是 OSChina 目前正在使用的两级缓存框架。第一级缓存使用 Ehcache,第二级缓存使用 Redis 。由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。该缓存框架主要用于集群环境中。单机也可使用,用于避免应用重启导致的 Ehcache 缓存数据丢失。

J2Cache 的 Python 实现版本 —— Py3Cache

J2Cache 使用 JGroups 进行组播通讯。

J2Cache 介绍 PPT:http://www.oschina.net/doc/652

J2Cache JavaDoc: https://apidoc.gitee.com/ld/J2Cache/

视频介绍:http://v.youku.com/v_show/id_XNzAzMTY5MjUy.html

Maven:


  net.oschina.j2cache
  j2cache-core
  版本号

示例代码:

CacheChannel cache = J2Cache.getChannel();
cache.set("cache1","key1","OSChina.net");
cache.get("cache1","key1");

测试方法:

  1. 安装 Redis

  2. 修改 core/Java/j2cache.properties  配置使用已安装的 Redis 服务器

  3. 执行 build.sh 进行项目编译

  4. 运行多个 runtest.sh

  5. 直接在 runtest 输入多个命令进行测试

的码云指数为
超过 的项目
加载中

评论(111)

dep_wentao
dep_wentao
@红薯 请问J2Cache最大可以支持多大缓存,我现在Redis数据大概18G,请问J2Cache能用吗?
tengyz
tengyz
请问一下L1失效了,就从'L2一直读取,为什么'L2读取成功只放入L1,下次从L1读取?第一次使用请教大神
侯坤林
侯坤林
#J2Cache# 各位大兄弟能否过来帮看看, 把原始Tomcat项目转为SpringBoot时出现错误。但是Tomcat运行时正常的
xiaoshiyue
xiaoshiyue

引用来自“witt-z”的评论

😷
witt-z
witt-z
红薯
红薯 软件作者
社区的软件频道改版了也
红薯
红薯 软件作者
其实我知道,#J2Cache# 肯定不会上榜,毕竟热度不够,但也是优秀的开源软件。
小柒2012
小柒2012
为了推广自己的开源项目不惜开发一个网站,这种精神我是服的。
红薯
红薯 软件作者
为什么 #J2Cache# 这么优秀呢?
红薯
红薯 软件作者
#J2Cache# 宣布支持 java 11 13

J2Cache 的 Spring Boot 模块发布 2.7.6 版本

J2Cache 官方提供两个版本的 Spring Boot 模块,目前发布了 2.7.6 版本,主要改进:添加了一个可以开启关闭二级缓存的配置,并支持在spring配置中写j2cache的配置,并修复一些细小问题。 Ma...

2018/12/14 10:39

J2Cache 2.7.7 发布,Lettuce 增加连接池模式

J2Cache core 模块昨晚发布了 2.7.7 版本,该版本主要是针对之前的 Lettuce 支持进行了改进,增加了连接池支持,使其可以在高并发的环境下工作。同时升级 lettuce 到 5.1.3 版本。 可通过如下...

2018/12/13 07:42

J2Cache 2.7.6 发布,修复多实例和 Lettuce 问题

J2Cache 2.7.6 发布了,包括前面几个 2.7.5 和 2.7.4 ,该版本主要是修复两个问题: 同一个应用启用多 J2Cache 实例的数据隔离问题 启用 Lettuce 时无法设置 redis 数据 TTL 的问题 Maven: ...

2018/10/31 09:36

J2Cache 2.7.2 发布,解决多个实例并存问题

@红薯:当你碰到一个百思不得其解的奇怪问题,折腾半天搞不定的时候,这个问题基本上可以判断是因为一个愚蠢错误引起的。 ------- 华丽分割线 ------- J2Cache 2.7.2 版本更新了,该版本主要...

2018/10/16 06:26

J2Cache 新增 Hibernate 5 支持,感谢 @tandy 贡献

想了解 J2Cache 是一个什么开源项目,请阅读 这篇博客。 J2Cache 刚新增对 Hibernate 5 的支持,提供了 j2cache-hibernate5 模块,可以方便在 Hibernate 5 中启用 J2Cache 缓存。 该模块由 ...

2018/09/28 07:44

J2Cache 2.7.0 发布了,支持 Lettuce 替代 Jedis

J2Cache 2.7.0 在周末悄没声息的发布了!!! 该版本支持使用 Lettuce 替代 Jedis 连接 Redis ,目前二者并存,以后的版本可能会考虑直接替换掉 Jedis 。我之前不喜欢 Lettuce 是因为它依赖了...

2018/09/15 09:40

J2Cache 2.6.0 发布,支持分布式 session 存储管理

J2Cache 2.6.0 版本发布啦,该版本最最值得关注的就是支持分布式的 session 存储管理,支持不同的 Servlet 容器。 此外,该版本包含了如下小改动: 配置中对值包含空格的处理 CacheObject 允...

2018/09/13 07:41

J2Cache 2.5.5 发布,完善对 Sentinel 的 pub/sub 支持

J2Cache 2.5.5 发布了,该版本主要改进内容包括: 完善对 Redis Sentinel 的 pub/sub 支持 修复了 json 序列化不支持 java.sql.Date 和 java.sql.Timestamp 的问题 修复 Spring Boot 模块的序...

2018/09/06 12:01

J2Cache 2.5.2 发布,RabbitMQ/RocketMQ 消息同步

是的,我这几天偷偷的发布了几个版本,分别是 2.5.0、2.5.1 和今天舔着脸公开的 2.5.2 版本。 该版本值得关注的改进内容包括: 增加 Spring Cache 模块(感谢 @zuisong 的贡献) 支持通过消息...

2018/08/28 07:27

没有更多内容

加载失败,请刷新页面

1
回答
关于J2Cache的一点疑问?

@红薯 薯哥您好,想跟你请教个问题: 看了你写的J2Cache,不得不佩服。我之前只用过redis的key--value形式来保存数据,J2Cache中有...

2018/12/29 16:36
10
回答
使用j2cache时报错,急需要解决?

使用j2cache时,缓存数据报如下错误,怎么解决? java.lang.RuntimeException: cannot support legacy ...

2018/08/28 16:43
2
回答
j2cache居然不支持集群的redis?

@红薯 是不是j2cache不支持集群模式的reids,我的redis是集群部署的,然后我看j2cache客户端好像用的是jedisclient,报异常r...

2018/07/10 19:08
1
回答
合并从缓存返回的List,引发缓存变空。

public static List<Record> getUserSubscribe(String dsname, Map<String, Object...

2018/08/24 11:18
3
回答
J2Cache的存储方式问题

1.j2cache是不是只能以hash方式存储呢? 2.我使用cacheChannel.set(),在redis客户端看value的时候 乱码"\xFC\...

2018/07/10 16:13
1
回答
j2cache节点同步方式是使用Jgroup还是redis得订阅方式好

@红薯 你好,想跟你请教个问题: j2cache节点同步方式是使用Jgroup还是redis得订阅方式好

2018/07/10 11:39
1
回答
j2cache的应用问题

关于j2cache的应用场景,只有比较简单的一句话= = 大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次...

2018/07/05 17:29
1
回答
在项目中用J2cache,有一个问题.....

如果在项目中用J2Cache, 那 core\resources下的配置文件(比如caffeine.properties)可以用其他的东西来代替吗 ?如果...

2018/06/13 20:09
2
回答
J2Cache相关...

各位英雄好汉 , 请教诸位一些问题: 1. "从数据库中读取最新数据,依次更新 L1 -> L2 ,发送广播清除某个缓存信息 ,接收到广播(手工清除缓存 ...

2018/06/04 17:26
2
回答
关于J2cache ...

刚刚开始接触红薯大大的J2cache,在此感谢! 请教大家关于j2cache的一些问题: 1. j2cache的优缺点是什么呢? 2.它适用于什么场景,该...

2018/06/01 12:25

没有更多内容

加载失败,请刷新页面

动态构建J2Cache以及注意事项

一直以来,我们都是将数据字典等信息放在Redis缓存中,避免使用的时候,穿透到数据库层面,同时提升性能。最近突然发现线上频繁出现Redis连接超时等异常,经过跟踪,发现新增了一个字典表,有...

2018/05/25 09:01
345
0
SpringBoot2 项目缓存从 Redis 切换到 j2cache

首先添加依赖,此处有坑。刚开始添加的是 <artifactId>j2cache-spring-boot-starter</artifactId>,一直报错,后来发现springboot2工程需要使用 <artifactId>j2cache-spring-boot2-starter</...

2018/09/28 10:27
1K
0
微服务的架构里应该使用 J2Cache 两级缓存框架

微服务真的很火,看看码云上那些基于各种 Spring Xxxx 的项目,不需要怎么推广就有很多人关注。其实我还是蛮好奇的,到底是什么样的应用在使用微服务,微服务适合什么规模的系统。因为火的都...

2018/06/09 22:17
930
3
J2Cache 和 JetCache 框架迪士尼平台出售有何不同?

从软件名称看迪士尼平台出售 还有点像呢? 但这两者完全不是一回事! JetCache 是阿里的一个基于 Java 的缓存系统封装,提供统一的 API 和注解来简化缓存的使用。也就是说这个项目主要的目的...

2018/12/15 15:12
2
0
J2Cache 和 JetCache 框架有何不同?

从软件名称看还有点像呢? 但这两者完全不是一回事! JetCache 是阿里的一个基于 Java 的缓存系统封装,提供统一的 API 和注解来简化缓存的使用。也就是说这个项目主要的目的是为了让所有的缓...

2018/12/14 14:51
757
4
如何让 J2Cache 在多种编程语言环境中使用

现在的系统是越来越复杂了,不仅仅是功能复杂,系统结构也非常复杂,而且经常在一个系统里包含几种不同语言编写的子系统。例如用 JavaScript 做前端开发、用 Java/PHP 等等做后端,C/C++/Go ...

2018/10/17 09:04
2.6K
3
J2Cache 和普通缓存框架有何不同,它解决了什么问题?

不少人看到 J2Cache 第一眼时,会认为这就是一个普普通通的缓存框架,和例如 Ehcache、Caffeine 、Spring Cache 之类的项目没什么区别,无非是造了一个新的轮子而已。事实上完全不是一回事!...

2018/08/21 14:15
6.6K
38
J2Cache 中使用 Lettuce 替代 Jedis 管理 Redis 连接

一直以来 J2Cache 都是使用 Jedis 连接 Redis 服务的。Jedis 是一个很老牌的 Redis 的 Java 开发包,使用很稳定,作者维护很勤勉,社区上能搜到的文章也非常非常多。算是使用范围最广的 Redi...

2018/10/17 07:30
1K
2
J2Cache 没有 Redis 也可以实现多节点的缓存同步

J2Cache 是一个两级的缓存框架,第一级是基于内存的数据缓存,支持 caffeine、ehcache2 和 ehcache3 ,二级缓存只支持 redis。 在某些生产环境中你可能没有 redis,但是又希望多个应用节点间...

2018/07/27 17:34
617
1
优化Ubuntu网络系统内核

在 Linux 下使用 J2Cache 时候需要修改系统的网络内核参数,对应文件 /etc/sysctl.conf,增加如下几行 net.core.rmem_max = 26214400 25M net.core.wmem_max = 655360 640K 主要是使用J2Cac...

2015/05/18 15:30
17
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部