https://blog.csdn.net/wold2013/article/details/71077804
截一张图来简单介绍一下redis,下面开始介绍redis集群的搭建,搭建过程中用到的包博主将会给到链接,可以直接免费下载。
Redis安装
下载解压完,打开cmd切换到redis目录敲击 redis-server.exe redis.window.conf开始运行
显示这样的图片就表示运行成功
这样,我们就成功启动了了一个redis服务。就可以在里面进行一系列的增删改查操作。
示例:
重新打开一cmd,切换到指定目录,敲击redis-cli.exe -h 127.0.0.1 -p 6379
这就是存储和获取操作,在这里就不多做演示,下面继续我们的集群搭建。
Redis集群配置
我们在这里配置的集群是模拟6台服务器,需要开启6个redis服务,将解压完的redis文件复制六份,
在6个文件夹内新建redis.conf修改对应端口号:
-
port 7000
-
cluster-enabled yes
-
cluster-config-file nodes.conf
-
cluster-node-timeout 5000
-
appendonly yes
我们需要redis cluster管理工具redis-trib.rb来配置管理集群
将文件放入某一个redis服务下面就可以,redis-trib.rb文件需要ruby工具依赖。
Ruby环境安装(需要配置环境变量!)
redis集群需要rubygems组件
打开cmd切换到rubygems文件目录
安装 Redis 支持环境:
由于 GFW的问题, GEM 的源在国内不可用,所以使用淘宝的映像:
查看已存在的源:
gem sources -l
删除被墙的源:
gem sources -r https://rubygems.org/
添加:
gem sources -a http://gems.ruby-china.org/
安装 Redis 支持环境:
gem install redis
创建redis集群命令:
需要先启动六个redis服务:
我们可以新建redis.bat文件,这样就不用每次都输入命令了。
-
@echo off
-
E:
-
cd E:\bsh\redis\redis2\7001
-
redis-server.exe redis.conf
-
@pause
打开cmd切入放又redis-trib.rb文件的redis服务目录,敲击:
ruby redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
--replicas 1 即自动分配 Slave , 如果想手动指定 Slave , 将该值变为 0 即可, 地址列表中,只需要 3个实例即可。
由于使用的是 6个实例,自动分配 Slave ,所以前3个为 master , 后3 个为 slave, 并确定3个主节点的 slots 范围。
如果确认没有问题, 输入 yes
如果群集创建成功, 会输出 OK XXXXX
在这里我们集群就已创建成功啦~~
下面我们进行测试
Java测试:
新建Java类,导入
-
public static void main(String[] args) {
-
String key = "1417";
-
Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
-
jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7000));
-
JedisCluster jc = new JedisCluster(jedisClusterNodes);
-
jc.setnx(key, "bar");
-
String value = jc.get(key);
-
System.out.println("key-"+key+" slot-"+JedisClusterCRC16.getSlot(key)+" value-"+value);
-
String key2 = "288";
-
jc.setnx(key2, "bar2");
-
String value2 = jc.get(key);
-
System.out.println("key-"+key2+" slot-"+JedisClusterCRC16.getSlot(key2)+" value-"+value2);
-
}
输出:
然后进入指定的redis服务:
可以看到数据已经存储进入对应的redis集群里。
这样我们今天的redis集群搭建与测试就已经完成。