Ehcache与 Redis缓存

以授权功能而言

每次查询数据库消耗性能

鉴于权限数据一般不容易变,所以用缓存

用户第一次授权:调用realm查询数据库  第二次:直接从缓存中取出授权信息

缓存有两种方式:Ehcache  Redis

Ehcache缓存

1. jar

     

2. shiro-ehcache.xml

     

3. 解决配置文件红色问题

     

4. application.xml文件中配置

     

5. 效果

第一次访问数据库后,之后不再访问数据库,一切授权功能从缓存中读取

不再经历此断点

     

 

Redis缓存

1. jar

     

2. spirng-redis.xml

     

    

3. ApplicationContext导入spirng-redis.xml

     

4. Jedis工具类

     

5. RedisCache 实现shiro提供的Cache接口

     

    

     

 

6. 创建 CustomCacheManager 实现 CacheManager 接口

     

7.  applicationContext.xml 中配置缓存管理器,和 Cache 对象

     

8. 执行代码后 redis数据库

     

9.结果

     

    

ehcache 和  redis  比较

1. ehcache 直接在 jvm 虚拟机中缓存,速度快,效率高;但是缓存共享麻烦,集群分布式应用不方便。

2. redis 是通过 socket 访问到缓存服务,效率比 ehcache 低,比数据库要快很多,处理集群和分布式缓存方便,有成熟的方案。如果是单个应用或者对缓存访问要求很高的应用,用 ehcache。如果是大型系统,存在缓存共享、分布式部署、缓存内容很大的,建议用 redis

3.shiro缓存

    Encache 第一次 先访问数据库在访问缓存
    redis第一次先访问缓存在访问数据库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值