redis集群搭建

1 redis集群原理

redis集群搭建_第1张图片


2 搭建redis集群

2.1 redis搭建集群

192.168.25.143:6379

192.168.25.143:6380

192.168.25.144:6381

192.168.25.144:6382

192.168.25.145:6383

192.168.25.145:6384

2.2 redis的安装

Redis 集群管理工具 redis.trib.rb依赖ruby环境,首先需要安装ruby环境

在线安装ruby

yum –y install ruby

yum –y install rubygems

在linux里面执行就ok了

 

安装ruby和 redis的接口程序

gem install redis-3.0.0.gem

2.3 复制redis文件


2.4 删除单机版的数据文件

redis集群搭建_第2张图片

2.5 修改配置信息

Vim redis.conf

注释去掉

开启集群

2.6 复制redis到其他的服务器

scp -r /usr/redisCluster/ xxxxxx02:/usr/

scp -r /usr/redisCluster/ xxxxxx03:/usr/

scp -r /usr/redisCluster/ xxxxxx04:/usr/

2.6 更改复制后的6个redis服务器的端口号

Bin目录下的redis.conf中进行修改

另外两台服务器上的四个redis端口依次改为6381/6382、6383/6384

2.7 把6个redis服务器关联起来形成集群

依赖redis-trib.rb 脚本,所以一定要安装ruby环境。


cd src/

在src目录下

把所有的redis服务器都启动了然后在src目录下执行下面的脚本

创建集群的脚本

./redis-trib.rb create --replicas 1192.168.25.143:6379 192.168.25.143:6380 192.168.25.144:6381 192.168.25.144:6382192.168.25.145:6383  192.168.25.145:6384

 

选择yes 进行槽位的分配

redis集群搭建_第3张图片

集群成功

redis集群搭建_第4张图片

2.8 使用命令连接redis集群


查看你集群信息

redis集群搭建_第5张图片

查看redis 集群节点

redis集群搭建_第6张图片

保存数据到redis集群中,在保存数据的时候是根据算法算出槽位,然后再把数据保存到对应的槽位

redis集群搭建_第7张图片

2.9 java接口操作redis集群

//集群版 redis

   @Test

   publicvoid demo5() {

      //创建jedis的连接池配置类

      JedisPoolConfig config = new JedisPoolConfig();

      //设置最大连接数

      config.setMaxTotal(50);

      //节点

      Set hosts = new HashSet();

      //配置多个ip和端口

      hosts.add(new HostAndPort("192.168.25.143",6379));

      hosts.add(new HostAndPort("192.168.25.143",6380));

      hosts.add(new HostAndPort("192.168.25.144",6381));

      hosts.add(new HostAndPort("192.168.25.144",6382));

      hosts.add(new HostAndPort("192.168.25.145",6383));

      hosts.add(new HostAndPort("192.168.25.145",6384));

     

      //创建客服端(集群版)

      JedisCluster jedisCluster = new JedisCluster(hosts,config);

     

      //保存数据

      jedisCluster.set("赵六","aaabbb");

      String pasd = jedisCluster.get("赵六");

      System.out.println(pasd);

   }


2.10 jedisCluster整合spring

   <bean id="jedisCluster"class="redis.clients.jedis.JedisCluster">

     

      <constructor-arg index="0">

        <set>

           <bean class="redis.clients.jedis.HostAndPort">

           <constructor-arg index="0">

                 <value>192.168.25.143value>

              constructor-arg>

              <constructor-arg index="1">

                 <value>6379value>

              constructor-arg>

           bean>

           <bean class="redis.clients.jedis.HostAndPort">

              <constructor-arg index="0">

                 <value>192.168.25.143value>

              constructor-arg>

              <constructor-arg index="1">

                 <value>6380value>

              constructor-arg>

           bean>

           <bean class="redis.clients.jedis.HostAndPort">

             

              <constructor-arg index="0">

                 <value>192.168.25.144value>

              constructor-arg>

             

              <constructor-arg index="1">

                 <value>6381value>

              constructor-arg>

           bean>

           <bean class="redis.clients.jedis.HostAndPort">

             

              <constructor-arg index="0">

                 <value>192.168.25.144value>

              constructor-arg>

             

              <constructor-arg index="1">

                 <value>6382value>

              constructor-arg>

           bean>

           <bean class="redis.clients.jedis.HostAndPort">

             

              <constructor-arg index="0">

                 <value>192.168.25.145value>

              constructor-arg>

             

              <constructor-arg index="1">

                 <value>6383value>

              constructor-arg>

           bean>

           <bean class="redis.clients.jedis.HostAndPort">

             

              <constructor-arg index="0">

                 <value>192.168.25.145value>

              constructor-arg>

             

              <constructor-arg index="1">

                 <value>6384value>

              constructor-arg>

           bean>

        set>

      constructor-arg>

     

      <constructor-arg index="1" ref="jedisPoolConfig"/>

   bean >


你可能感兴趣的:(redis)