shiro集群session共享 shiro-redis3.1.0支持集群版本

之前由于shiro-redis版本使用过低,所以没有支持集群。目前最新的shiro-redis3.1.0是有支持redis集群配置的。

<dependency>
    <groupId>org.crazycake</groupId>
    <artifactId>shiro-redis</artifactId>
    <version>3.1.0</version>
</dependency>

这里是写shiro-redis插件的大佬在github上发布的spring整合shiro-redis的Demo

<!-- shiro-redis configuration [start] -->
<!-- shiro redisManager -->
<bean id="redisManager" class="org.crazycake.shiro.RedisManager">
    <property name="host" value="127.0.0.1:6379"/>
    <!-- optional properties
    <property name="timeout" value="10000"/>
    <property name="password" value="123456"/>
    <property name="database" value="1"/>
    <property name="jedisPoolConfig" ref="jedisPoolConfig"/>
    <property name="count" value="100"/>
    -->
</bean>
<!--
如果是redis集群,可以使用这个配置
<bean id="redisManager" class="org.crazycake.shiro.RedisClusterManager">
    <property name="host" value="192.168.21.3:7000,192.168.21.3:7001,192.168.21.3:7002,192.168.21.3:7003,192.168.21.3:7004,192.168.21.3:7005"/>
</bean>
-->
<!-- Redis-based session configuration -->
<bean id="redisSessionDAO" class="org.crazycake.shiro.RedisSessionDAO">
    <property name="redisManager" ref="redisManager" />
    <!-- optional properties
    <property name="expire" value="-2"/>
    <property name="keyPrefix" value="shiro:session:" />
    -->
</bean>
<bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">
    <property name="sessionDAO" ref="redisSessionDAO" />
</bean>

<!-- Redis-based cache configuration -->
<bean id="cacheManager" class="org.crazycake.shiro.RedisCacheManager">
    <property name="redisManager" ref="redisManager" />
    <!-- optional properties
    <property name="expire" value="1800"/>
    <property name="keyPrefix" value="shiro:cache:" />
    <property name="principalIdFieldName" value="id" />
    -->
</bean>

<!-- securityManager -->
<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
    <property name="sessionManager" ref="sessionManager" />
    <property name="cacheManager" ref="cacheManager" />

    <!-- other configurations -->
    <property name="realm" ref="exampleRealm"/>
    <property name="rememberMeManager.cipherKey" value="kPH+bIxk5D2deZiIxcaaaA==" />
</bean>
<!-- shiro-redis configuration [end] -->

最后附上这位大佬的github地址与邮箱

If you found any bugs

Please send email to [email protected](可以用中文嗷!)

github地址:https://github.com/alexxiyang/shiro-redis

猜你喜欢

转载自blog.csdn.net/qq_39226486/article/details/82262195