一:事前准备
1.1 安装 ruby,个人推荐用 ruby-install 进行安装,按照操作基本可以做到傻瓜式的安装,
参考 url:https://github.com/postmodern/ruby-install
1.2 节点较多的话,推荐按一个 ansible,可以通过命令一键自动化部署到各个节点
1.3 shell> gem install redis
1.4 系统内核调整,具体文档也可以参照官方文档:https://redis.io/topics/admin
/etc/sysctl.conf 里面下面几个参数调整
1.4.1 始终分配内存一直到用完为止
vm.overcommit_memory=1
1.4.2 关闭内存平衡策略
kernel.numa_balancing=0
1.4.3 不使用内存分页
vm.swappiness=1
二:安装
2.1 redis 下载稳定版
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
2.2 解压缩
tar xzf redis-4.0.11.tar.gz
2.3 安装
cd redis-4.0.11 && make
三:配置
redis.conf 只罗列较为重要的参数配置,详细的请参考官网
3.1 端口,单节点唯一
port 10000
3.2 集群模式
cluster-enabled yes
3.3 节点配置文件
cluster-config-file nodes.conf
3.4 节点超时时间
cluster-node-timeout 5000
3.5 关闭 aof 模式
appendonly no
3.6 关闭 rdb 模式
save ""
3.7 设置该节点的最大内存
maxmemory 当前节点内存的 3/4,如果当前节点有多个实例,总内存数除以实例个数之后再乘以 3/4
3.8 该节点的内存淘汰机制
maxmemory-policy volatile-ttl
3.9 集群是否需要全覆盖,默认 yes,只要有一个主节点挂掉,就整个集群不提供服务
cluster-require-full-coverage no
※因为关闭了 aof 跟 rdb,所以该集群没有做持久化处理,性能会比做持久化的要好不少,是不是要做持久化跟怎么做持久化请依据自己业务的实际情况
四:启动集群
4.1 各个节点启动
各个节点上进入 redis-4.0.11 目录,然后执行 src/redis-server redis.conf
4.2 集群启动
在某个节点上进入 redis-4.0.11 目录,然后执行:src/redis-trib.rb create --replicas 1 node1host:node1port ... nodenhost:nodenport
cluster 模式至少要有 3 个主节点,如果 replicas 为 1 的情况下,至少要有 6 个节点(3 主 3 从),为 0 的情况下,没有从节点,建议副本数 >=1
五:测试
5.1 查看节点信息以及分槽情况
在某个节点进入 redis-4.0.11 目录,然后执行:src/redis-cli -h nodehost -p nodeport cluster nodes
5.2 用 redis 自带的性能测试工具查看集群性能
https://redis.io/topics/benchmarks
六:参考资料
官方文档:https://redis.io/topics/cluster-tutorial
近期热议
推荐标签 标签
-
智能合约
1 引用 • 11 回帖 • 2 关注
智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约概念于 1994 年由 Nick Szabo 首次提出。
-
SpaceVim
3 引用 • 31 回帖 • 104 关注
SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
即用的 Vim-IDE。 -
京东
14 引用 • 102 回帖 • 354 关注
京东是中国最大的自营式电商企业,2015 年第一季度在中国自营式 B2C 电商市场的占有率为 56.3%。2014 年 5 月,京东在美国纳斯达克证券交易所正式挂牌上市(股票代码:JD),是中国第一个成功赴美上市的大型综合型电商平台,与腾讯、百度等中国互联网巨头共同跻身全球前十大互联网公司排行榜。
-
大数据
93 引用 • 113 回帖
大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
-
博客
273 引用 • 2388 回帖
记录并分享人生的经历。
-
房星科技
6 引用 • 141 回帖 • 584 关注
房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。
-
WebComponents
1 引用 • 5 关注
Web Components 是 W3C 定义的标准,它给了前端开发者扩展浏览器标签的能力,可以方便地定制可复用组件,更好的进行模块化开发,解放了前端开发者的生产力。
-
Jenkins
53 引用 • 37 回帖 • 3 关注
Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。
-
Ant-Design
17 引用 • 23 回帖 • 4 关注
Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。
-
以太坊
34 引用 • 367 回帖
以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。
-
danl
• 146 关注
-
钉钉
15 引用 • 67 回帖 • 335 关注
钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。
-
App
91 引用 • 384 回帖 • 2 关注
App(应用程序,Application 的缩写)一般指手机软件。
-
uTools
6 引用 • 14 回帖
uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。
-
Chrome
62 引用 • 289 回帖
Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。
- Solo
-
设计模式
200 引用 • 120 回帖
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
-
单点登录
9 引用 • 25 回帖
单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
-
域名
43 引用 • 208 回帖
域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。
-
JVM
180 引用 • 120 回帖 • 2 关注
JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。
-
Sym
524 引用 • 4601 回帖 • 700 关注
-
外包
26 引用 • 232 回帖
有空闲时间是接外包好呢还是学习好呢?
-
大疆创新
2 引用 • 14 回帖 • 2 关注
深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。
-
正则表达式
31 引用 • 94 回帖 • 2 关注
正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。
-
HBase
17 引用 • 6 回帖 • 75 关注
HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。
-
Webswing
1 引用 • 15 回帖 • 637 关注
Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用 。
-
阿里云
89 引用 • 345 回帖
阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于