[转帖]【redis】redis各稳定版本特性(更新到6.0版本)

redis,稳定,版本,特性,更新 · 浏览次数 : 0

小编点评

**Redis4.0新特性** **模块系统** - 方便第三方开发者拓展Redis的功能 **PSYNC2.0** - 优化主从节点切换过程中全量复制问题 **缓存剔除算法** - 采用新的 LFU(Last Frequently Used)算法,优化缓存访问效率 **非阻塞 del和 flushall/flushdb** - 提供非阻塞的 del 和 flushall/flushdb 操作,解决删除大 key 的阻塞问题 **内存监控** - 提供内存命令,实现对内存更为全面的监控统计 **交互数据库** - 提供交互数据库功能,实现Redis内部数据库的数据置换 **RDB-AOF 混合持久化** - 结合 AOF 和 RDB 之间的优势,提供更加全面的持久化选项 **Redis Cluster 兼容 NAT 和 Docker** - 确保 Redis Cluster 兼容 NAT 和 Docker **Stream 数据类型** - 新的 Stream 数据类型,支持高效的数据处理 **Redis 模块 API** - 提供新的模块 API,方便第三方开发者扩展 Redis的功能 **RDB 存储 LFU 和 LRU 信息** - 存储 LFU 和 LRU 信息,优化数据访问性能 **集群管理器从 Ruby (redis-trib.rb) 移植到 C** - 允许使用 C 代码管理 Redis 集群 **新排序命令** - 提供新排序命令,例如 ZPOPMIN / MAX 和阻塞变量 **主动碎片整理 V2** - 提供主动碎片整理 V2 功能,优化内存使用效率 **增强 HyperLogLog 实现** - 增强 HyperLogLog 实现,提升性能 **更好的内存统计报告** - 提供更详细的内存统计报告 **多个子命令 命令** - 支持多个子命令的命令,方便命令组合 **性能提升** - 支持一些性能提升,例如线程 I/O 和内存优化。

正文

1.Redis2.6
Redis2.6在2012年正是发布,经历了17个版本,到2.6.17版本,相对于Redis2.4,主要特性如下:
1)服务端支持Lua脚本。
2)去掉虚拟内存相关功能。
3)放开对客户端连接数的硬编码限制。
4)键的过期时间支持毫秒。
5)从节点支持只读功能。
6)两个新的位图命令:bitcount和bitop。
7)增强了redis-benchmark的功能:支持定制化的压测,CSV输出等功能。
8)基于浮点数自增命令:incrbyfloat和hincrbyfloat。
9)redis-cli可以使用–eval参数实现Lua脚本执行。
10)shutdown命令增强。
11)重构了大量的核心代码,所有集群相关的代码都去掉了,cluster功能将会是3.0版本最大的亮点。
12)info可以按照section输出,并且添加了一些统计项
13)sort命令优化

2.Redis2.8
Redis2.8在2013年11月22日正式发布,经历了24个版本,到2.8.24版本,相比于Redis2.6,主要特性如下:
1)添加部分主从复制的功能,在一定程度上降低了由于网络问题,造成频繁全量复制生成RDB对系统造成的压力。
2)尝试性的支持IPv6.
3)可以通过config set命令设置maxclients。
4)可以用bind命令绑定多个IP地址。
5)Redis设置了明显的进程名,方便使用ps命令查看系统进程。
6)config rewrite命令可以将config set持久化到Redis配置文件中。
7)发布订阅添加了pubsub。
8)Redis Sentinel第二版,相比于Redis2.6的Redis Sentinel,此版本已经变成生产可用。

3.Redis3.0(里程碑)
Redis3.0在2015年4月1日正式发布,相比于Redis2.8主要特性如下:
Redis最大的改动就是添加Redis的分布式实现Redis Cluster。
1)Redis Cluster:Redis的官方分布式实现。
2)全新的embedded string对象编码结果,优化小对象内存访问,在特定的工作负载下载速度大幅提升。
3)Iru算法大幅提升。
4)migrate连接缓存,大幅提升键迁移的速度。
5)migrate命令两个新的参数copy和replace。
6)新的client pause命令,在指定时间内停止处理客户端请求。
7)bitcount命令性能提升。
8)cinfig set设置maxmemory时候可以设置不同的单位(之前只能是字节)。
9)Redis日志小做调整:日志中会反应当前实例的角色(master或者slave)。
10)incr命令性能提升。

4.Redis3.2
Redis3.2在2016年5月6日正式发布,相比于Redis3.0主要特征如下:
1)添加GEO相关功能。
2)SDS在速度和节省空间上都做了优化。
3)支持用upstart或者systemd管理Redis进程。
4)新的List编码类型:quicklist。
5)从节点读取过期数据保证一致性。
6)添加了hstrlen命令。
7)增强了debug命令,支持了更多的参数。
8)Lua脚本功能增强。
9)添加了Lua Debugger。
10)config set 支持更多的配置参数。
11)优化了Redis崩溃后的相关报告。
12)新的RDB格式,但是仍然兼容旧的RDB。
13)加速RDB的加载速度。
14)spop命令支持个数参数。
15)cluster nodes命令得到加速。
16)Jemalloc更新到4.0.3版本。

