window安装 redis集群 并测试通过

实现方式:选择一台window的电脑在电脑上创建一个redis服务作为master节点(负责写操作),另外创建多个redis服务作为slave节点(负责读操作),slave节点上的数据完全由master节点同步过来。

作用:降低单节点redis服务器的读写负载,将读写分离到不同的服务
提供数据的可用性

1.   自行下载redis客户端。redis官方不支持Windows系统,所以官网上是下载不到的,需要到github上面下载,地址:

      https://github.com/MicrosoftArchive/redis/releases

将下载后的zip文件解压到本地磁盘,注意解压到的目录不能有中文和特殊字符,否则会出现很多奇葩的问题。解压后的目录如下:

在文件夹下运行窗口:

 出现界面,并输入运行:

该命令指定了配置文件,不指定的情况下默认读取的配置文件是redis.windows.conf, redis6379.conf只是我拷贝的副本:

redis 嫌弃你内存不够了,就给你不开第二个实例。 The Windows version of Redis allocates a large memory mapped file for sharing 

the heap with the forked process used in persistence operations.这句话说的很明白了

解决办法:

1:改redis.windows.conf中的maxheap参数

maxheap 10240000

这个方法我使用未能解决

2:启动加maxheap参数

redis-server.exe --maxheap 10240000

多少个0根据数据情况配置,不要太多了

重新启动成功,如下:

 

重新打开新的窗口 ,运行第二个命令:

 继续开始第三个成功:

这个时候第一个窗口已经显示着两个slave的链接了,如图:

接着 我们打开客户端看下结果:

试着测试数据 发现可以保存数据了。

用工具类查看 ,依旧可以查看数据:

redis连接工具的链接:https://pan.baidu.com/s/1OwUC1-ifBxdHpSL6BU_9qw
提取码:9enp

到此一主二从已经搭建好了, 如果继续搭建哨兵模式的话 需要继续启动三个 sentinel服务:

先创建三个服务:

在服务中配置好信息:

下面是详细信息:

1. port :当前Sentinel服务运行的端口 

  1. port 26379 // 当前Sentinel服务运行的端口  
  2. sentinel monitor mymaster 127.0.0.1 6379 2   
  3. sentinel down-after-milliseconds mymaster 5000  
  4. sentinel parallel-syncs mymaster 1  
  5. sentinel failover-timeout mymaster 15000  

2.sentinel monitor mymaster 127.0.0.1 6379 2:Sentinel去监视一个名为mymaster的主redis实例,这个主实例的IP地址为本机地址127.0.0.1,端口号为6379,而将这个主实例判断为失效至少需要2个 Sentinel进程的同意,只要同意Sentinel的数量不达标,自动failover就不会执行  

3.sentinel down-after-milliseconds mymaster 5000:指定了Sentinel认为Redis实例已经失效所需的毫秒数。当 实例超过该时间没有返回PING,或者直接返回错误,那么Sentinel将这个实例标记为主观下线。只有一个 Sentinel进程将实例标记为主观下线并不一定会引起实例的自动故障迁移:只有在足够数量的Sentinel都将一个实例标记为主观下线之后,实例才会被标记为客观下线,这时自动故障迁移才会执行  

4.sentinel parallel-syncs mymaster 1:指定了在执行故障转移时,最多可以有多少个从Redis实例在同步新的主实例,在从Redis实例较多的情况下这个数字越小,同步的时间越长,完成故障转移所需的时间就越长  

5.sentinel failover-timeout mymaster 15000:如果在该时间(ms)内未能完成failover操作,则认为该failover失败

下面开始执行命令:

 

到此三个哨兵已经创建完成,测试下:

 显示可以见到:1个master 2个slave 3个sentinel  到此 redis集群已经创建完成了。

猜你喜欢

转载自blog.csdn.net/java173842219/article/details/83858218