什么是集群
多个服务器集中做一件事
集群和分布式的区别(面试题)
相同点:解决高并发大数据等问题
不同点:
集群:多个服务器去完成同一个功能 一起做事
分布式:多个服务器做不同的功能 分头做事
为什么需要集群,集群有什么好处
解决高并发,大数据等问题
集群的特点
- 扩展性 ---可以动态去扩展服务器
- 高可用 ---具备容错的功能(错误恢复)
- 负载均衡 ---把请求分配到不同的服务器里面
如何去做集群?
方案一 主从复制
优点:完成主从复制
缺点:不能完成容错和恢复功能 手动重启
扩展服务器比较麻烦
方案二 哨兵模式
优点:完成自动的主从切换
缺点:Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂
**方案三 Redis-Cluster
优点:可以完成分布式存储 解决容量问题
Redis-Cluster采用无中心结构
redis集群搭建步骤
- 拷贝6分redis文件 修改端口(6379-6384) 修改配置
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000
appendonly yes
- 编写一个启动脚本
在对应的文件夹新创建文件startup.bat
title redis-6379
redis-server.exe redis.windows.conf
- 安装ruby环境
- 安装ruby驱动环境
\rubygems-2.7.7 目录里面执行文件 ruby setup.rb - 通过驱动安装redis
切换到6379文件夹里面安装redis
gem install redis
- 启动服务 创建集群 启动6379-6384服务
创建集群
redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384