[个人翻译]Redis 集群教程(中)
使用create-cluster角本创建Redis集群
和集群玩耍
$ redis-cli -c -p
redis 127.0.0.1:> set foo bar
-> Redirected to slot [] located at 127.0.0.1:
OK
redis 127.0.0.1:> set hello world
-> Redirected to slot [] located at 127.0.0.1:
OK
redis 127.0.0.1:> get foo
-> Redirected to slot [] located at 127.0.0.1:
"bar"
redis 127.0.0.1:> get hello
-> Redirected to slot [] located at 127.0.0.1:
"world"
require './cluster'
if ARGV.length !=
startup_nodes = [
{:host => "127.0.0.1", :port => },
{:host => "127.0.0.1", :port => }
]
else
startup_nodes = [
{:host => ARGV[], :port => ARGV[].to_i}
]
end
rc = RedisCluster.new(startup_nodes,,:timeout => 0.1)
last = false
while not last
begin
last = rc.get("__last__")
last = if !last
rescue => e
puts "error #{e.to_s}"
sleep
end
end
((last.to_i+)..).each{|x|
begin
rc.set("foo#{x}",x)
puts rc.get("foo#{x}")
rc.set("__last__",x)
rescue => e
puts "error #{e.to_s}"
end
sleep 0.1
}
- SET foo0 0
- SET foo1 1
- SET foo2 2
- And so forth...
ruby ./example.rb ^C (I stopped the program here)
集群的重新分片(Resharding)
./redis-trib.rb reshard 127.0.0.1:
How many slots do you want to move (from to )?
我们可以尝试对1000个哈希槽分片,如果示例依然在不调用sleep的情况下运行,那么它已经包含了一些重要的键。
$ redis-cli -p cluster nodes | grep myself
97a3a64667477371c4479320d683e4c8db5858b1 : myself,master - connected -
ok所以我们的目标节点是 97a3a64667477371c4479320d683e4c8db5858b1.
[个人翻译]Redis 集群教程(中)的更多相关文章
- [个人翻译]Redis 集群教程(下)
[个人翻译]Redis 集群教程(上) [个人翻译]Redis 集群教程(中) 官方原文地址:https://redis.io/topics/cluster-tutorial 水平有限,如果您在阅读过 ...
- [个人翻译]Redis 集群教程(上)
官方原文地址:https://redis.io/topics/cluster-tutorial 水平有限,如果您在阅读过程中发现有翻译的不合理的地方,请留言,我会尽快修改,谢谢. 这是 ...
- Redis集群教程(Redis cluster tutorial)
本博文翻译自Redis官网:http://redis.io/topics/cluster-tutorial 本文档以温和的方式介绍Redis集群,不使用复杂的方式来理解分布式系统的概念. ...
- 高性能网站架构设计之缓存篇(6)- Redis 集群(中)
昨天晚上钓鱼回来,大发神经,写了篇概括程序员生活现状的文章,没想到招来众多人的口诛笔伐,大有上升到政治层面的趋势. 我也许不会再发表任何冲击心灵的文章,我希望给大家带来更多的正能量,所以那篇文章已被我 ...
- redis集群搭建中遇到的一些问题
redis单机模式启动后,修改完配置文件,使用以下命令创建redis集群: sudo ./src/redis-trib.rb create --replicas 1 ip1:6379 ip2:6379 ...
- Redis集群入门
官方文章: https://redis.io/topics/cluster-tutorial#redis-cluster-configuration-parameters 本文永久地址: https: ...
- redis集群PHP解决方案
Redis3.2.4 Cluster集群搭建 服务器环境:192.168.3.229192.168.3.193每台服务器搭建3个节点,组成3个主节点,3个从节点的redis集群. 注意:防火墙一定要开 ...
- Redis 集群实现
Nosql,作为程序员在当下不了解点儿,还真不行,出去聊起来别人就会说你土.那么就聊聊其中一个比较火的redis.redis单机版没得说,但是一直没有集群版,有也是山寨的.前段时间对redis的实现进 ...
- Redis集群搭建过程
我在搭建Redis集群过程中遇到了一些问题,现记录下来. Redis搭建需要在系统中安装好ruby.gem.zlib等工具,可参考https://www.cnblogs.com/wuxl360/p/5 ...
随机推荐
- α-β剪枝算法的java语言实现(非常实用)
利用α-β剪枝算法,对下图所示的博弈树进行搜索,搜索得到根节点选择的走步,以及没有必要进行评估的节点,并求出给出在何处发生了剪枝,以及剪枝的类型(属于α剪枝还是β剪枝). 注:□表示MIN节点:○表示 ...
- JDK动态代理实现原理
之前虽然会用JDK的动态代理,但是有些问题却一直没有搞明白.比如说:InvocationHandler的invoke方法是由谁来调用的,代理对象是怎么生成的.直到看了他的文章才彻底明白,附网址:htt ...
- fluent批量处理——模型参数的设置
对于常见的工程应用来说,计算的工况很多,尤其优化工作,少则几百,多则上千,面对如此之多的case文件要写,假如按照一个一个的读写的话,相信你一定会为这么机械的工作烦躁,甚至影响今后好几天的心情,那么有 ...
- ABAP游标的使用
在Oracle,SQLServer中游标的使用是经常的,所以在ABAP不懂是不行的...... 1.声明游标 OPEN CURSOR [WITH HOLD] <c> FOR SEL ...
- 【代码笔记】iOS-UILable高度自适应(sizeWithFont)
一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...
- CentOS7 修改防火墙,增加外网可以访问的端口号
CentOS7 修改防火墙,增加外网可以访问的端口号: vim /etc/sysconfig/iptables 增加一条 -A INPUT -p tcp -m state --state NEW -m ...
- css选择器的使用详解
-.css选择器的分类: 二.常用选择器详解: 1.标签选择器: 语法: 标签名 { 属性:属性值; } 代码示例: h1 { color: #ccc; font-size: 28px; } 2.类选 ...
- 自动化集成部署udeployer 批量统一安装一键部署
通过jenkins构建项目:version版本控制:udployer自动化集成:ucop业务巡检做到高效高可用的自动化体系. 1.0版本: 逻辑与业务分离,完美实现逻辑与业务分离,业务实现统一sh ...
- [Erlang 0129] Erlang 杂记 VI
把之前阅读资料的时候记下的东西,整理了一下. Adding special-purpose processor support to the Erlang VM P23 简单介绍了Erlang C ...
- SQL 数据优化之不建立索引的情况
索引可以提高数据的检索效率,也可以降低数据库的IO成本,并且索引还可以降低数据库的排序成本.排序分组操作主要消耗的就是CPU资源和内存,所以能够在排序分组操作中好好的利用索引将会极大地降低CPU资源的 ...