温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Redis与Shiro集群怎么使用

发布时间:2021-12-23 17:18:42 来源:亿速云 阅读:254 作者:iii 栏目:大数据

这篇文章主要讲解了“Redis与Shiro集群怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis与Shiro集群怎么使用”吧!

具体内容

如果现在使用了Shiro集群,为了避免出现访问的问题,那么一定需要将所有Shiro的Session缓存到Redis数据库之中,而后Shiro登录分为两部分:登录认证、授权。为了防止出现重复的登录操作,所以本次在进行处理的时候要对两个数据进行缓存:Shiro的Session处理、Shiro角色信息。同时为了方便处理,本次将采用Spring-Data框架针对于Redis进行处理。


在之前使用过的Session的管理采用了如下配置的一个类完成:

Redis与Shiro集群怎么使用

1、需要定义一个自己的SessionDAO的实现,这个DAO的实现最好直接继承“EnterpriseCacheSessionDAO”父类。

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

2、修改applicationContext.xml配置文件:

Redis与Shiro集群怎么使用

那么此时在分布式集群中所有可以使用的Session数据都会保存在Redis里面。

3、总结

由于Shiro有自己的Session实现机制,所以在分布式集群之中,此类模式一定是必然的选择。


课程名称:利用Redis序列化角色与权限数据

Redis与Shiro集群怎么使用

2、具体内容

在之前学习Shiro的时候由于只是单WEB端,所以所有的角色与权限都序列化到了内存里面,使用了EHCache缓存组件完成的,具体的配置如下:

Redis与Shiro集群怎么使用

但是现在是属于服务器集群的环境下,那么现在如果将某一个角色或权限只是保存在了一台WEB服务器的内存里面,那么其它的服务器如果需要角色或权限还需要进行一次查询。现在最好的做法也是将角色和权限的数据序列化到Redis数据里面,这样就不需要每一个的WEB端进行重复的查询处理了。1、首先如果要想将数据序列化到Redis数据库之中,那么现在就必须有一个与之匹配的Cache处理类,就是CRUD。范例:定义RedisCache处理类

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

2、所有的Cache接口的对象一定要通过CacheManager进行处理。范例:定义RedisCacheManager程序类

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

3、修改applicationContext.xml配置文件:

Redis与Shiro集群怎么使用

Redis与Shiro集群怎么使用

那么此时所有的权限与角色的缓存数据都将保存在Redis数据库里面。

感谢各位的阅读,以上就是“Redis与Shiro集群怎么使用”的内容了,经过本文的学习后,相信大家对Redis与Shiro集群怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI