开发指南064-Caffeine里模式搜索

简介: 平台兼容Caffeine和Redis两种缓存模式,大型应用使用Redis,小型应用使用Caffeine

平台兼容Caffeine和Redis两种缓存模式,大型应用使用Redis,小型应用使用Caffeine,最外层使用qlmCacheTools进行封装,例如:

public void put(String key, String value){

   if ("Redis".equals(QLMContants.cacheMode)){

       redisutils.set(key,value);

   }

   else if ("Caffeine".equals(QLMContants.cacheMode)){

       CaffeineUtils.put(key,value);

   }

}

其中cacheMode来自配置文件。基本上所有操作都有对应方法,但是Redis有

public Set<K> keys(K pattern),就是按模式搜索,这个在平台上实际应用有查询在线用户,可惜的是Caffeine自己没有对应方法。这个只能老规则,自己写一个

Set<String> keys = momentaryStore.asMap().keySet();

for (String key : keys) {

   if (key.indexOf(pattern)>=0) {

       // 处理匹配的键

       keys.add(key);

   }

}

其中的momentaryStore:

protected  static  Cache<String, Object> momentaryStore =

       Caffeine.newBuilder()

               .expireAfterWrite(24*60, TimeUnit.MINUTES)

               .maximumSize(200000)

               .build();

相关文章
|
缓存 Java Redis
JetCache快速入门
本文简要介绍了基于注解来配置使用JetCache的方式。当使用JetCache的注解时,可以搭配Spring4.0.8以上版本,或者Spring Boot 1.1.9以上版本,本文同时展示了这两种情况下的配置方式。
18632 0
|
8月前
|
SQL 安全 Java
【SpringSecurity】简介
【SpringSecurity】简介
70 0
|
8月前
|
缓存 NoSQL Java
SpringBoot:第五篇 集成Guava(本地缓存+分布式缓存)
SpringBoot:第五篇 集成Guava(本地缓存+分布式缓存)
380 0
|
安全 Java 测试技术
Github标星98k,Alibaba最新发布的Spring Boot项目实战文档!太强了
前言 又到了一年一度的备战秋招的时间,虽然这两年因为经济环境不太好,互联网行业的各大厂都再裁员,但是今年的秋招经济形势正在复苏,我特地拜托阿里的朋友将这份Spring Boot项目实战开发文档分享出来。 本文档涵盖Spring Boot企业级项目开发的各方面知识,重点介绍Maven项目的搭建、Jersey Restful风格、Postman测试接口、Swagger2可视化文档、Lombok优雅编码、Redis缓存、Security安全机制、Web Service服务、WebSocke t通信、性能测试、集成测试、Jeecg Boot快速开发框架、使用Docker进行项目部署、使
|
安全 Java 数据安全/隐私保护
SpringSecurity的简介
SpringSecurity简介
182 0
SpringSecurity的简介
集成Swagger2相关问题解决方案
集成Swagger2相关问题解决方案
|
缓存 Dubbo Java
SpringBoot如何一分钟集成Caffeine?
SpringBoot如何一分钟集成Caffeine?
730 0
|
缓存 监控 NoSQL
jetcache教程
jetcache教程
1269 0
|
缓存 NoSQL Java
Redisson官方文档 - 14. 第三方框架整合
Redisson官方提供了一些列常见框架的整合,包括Spring,Spring缓存,Hibernate二级缓存和JMX/DropWizard统计等,还提供了拿来即用的Tomcat会话管理器以及Spring会话管理器。
13884 0
|
SQL Java 数据库
GreenDAO简介
Android本身自带的SQLite,大家一定都用过,然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等。
950 0