您好,登錄后才能下訂單哦!
這篇文章主要講解了“Redis與Shiro集群怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Redis與Shiro集群怎么使用”吧!
具體內容
如果現在使用了Shiro集群,為了避免出現訪問的問題,那么一定需要將所有Shiro的Session緩存到Redis數據庫之中,而后Shiro登錄分為兩部分:登錄認證、授權。為了防止出現重復的登錄操作,所以本次在進行處理的時候要對兩個數據進行緩存:Shiro的Session處理、Shiro角色信息。同時為了方便處理,本次將采用Spring-Data框架針對于Redis進行處理。
在之前使用過的Session的管理采用了如下配置的一個類完成:
1、需要定義一個自己的SessionDAO的實現,這個DAO的實現最好直接繼承“EnterpriseCacheSessionDAO”父類。
2、修改applicationContext.xml配置文件:
那么此時在分布式集群中所有可以使用的Session數據都會保存在Redis里面。
3、總結
由于Shiro有自己的Session實現機制,所以在分布式集群之中,此類模式一定是必然的選擇。
課程名稱:利用Redis序列化角色與權限數據
2、具體內容
在之前學習Shiro的時候由于只是單WEB端,所以所有的角色與權限都序列化到了內存里面,使用了EHCache緩存組件完成的,具體的配置如下:
但是現在是屬于服務器集群的環境下,那么現在如果將某一個角色或權限只是保存在了一臺WEB服務器的內存里面,那么其它的服務器如果需要角色或權限還需要進行一次查詢。現在最好的做法也是將角色和權限的數據序列化到Redis數據里面,這樣就不需要每一個的WEB端進行重復的查詢處理了。1、首先如果要想將數據序列化到Redis數據庫之中,那么現在就必須有一個與之匹配的Cache處理類,就是CRUD。范例:定義RedisCache處理類
2、所有的Cache接口的對象一定要通過CacheManager進行處理。范例:定義RedisCacheManager程序類
3、修改applicationContext.xml配置文件:
那么此時所有的權限與角色的緩存數據都將保存在Redis數據庫里面。
感謝各位的閱讀,以上就是“Redis與Shiro集群怎么使用”的內容了,經過本文的學習后,相信大家對Redis與Shiro集群怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。