Windows下搭建Redis单元测试环境以及Redis集群环境

Windows下搭建Redis单元测试环境以及Redis集群环境

一、单元测试集成单节点RedisServer

在进行REDIS相关的开发测试的时候,往往需要在本地搞REDIS服务。

如果是WINDOWS环境,单机的话,集成在单元测试里面,可以使用如下坐标,引入REDIS服务。

<dependency>
<groupId>com.github.kstyrc</groupId>
<artifactId>embedded-redis</artifactId>
<version>0.6</version>
</dependency>

然后通过以下语句创建RedisServer实例

RedisServer redisServer = RedisServer.builder().port(6379).setting("maxheap 100m").build();
redisServer.start();

需要注意的是,在其他的参考材料中,跟以上语句会有所区别,主要在于对于maxheap的设置,部分内存比较小的机器如果不加这个限定,会启动失败,有这个参数,就好了。

二、Windows本地搭建Redis集群

以上单节点RedisServer在有些时候不够用。比如要验证集群相关的代码或者场景时,还是需要使用真实的Redis集群的,这个时候,如果在本地有个直接可用的Redis集群是最好不过的了。

先附上一个可以直接使用的Redis集群压缩包,解压缩,然后redis-9000到redis-9005文件夹,点击Start.bat逐个启动每个节点。就完成了一个3主3从Redis集群的构建。

下载链接:https://xudongvp.com/wp-content/uploads/2022/05/Redis-x64-3.0.504-cluster-[xudongvp.com].zip

单节点的配置文件修改就不再赘述了,自己看着修改。说一下单个节点启动完毕后,集群关系的建立过程,分为三步。

1、让各节点可见
redis-cli -c -p 9000 cluster meet 127.0.0.1 9001
redis-cli -c -p 9000 cluster meet 127.0.0.1 9002
redis-cli -c -p 9000 cluster meet 127.0.0.1 9003
redis-cli -c -p 9000 cluster meet 127.0.0.1 9004
redis-cli -c -p 9000 cluster meet 127.0.0.1 9005

2、配置slot(下面命令傻了点,其实是可以一次设置一堆的)

写一个BAT文件,放进去。
FOR /L %%X IN (0,1,5462) DO redis-cli -p 9000 CLUSTER ADDSLOTS %%X
FOR /L %%X IN (5462,1,5461) DO redis-cli -p 9001 CLUSTER ADDSLOTS %%X
FOR /L %%X IN (10924,1,5459) DO redis-cli -p 9002 CLUSTER ADDSLOTS %%X

3、配置主从关系
redis-cli -p 9003 cluster replicate 71e9034850ff5cdcba4df678f181a401c31a134a
redis-cli -p 9004 cluster replicate d3ccb2dfb8d9642111e03784fc4d9b3c7a59f331
redis-cli -p 9005 cluster replicate 9619218b12b06818dad381f8a9134363e3faea79

然后逐个检查下nodes-900X.conf的集群状态文件,确认符合预期,就搭建完毕。

简单吧?