集群部署的落地实现之spring shiro redis 架构 第一篇 shiro通过springcache集成redis缓存
本系列文章针对的是使用shiro框架实现的权限管理系统。这样的系统改成集群模式,主要是把shiro更换为集群模式,让shiro管理的session实现共享。本文介绍的就是借助分布式缓存redis来实现用户会话共享。 shiro的缓存体系分为两种情况,一是使用jvm内存缓存MemorySessionDAO,二是使继承CachingSessionDAO实现里面的抽象方法。本文实现的是集群模式,所以只能使用第二种方式。shiro没有自己实现缓存,但是定义好了缓存模板,只要把自定义的缓存管理器cacheManager注入到shiro配置文件即可。好的,接下来问题就是编写缓存管理器了。 仔细看看文章的标题,我们借助springcache来编写cacheManager,这样就不需要完整编写cacheManager了。只要把这个桥梁给适配好即可。但是缓存管理器管理的缓存对象需要自己去完整编写。 不说了,直接上代码。 import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.shiro.cache.Cache; import org.apache.shiro.cache.CacheException; import org.apache.shiro