XXL-CACHE v1.4.0 | 多级缓存框架
Release Notes
- 1、【升级】项目升级JDK17;
- 2、【升级】项目部分依赖升级,如caffeine,适配JDK17;
- 3、【优化】L1缓存广播发布/订阅断连重连优化(ISSUE-32);
- 4、【重构】合并PR-28,重构 getCache 方法并优化性能;
- 5、【优化】合并PR-35,引入单元测试框架,重写单元测试方法;
- 6、【升级】多个依赖升级最新版本,如jedis、caffeine等;
XXL- CACHE 快速接入示例
代码参考github仓库 /test 目录:https://github.com/xuxueli/xxl-cache/tree/master/xxl-cache-samples
1、Maven引入:
<!-- https://mvnrepository.com/artifact/com.xuxueli/xxl-cache-core -->
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-cache-core</artifactId>
<version>${最新稳定版}</version>
</dependency>
2、组件配置:
配置文件说明:
# xxl-cache
## L1缓存(本地)提供者,默认 caffeine
xxl.cache.l1.provider=caffeine
## L1缓存最大容量,默认10000;
xxl.cache.l1.maxSize=-1
## L1缓存过期时间,单位秒,默认10min;
xxl.cache.l1.expireAfterWrite=-1
## L2缓存(分布式)提供者,默认 redis
xxl.cache.l2.provider=redis
## L2缓存序列化方式,默认 java
xxl.cache.l2.serializer=java
## L2缓存节点配置,多个节点用逗号分隔;示例 “127.0.0.1:6379,127.0.0.1:6380”
xxl.cache.l2.nodes=127.0.0.1:6379
## L2缓存用户名配置
xxl.cache.l2.user=
## L2缓存密码配置
xxl.cache.l2.password=
组件初始化配置:
@Bean(initMethod = "start", destroyMethod = "stop")
public XxlCacheFactory xxlCacheFactory() {
XxlCacheFactory xxlCacheFactory = new XxlCacheFactory();
xxlCacheFactory.setL1Provider(l1Provider);
xxlCacheFactory.setMaxSize(maxSize);
xxlCacheFactory.setExpireAfterWrite(expireAfterWrite);
xxlCacheFactory.setL2Provider(l2Provider);
xxlCacheFactory.setSerializer(serializer);
xxlCacheFactory.setNodes(nodes);
xxlCacheFactory.setUser(user);
xxlCacheFactory.setPassword(password);
return xxlCacheFactory;
}
经过上述2步,已完成全部配置工作。
3、客户端接入:
String category = "user";
String key = "user03";
// 缓存写入
XxlCacheHelper.getCache(category).set(key, value);
// 缓存查询
String value = XxlCacheHelper.getCache(category).get(key);
// 缓存删除
XxlCacheHelper.getCache(category).del(key);
...
简介
XXL-CACHE 是一个 多级缓存框架,高效组合本地缓存和分布式缓存(Redis+Caffeine),支持“多级缓存、一致性保障、TTL、Category隔离、防穿透”等能力;拥有“高性能、高扩展、灵活易用”等特性,提供高性能多级缓存解决方案;
特性
- 1、灵活易用: 接入灵活方便,一分钟上手;
- 2、多级缓存:高效组合本地缓存和分布式缓存(Redis+Caffeine),支持L1、L2级别缓存,支持多场景缓存诉求;
- 3、高扩展:框架进行模块化抽象设计,本地缓存、分布式缓存以及序列化方案均支持自定义扩展;
- 4、高性能:底层设计L1(Local)+L2(Remote)多级缓存模型,除分布式缓存之外前置在应用层设置本地缓存,高热查询前置本地处理避免远程通讯,最大化提升性能;
- 5、一致性保障:支持多层级、集群多节点之间缓存数据一致性保障,借助广播消息(Redis Pub/Sub)以及客户端主动过期,实现L1及L2之间以及L1各集群节点间缓存数据一致性同步;
- 6、TTL:支持TTL,支持缓存数据主动过期及清理;
- 7、Category隔离:支持自定义缓存Category分类,缓存数据存储隔离;
- 8、缓存风险治理:针对典型缓存风险,如缓存穿透,底层进行针对性设计进行风险防护;
- 9、透明接入:支持业务透明接入,屏蔽底层实现细节,降低业务开发成本,以及学习认知成本;
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
XXL-CRAWLER v1.5.0 | Java 爬虫框架
Release Notes 1、【升级】项目升级JDK17; 2、【升级】代码兼容改造,适配JDK17; 3、【升级】多个依赖升级至更新版本,如jsoup、selenium等。 引入Maven依赖 <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-crawler</artifactId> <version>${最新稳定版}</version> </dependency> 代码示例 注意:仅供学习测试使用,如有侵犯请联系删除 提示:更多测试代码可以前往仓库查看:测试代码目录 爬虫名称:Gitee高星项目采集爬虫 爬虫功能:一行代码启动多线程爬虫,分页方式扩散爬取“Gitee开源项目列表”,通过“注解式”自动提取页面数据,封装成PageVo输出; XxlCrawler crawler = new XxlCrawler.Builder() .setUrls("https://gitee.com/explore...
-
下一篇
XXL-BOOT v1.2.0 | 快速开发平台
Release Notes 1、【升级】项目升级 SpringBoot3 + JDK17; 2、【升级】升级多项依赖至较新版本,如xxl-sso、jakarta、spring等,适配JDK17; 3、【重构】登录认证重构,集成XXL-SSO提供登录认证能力,可扩展支持单点登录、分布式认证...等多场景登录诉求; 4、【重构】权限认证重构,支持注解式/API方式快速鉴权,便捷集成系统RBAC权限系统,提升系统安全性、以及二次开发效率体验; 5、【升级】升级依赖版本,如slf4j、xxl-tool、spring、gson、mysql-connector…等; 简介 XXL-BOOT 是一个快速开发平台,易学易用、简化开发、丰富扩展、开箱即用。内置安全登录、权限管控、端到端代码生成、响应式UI、国际化、分布式扩展……等能力。整合前后端流行技术,致力为 中小企业、个人开发者 打造开箱即用的中后台解决方案。 项目资料 中文文档 社区交流 特性 1、安全登录:基于token设计登录、注销能力,系统支持集群部署及登录,保障账号及用户资产安全。 2、权限管控:基于RBAC设计的用户角色权限管控能力,支...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL数据库在高并发下的优化方案
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7设置SWAP分区,小内存服务器的救世主
- MySQL8.0.19开启GTID主从同步CentOS8
- MySQL数据库中FOR UPDATE的使用
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果


微信收款码
支付宝收款码