java 静态变量缓存_Redis 与 Java 静态变量缓存去读记录

测试数据:4198条的一个数据列表。

Redis采用Key Value 存储形式,直接缓存4198条的一个List对象。

下文说到的Code代表的是一个唯一的Key.

分别测试1000次、10000次读取耗时:

测试一:

通过Code获取对象,流程:从redis取出所有数据,遍历查找所需的数据,查询到后,放入redis,下次查找直接从redis返回:public DictionaryDto getDictionaryByCode(String code) {

DictionaryDto dictionaryDto = (DictionaryDto) setCacheKey(DICTIONARY_SINGLE_PREFIX + code).getCacheContent();

if (dictionaryDto == null) {

dictionaryDto = getAll().stream().filter(t -> t.getCode().equals(code)).findFirst().get();

setCacheKey(DICTIONARY_SINGLE_PREFIX + code).setCacheContent(dictionaryDto).save();

}

return dictionaryDto;

}

耗时:4385ms,41728ms

测试二:

通过Code获取对象,流程:从redis取出所有数据放入静态变量,下次查找出在静态变量中遍历查询,不再连接redis:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值