常言笑的家

          Spring, Hibernate, Struts, Ajax, RoR

          Redis 3.X版本引入了集群的新特性的三種用法

          一、利用Jedis來(lái)實(shí)現(xiàn)

                  Set<HostAndPort>  jedisClusterNodes = new HashSet<HostAndPort>();

                    //Jedis Cluster will attempt to discover cluster nodes automatically

                   jedisClusterNodes.add(new HostAndPort("10.96.5.183",9001));

                   jedisClusterNodes.add(new HostAndPort("10.96.5.183",9002));

                   jedisClusterNodes.add(new HostAndPort("10.96.5.183",9003));

                  JedisCluster jc = new JedisCluster(jedisClusterNodes);

          二、利用spring-data-redis來(lái)實(shí)現(xiàn)

               <!--通過(guò)構(gòu)造方法注入RedisNode-->

               <bean id="clusterRedisNodes1"   class="org.springframework.data.redis.connection.RedisNode"> 

                      <constructor-arg value="10.96.5.183" />

                     <constructor-arg value="9002" type="int" />

               </bean>

               ....

              <!--setter方式注入-->

              <bean id="redisClusterConfiguration"   class="org.springframework.data.redis.connection.RedisClusterConfiguration">

                 <property name="clusterNodes">

                        <set>

                                  <ref bean="clusterRedisNodes1"/>

                                 <ref bean="clusterRedisNodes2"/>

                                 <ref bean="clusterRedisNodes3"/>

                        </set>

                 </property>
              </bean>

            <!--setter方式注入,對(duì)應(yīng)的屬性需存在setterXXX方法-->


             <bean id="jedisPoolConfig"   class="redis.clients.jedis.JedisPoolConfig">

                      <property name="maxToal" value="1000" />

                     <property name="maxIdle" value="1000" />

                     <property name="maxWaitMillis" value="1000" />

             </bean>

            <bean id="jedisConnFactory"   class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" p:use-pool="true">

                     <constructor-arg ref="redisClusterConfiguration" />

                     <constructor-arg ref="jedisPoolConfig" />

            </bean>

           <bean id="redisTemplate"   class="org.springframework.data.redis.core.RedisTemplate"  p:connection-factory-ref="jedisConnFactory" />

          <!--setter方式注入PersonRepoImpl-->

          <bean id="personRepo"  class="com.example.repo.impl.PersonRepoImpl">

                 <property name="redisTemplate" ref="redisTemplate" />

          </bean>

          三、簡(jiǎn)單集成Spring

              自己編寫(xiě)jedisCluster的工廠類JedisClusterFactory,然后通過(guò)Spring注入的方式獲取jedisCluster,實(shí)現(xiàn)客戶端使用Redis3.0版本的集群特性。

          posted on 2016-08-07 17:32 常言笑 閱讀(590) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          My Links

          Blog Stats

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 加查县| 博野县| 乌兰县| 陇南市| 新龙县| 徐水县| 潮州市| 荥阳市| 德格县| 饶阳县| 西平县| 田东县| 丹棱县| 哈尔滨市| 旺苍县| 肇庆市| 旌德县| 云霄县| 法库县| 永清县| 大埔区| 白玉县| 固镇县| 彰化市| 鹤峰县| 探索| 利川市| 太保市| 武山县| 和田市| 舒城县| 定结县| 嘉善县| 蕉岭县| 册亨县| 安西县| 孙吴县| 淳安县| 台南市| 乌审旗| 铁岭市|