前边讲了Redis主从复制(https://blog.csdn.net/weixin_44062339/article/details/103227944),即使有了主从复制,每个数据库都要保存整个集群中的所有数据,容易形成木桶效应。
使用Jedis实现了分片集群,是由客户端控制哪些key数据保存到哪个数据库中,如果在水平扩容时就必须手动进行数据迁移,而且需要将整个集群停止服务,这样做非常不好的。
Redis3.0版本的一大特性就是集群(Cluster),接下来我们一起学习集群。
(1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.
(2)节点的fail是通过集群中超过半数的节点检测失效时才生效.
(3)客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可
(4)redis-cluster把所有的物理节点映射到[0-16383]slot(插槽)上,cluster 负责维护node<->slot<->value
1、 设置不同的端口,6379、6380、6381
2、 开启集群,cluster-enabled yes
3、 指定集群的配置文件,cluster-config-file “nodes-xxxx.conf”
因为redis-trib.rb是有ruby语言编写的所以需要安装ruby环境。
yum -y install zlib ruby rubygems
gem install redis
手动安装:
yum -y install zlib ruby rubygems
rz上传redis-3.2.1.gem
gem install -l redis-3.2.1.gem
如果是Ubuntu系统:
apt install ruby
上传redis-3.2.1.gem
gem install redis-3.2.1.gem
首先,进入redis的安装包路径下:
cd /usr/local/src/redis/redis-3.0.1/src/
执行命令:
./redis-trib.rb create --replicas 0 192.168.56.102:6379 192.168.56.102:6380 192.168.56.102:6381
–replicas 0:指定了从数据的数量为0
注意:这里不能使用127.0.0.1,否则在Jedis客户端使用时无法连接到!
redis-trib用法:
报错: (error) MOVED 7638 127.0.0.1:6380 什么原因?
因为abc的hash槽信息是在6380上,现在使用redis-cli连接的6379,无法完成set操作,需要客户端跟踪重定向。
redis-cli -c
看到由6379跳转到了6380,然后再进入6379看能否get到数据
还是被重定向到了6380,现在已经可以获取到数据了。
前端学习记录16-CSS3-2D效果、2D移动、2D旋转、2D缩放transform(CSS3 2D转换)translate(移动)用移动来实现水平垂直居中rotate(旋转)transform-origin(中心点)scale(缩放)综合写法transform(CSS3 2D转换)简单来说是变形移动:translate旋转:rotate缩放:scaletranslate(移动)可以改变元素在页面中的位置 类似定位语法:transform: translate(x,y) x轴移动位置,y轴_前端2d画布绘制文字,旋转画布文字依然正对视角
Hal Burch conducted an analysis over spring break of 1999 and made an amazing discovery: there are only 16 types of programming contest problems! Furthermore, the top several comprise almost 80% of th
layer.open({title:'在线调试',content:'可以填写任意的layer代码',btn:['按钮1','按钮2','按钮3'],yes:function(index,layero){alert("按钮1");},btn2:function(index,layero){alert("按钮2");}});..._layer.open多个按钮
文章目录[opencv] 3.4.1下载安装一、前言二、说明三、下载opencv3.1 获取链接3.2 下载结果四、安装opencv五、配置opencv环境六、vs20176.1下载6.2 安装6.3 VS2017配置opencv6.3.1 相关文件的配置6.3.2 运行vs20176.3.3 新建空项目1.0 步骤一2.0 步骤二3.0 步骤三6.3.4 进入VS2017配置属性管理器进行相关配...
Redis 有四个不同的命令可以用于设置键的生存时间(键可以存在多久)或过期时间(键什么时候会被删除) :EXPlRE <key> <ttl> 命令用于将键key 的生存时间设置为ttl 秒。PEXPIRE <key> <ttl> 命令用于将键key 的生存时间设置为ttl 毫秒。EXPIREAT <key> < timest...
http://serverfault.com/questions/76673/how-do-i-restore-the-layout-on-expression-editor-in-powercenter
Vulnhub靶机其实都差不多,前面的相似步骤就不在讲解了,直接开始文章目录渗透环境扫描目录逻辑漏洞文件上传漏洞suid提权命令劫持提取总结渗透环境攻击机:kaliIP:192.168.247.129靶机:DarkHole_1IP:192.168.247.130扫描目录┌──(root????kali)-[/home/kali] └─# dirb http://192.168.247.130---- Scanning URL: http://192.168.247.130/ --_darkhole_1
Task01:OpenCV框架、图像插值算法—图像缩放最近邻插值算法原理在图像处理中,平移变换、旋转变换以及放缩变换是一些基础且常用的操作。这些几何变换并不改变图象的象素值,只是在图象平面上进行象素的重新排列。在一幅输入图象[u,v][u,v][u,v]中,灰度值仅在整数位置上有定义。然而,输出图象[x,y]的灰度值一般由处在非整数坐标上的(u,v)(u,v)(u,v)值来决定。这就需要插值算..._opencv b样条插值
香橙派是什么?香橙派是一款开源的单板电脑,使用的是全志的芯片,可以运行Android、debian、ubuntu等系统,同时兼容树莓派。笔者使用的香橙派版本是Orangepi pc 2,1G内存,A53架构。拿到新板子,首先要做的当然是烧录系统了。这里选择的是armbian地址,32g的内存卡。烧录用的软件是Win32DiskImager。干完之后如果有显示屏就方便了,如果没有就选择使用vn...
1.定义html标题to最大的标题第二大的标题第三大的标题第四大的标题第五大的标题最小的标题h元素有特定的意义,应适当的运用用来注明框架的结构,不要单纯为了字体的样式改变而使用2.定义关于文档的信息文档的标题所定义的文档标题不会出现在页面的主题内容上,而是上方页面的头部可以与标签嵌套所定义的头部用来描述文档的各种属性和信息,包括文档的标题
spring boot 常见http get ,post请求参数处理 在定义一个Rest接口时通常会利用GET、POST、PUT、DELETE来实现数据的增删改查;这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 GET 一般用于查询数据,采用明文进行传输,一般用来获取一些无关用户信息的数据 POST 一般...
解决:在layer.open增加一个id:‘LAY_layuipro’.