5.Redis4.0
可能出乎很多的意料,Redis3.2之后的版本是4.0,而不是3.4、3.6、3.8。
一般这种重大版本号的升级也意味着软件或者工具本身发生了重大改革。下面是Redis4.0的新特性:
1)提供了模块系统,方便第三方开发者拓展Redis的功能。
2)PSYNC2.0:优化了之前版本中,主从节点切换必然引起全量复制的问题。
3)提供了新的缓存剔除算法:LFU(Last Frequently Used),并对已有算法进行了优化。
4)提供了非阻塞del和flushall/flushdb功能,有效解决删除了bigkey可能造成的Redis阻塞。
5)提供了memory命令,实现对内存更为全面的监控统计。
6)提供了交互数据库功能,实现Redis内部数据库的数据置换。
7)提供了RDB-AOF混合持久化格式,充分利用了AOF和RDB各自优势。
8)Redis Cluster 兼容NAT和Docker。

6.Redis5.0
1)新的Stream数据类型。[1]5.0
2)新的Redis模块API:Timers and Cluster API。
3)RDB现在存储LFU和LRU信息。
4)集群管理器从Ruby(redis-trib.rb)移植到C代码。可以在redis-cli中。查看redis-cli —cluster help了解更多信息。
5)新sorted set命令:ZPOPMIN / MAX和阻塞变量。
6)主动碎片整理V2。
7)增强HyperLogLog实现。
8)更好的内存统计报告。
9)许多带有子命令的命令现在都有一个HELP子命令。
10)客户经常连接和断开连接时性能更好。
11)错误修复和改进。
12)Jemalloc升级到5.1版

7.Redis6.0
1)提供了众多的新模块(modules)API
2)提供了客户端缓存功能
3)多线程 I/O 能力
4)提升了 RDB 日志的加载速度
 

</article>

与[转帖]【redis】redis各稳定版本特性(更新到6.0版本)相似的内容:

[转帖]【redis】redis各稳定版本特性(更新到6.0版本)

1.Redis2.6 Redis2.6在2012年正是发布,经历了17个版本,到2.6.17版本,相对于Redis2.4,主要特性如下: 1)服务端支持Lua脚本。 2)去掉虚拟内存相关功能。 3)放开对客户端连接数的硬编码限制。 4)键的过期时间支持毫秒。 5)从节点支持只读功能。 6)两个新的位

[转帖]Redis之安全措施

指令安全 Redis的一些指令会对Redis服务的稳定性及安全性各方面造成影响,例如keys指令在数据量大的情况下会导致Redis卡顿,flushdb和flushall会导致Redis的数据被清空。 Redis在配置文件中提供了 rename-command 指令用于将一些危险的指令修改成其他指令,

[转帖]Redis各版本特性汇总

redis4redis5redis6redis6.2重大特性1.模块系统 2.PSYNC2 3.LFU淘汰策略 4.混合RDB-AOF持久化 5.LAZY FREE延迟释放 6.MEMORY内存分析命令 7.支持NAT/DOCKER 8.主动碎片整理 1.新增Stream数据类型 2.新增Redis

[转帖]Redis各版本特性汇总

redis4redis5redis6redis6.2重大特性1.模块系统 2.PSYNC2 3.LFU淘汰策略 4.混合RDB-AOF持久化 5.LAZY FREE延迟释放 6.MEMORY内存分析命令 7.支持NAT/DOCKER 8.主动碎片整理 1.新增Stream数据类型 2.新增Redis

[转帖]Docker配置文件/etc/docker/daemon.json详解

该文件作为Docker Engine的配置管理文件,几乎涵盖了所有docker命令行启动可以配置的参数。默认是没有的,需要手动创建 docker- daemon.json各配置详解 { "allow-nondistributable-artifacts": [], #不对外分发的产品提交的regis

[转帖]Redis压力测试——redis-benchmark

liunx 安装 redis & redis benchmark 1.下载安装包 点击官网,下载stable版本 wget http://download.redis.io/releases/redis-6.2.4.tar.gz 2.安装 解压,并编译 tar xzf redis-6.2.4.tar

[转帖]【Redis】Redis中使用Lua脚本

Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua具体语法参考:https://www.runoob.com/lua/lua-tutorial.html 脚本的原子性 Redis使用单个Lua解释器去运

[转帖]Redis持久化文件RDB的格式解析

http://www.innereye.cn/2017/01/17/redis/Redis_RDB_File_Format_20170117/ 本文可转载演绎,但需要注明原作者和本文链接。 By BaiFan 发表于 2017-01-17 文章目录 1. Redis RDB文件格式 2. 解析RBD

[转帖]Redis Scan 原理解析与踩坑

https://www.lixueduan.com/posts/redis/redis-scan/ 主要分析了 Redis Scan 命令基本使用和具体实现,包括 Count 参数与 Scan 总耗时的关系,以及核心的逆二进制迭代算法分析。 1. 概述 由于 Redis 是单线程在处理用户的命令,而

[转帖]Redis SLOWLOG命令

https://deepinout.com/redis-cmd/redis-debug-cmd/redis-cmd-slowlog.html 文章目录 什么是 SLOWLOG 设置 SLOWLOG 查看 slow log 查看当前日志的数量 清空日志 Redis SLOWLOG命令 返回值 SLOW