window下使用Redis Cluster部署Redis集群
日常的项目很多时候都需要用到缓存。redis算是一个比较好的选择。一般情况下做一个主从就可以满足一些比较小的项目需要。在一些并发量比较大的项目可能就需要用到集群了,redis在Windows下做集群可能未必可取,就算是学习一下,今天就和大家分享一下在Windows下部署redis集群。
使用时候可以先了解redis cluster的原理http://www.cnblogs.com/foxmailed/p/3630875.html
一、环境
系统:Windows7
redis版本:2.8
ruby环境
二、环境准备
因为使用的这个工具是用ruby开发的所以需要安装一下ruby的环境。
1、ruby下载安装http://rubyinstaller.org/downloads/

2、redis下载安装https://github.com/MSOpenTech/redis,下载解压找到redis-trib.rb文件,这文件在创建redis集群的时候会用到,等下再做介绍


如果有以下这部分文件就直接使用,不然就自己去下载一下Windows版本的redis。解压后也会有以下的文件

3、安装Ruby,win下安装完程序ruby环境已经继承好了,一般不需要做什么改动
(有的人建议ruby 使用淘宝的源https://ruby.taobao.org/,因为在使用的过程中没发现有什么问题所以就没有换)
在cmd下运行
gem install redis
如果redis环境安装不成功在下面会出现以下下错误。具体可以参考http://blog.csdn.net/moxiaomomo/article/details/17540813

安装成功!

三、redis配置
1、打开redis的配置文件redis.windows.conf(配置文件名称可以改变,启动的时候指定配置文件即可),只保留以下几项配置项
daemonize yes
port
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout
appendonly yes

2、如此复制六份,分别改端口号为9001~9006。分别启动9001到9006的redis程序。



3、配置集群
执行脚本。具体操作可参考http://doc.redisfans.com/topic/cluster-tutorial.html#id5
redis-trib.rb create --replicas 1 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005 127.0.0.1:9006
命令的意义如下:
给定 redis-trib.rb 程序的命令是 create , 这表示我们希望创建一个新的集群。
选项 --replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。

执行成功后。查看nodes.conf文件。里面的对应配置信息说明每个主节点和从节点的关系。

4、集群节点的操作
添加节点:重新添加两个节点9007和9008如9001操作,所添加两个节点为主节点
redis-trib.rb add-node 127.0.0.1:9007 127.0.0.1:9008


删除节点:移除9004节点
redis-trib.rb del-node 127.0.0.1:9001 6fd2df0fa12e0ce5ea150f03bdb6a969a189d885 --该ID为9004节点ID

添加从节点:为9003添加从节点9004
redis-trib.rb add-node --slave --mast er-id 26212a8a04d9c36f68f049630d2bdac602a9ddfa 127.0.0.1:9004 127.0.0.1:9003
【26212a8a04d9c36f68f049630d2bdac602a9ddfa】是9003节点ID

通过上述例子算是对redis在Windows下部署集群有一定的了解,当然Redis Cluster还包括了故障转移、重新分配,以及客服端连接时的指向等内容,有兴趣的可以去深入了解一下。入门的东西都不难,怎么样使用好才是关键!
window下使用Redis Cluster部署Redis集群的更多相关文章
- 【docker】【redis】2.docker上设置redis集群---Redis Cluster部署【集群服务】【解决在docker中redis启动后,状态为Restarting,日志报错:Configured to not listen anywhere, exiting.问题】【Waiting for the cluster to join...问题】
参考地址:https://www.cnblogs.com/zhoujinyi/p/6477133.html https://www.cnblogs.com/cxbhakim/p/9151720.htm ...
- Redis Cluster高可用集群在线迁移操作记录【转】
之前介绍了redis cluster的结构及高可用集群部署过程,今天这里简单说下redis集群的迁移.由于之前的redis cluster集群环境部署的服务器性能有限,需要迁移到高配置的服务器上.考虑 ...
- Redis Cluster高可用集群在线迁移操作记录
之前介绍了redis cluster的结构及高可用集群部署过程,今天这里简单说下redis集群的迁移.由于之前的redis cluster集群环境部署的服务器性能有限,需要迁移到高配置的服务器上.考虑 ...
- 近千节点的Redis Cluster高可用集群案例:优酷蓝鲸优化实战(摘自高可用架构)
(原创)2016-07-26 吴建超 高可用架构导读:Redis Cluster 作者建议的最大集群规模 1,000 节点,目前优酷在蓝鲸项目中管理了超过 700 台节点,积累了 Redis Clus ...
- [MapReduce_add_1] Windows 下开发 MapReduce 程序部署到集群
0. 说明 Windows 下开发 MapReduce 程序部署到集群 1. 前提 在本地开发的时候保证 resource 中包含以下配置文件,从集群的配置文件中拷贝 在 resource 中新建 ...
- 部署Redis Cluster 6.0 集群并开启密码认证 和 Redis-cluster-proxy负载
部署Redis Cluster集群并开启密码认证 如果只想简单的搭建Redis Cluster,不需要设置密码和公网访问,可以参考官方文档. 节点介绍 Cluster模式推荐最少有6个节点,本次实验搭 ...
- redis cluster 设置密码做集群时gem下client.rb文件修改
redis节点有设置密码,然后在创建集群的时候没有设置密码的命令 ./redis-trib.rb create --replicas 1 127.0.0.1:6381 127.0.0.1:6382 1 ...
- redis cluster 6.2集群
redis最新版本:redis-6.2.1.tar.gz 安装的版本是redis-6.0.3 采用的主机: djz-server-001 192.168.2.163 7001,7002,Admin@1 ...
- redis 3.0的集群部署
转载请注明出处:http://hot66hot.iteye.com/admin/blogs/2050676 最近研究redis-cluster,正好搭建了一个环境,遇到了很多坑,系统的总结下,等到re ...
随机推荐
- 小兔JS教程(三)-- 彻底攻略JS回调函数
这一讲来谈谈回调函数. 其实一句话就能概括这个东西: 回调函数就是把一个函数当做参数,传入另一个函数中.传进去的目的仅仅是为了在某个时刻去执行它. 如果不执行,那么你传一个函数进去干嘛呢? 就比如说对 ...
- Log4net - 项目使用的一个简单Demo
参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...
- 从源码浅析MVC的MvcRouteHandler、MvcHandler和MvcHttpHandler
熟悉WebForm开发的朋友一定都知道,Page类必须实现一个接口,就是IHttpHandler.HttpHandler是一个HTTP请求的真正处理中心,在HttpHandler容器中,ASP.NET ...
- thinkphp数据的查询和截取
public function NewsList(){ $this->assign('title','news'); $p = I('page',1); $listRows = 6; $News ...
- H3 BPM产品安装手册(.Net版本)
1 安装说明 1.1 服务器安装必备软件 在使用该工作流软件之前,有以下一些软件是必须安装: l IIS7.0以上版本(必须): l .Net Framework 4.5(必 ...
- 编译器开发系列--Ocelot语言2.变量引用的消解
"变量引用的消解"是指确定具体指向哪个变量.例如变量"i"可能是全局变量i,也可能是静态变量i,还可能是局部变量i.通过这个过程来消除这样的不确定性,确定所引用 ...
- C#编写windows服务,多服务为什么只启动一个(ServiceBase.Run)
https://zhidao.baidu.com/question/380395667.html //多服务一个宿主程序时必须注间以下要点: Service1的ServiceName 必须 Insta ...
- mono for android学习过程系列教程(2)
接着上一讲继续开始写,今天介绍的是安卓的基本组成结构. 在大多数情况下,MONO FOR ANDROID的命名空间和Android的命名空间 是互相映射的.有时候需要大小写,非字母数字字符的用法以及名 ...
- ASP.NET 5运行时升级到Beta5
在Visual Studio 2015 RTM和Windows 10正式发布之前,微软把开源.NET升级到了beta5,带来了一些增强和改变.和Visual Studio 2015 RC一起安装的AS ...
- CSharpGL(10)两个纹理叠加
CSharpGL(10)两个纹理叠加 本文很简单,只说明如何用shader实现叠加两个纹理的效果. 另外,最近CSharpGL对渲染框架做了修改,清理一些别扭的内容(DoRender()前后的事件都去 ...