日常的项目很多时候都需要用到缓存。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集群的更多相关文章

  1. 【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 ...

  2. Redis Cluster高可用集群在线迁移操作记录【转】

    之前介绍了redis cluster的结构及高可用集群部署过程,今天这里简单说下redis集群的迁移.由于之前的redis cluster集群环境部署的服务器性能有限,需要迁移到高配置的服务器上.考虑 ...

  3. Redis Cluster高可用集群在线迁移操作记录

    之前介绍了redis cluster的结构及高可用集群部署过程,今天这里简单说下redis集群的迁移.由于之前的redis cluster集群环境部署的服务器性能有限,需要迁移到高配置的服务器上.考虑 ...

  4. 近千节点的Redis Cluster高可用集群案例:优酷蓝鲸优化实战(摘自高可用架构)

    (原创)2016-07-26 吴建超 高可用架构导读:Redis Cluster 作者建议的最大集群规模 1,000 节点,目前优酷在蓝鲸项目中管理了超过 700 台节点,积累了 Redis Clus ...

  5. [MapReduce_add_1] Windows 下开发 MapReduce 程序部署到集群

    0. 说明  Windows 下开发 MapReduce 程序部署到集群 1. 前提 在本地开发的时候保证 resource 中包含以下配置文件,从集群的配置文件中拷贝 在 resource 中新建  ...

  6. 部署Redis Cluster 6.0 集群并开启密码认证 和 Redis-cluster-proxy负载

    部署Redis Cluster集群并开启密码认证 如果只想简单的搭建Redis Cluster,不需要设置密码和公网访问,可以参考官方文档. 节点介绍 Cluster模式推荐最少有6个节点,本次实验搭 ...

  7. redis cluster 设置密码做集群时gem下client.rb文件修改

    redis节点有设置密码,然后在创建集群的时候没有设置密码的命令 ./redis-trib.rb create --replicas 1 127.0.0.1:6381 127.0.0.1:6382 1 ...

  8. 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 ...

  9. redis 3.0的集群部署

    转载请注明出处:http://hot66hot.iteye.com/admin/blogs/2050676 最近研究redis-cluster,正好搭建了一个环境,遇到了很多坑,系统的总结下,等到re ...

随机推荐

  1. 小兔JS教程(三)-- 彻底攻略JS回调函数

    这一讲来谈谈回调函数. 其实一句话就能概括这个东西: 回调函数就是把一个函数当做参数,传入另一个函数中.传进去的目的仅仅是为了在某个时刻去执行它. 如果不执行,那么你传一个函数进去干嘛呢? 就比如说对 ...

  2. Log4net - 项目使用的一个简单Demo

    参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...

  3. 从源码浅析MVC的MvcRouteHandler、MvcHandler和MvcHttpHandler

    熟悉WebForm开发的朋友一定都知道,Page类必须实现一个接口,就是IHttpHandler.HttpHandler是一个HTTP请求的真正处理中心,在HttpHandler容器中,ASP.NET ...

  4. thinkphp数据的查询和截取

    public function NewsList(){ $this->assign('title','news'); $p = I('page',1); $listRows = 6; $News ...

  5. H3 BPM产品安装手册(.Net版本)

    1         安装说明 1.1    服务器安装必备软件 在使用该工作流软件之前,有以下一些软件是必须安装: l  IIS7.0以上版本(必须): l  .Net Framework 4.5(必 ...

  6. 编译器开发系列--Ocelot语言2.变量引用的消解

    "变量引用的消解"是指确定具体指向哪个变量.例如变量"i"可能是全局变量i,也可能是静态变量i,还可能是局部变量i.通过这个过程来消除这样的不确定性,确定所引用 ...

  7. C#编写windows服务,多服务为什么只启动一个(ServiceBase.Run)

    https://zhidao.baidu.com/question/380395667.html //多服务一个宿主程序时必须注间以下要点: Service1的ServiceName 必须 Insta ...

  8. mono for android学习过程系列教程(2)

    接着上一讲继续开始写,今天介绍的是安卓的基本组成结构. 在大多数情况下,MONO FOR ANDROID的命名空间和Android的命名空间 是互相映射的.有时候需要大小写,非字母数字字符的用法以及名 ...

  9. ASP.NET 5运行时升级到Beta5

    在Visual Studio 2015 RTM和Windows 10正式发布之前,微软把开源.NET升级到了beta5,带来了一些增强和改变.和Visual Studio 2015 RC一起安装的AS ...

  10. CSharpGL(10)两个纹理叠加

    CSharpGL(10)两个纹理叠加 本文很简单,只说明如何用shader实现叠加两个纹理的效果. 另外,最近CSharpGL对渲染框架做了修改,清理一些别扭的内容(DoRender()前后的事件都去 ...