Redis5.0集群搭建及一些新特性

安装Redis5.0

1.新的Stream数据类型【其他5种:String,set,sorted-set,hash,list】

本质是一个抽象日志。

 

命令操作:

消费组:

>表示读取最新的消息,第二次执行的>,是又插入之后读取的。

读取某个ID之后的消息:

Block 0 表示阻塞,也就是在客户端新插入消息后,这里才会有如下显示:

Help命令:

搭建Redis集群,不使用Ruby:

搭建伪分布式集群:在同一个机器下模拟搭建集群,通过创建6个文件夹,每个文件夹代表一台服务器,

每个文件夹下存放不同配置文件,从不同的文件启动redis就OK的。

Redis集群最少是3主3从,所以是6个文件夹。

将配置文件放置到文件夹中,然后编辑:vim redis.conf

配置数据文件:

打开持久化:

每秒钟写入一次:

设置集群:最后一个是设置最大时连时间

其他的文件里面的都是类似设置配置文件,注意5001不同就可以了:

可以在vim中使用::1,$s/5001/5002/g  将文件中的5001替换成5002

启动各个文件下的服务:我这里只启动了4台。

创建子节点:

redis-cli --cluster create node37:5001 node37:5002 node37:5003 node37:5004 node37:5005 node37:5006 --cluster-replicas 1

最后的 : --cluster-replicas 1 表示主/从节点比例是1:1.即都是3台。

5004是5001 的从节点,5005---5002 5006---5003

一共16384个槽,用来存放数据,都有编号,平均分配给主节点,从节点没有,

但是和主节点数据保持同步。

如果动态扩容,新增节点,则只能从别的节点的槽分配过去,不能新增槽。

连接:

集群动态扩容:这种操作不会分配槽,除非分片操作

分片:

分槽:

添加从节点:

指定为从节点:

删除从节点:

删除主节点:首先要归还槽

ZPOPMAX、ZPOPMIN、BZPOPMAX和BZPOPMIN用法详解

碎片整理和内存报告:

因为当我们新增一个key时,redis会新增一片内存空间,当我们删除时,

redis不会立即将内存空间还回去。

如果反复这样,就会用大量内存碎片,影响后续的内存申请:

【1】list只能先进先出,或者后进先出,不能从中间取元素,而stream可以

【2】有序集合不能添加重复成员,也不支持成员淘汰和block。而stream可以

【3】提升开发效率,贴近业务需求

【4】物联网,各种传感器产生的时间序列数据,定位未来,适合stream格式

2.新的RedisAPI:Timers和Cluster

3.RDB现在存储LFU和LRU信息

4.集群管理器从Ruby移植到C

5.新的sorted-set命令:ZPOPMIN/MAX 和阻塞变种

6.主动碎片整理V2

7.增强HyperLogLog实现【用估算的一种算法统计奇数,同时节省空间】

8.更好的内存统计报告

9.许多带有子命令的命令现在都有一个HELP命令

10.Jemalloc【内存分配器】升级到5.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值