就在2018年10月18日,Redis 正式发布了自己的 5.0 版本。在这个版本中一个共新增了19项修改!本文给大家大概的列举一下哪19大内容!
翻译一下,大概内容如下:
- 新的流数据类型(Stream data type) https://redis.io/topics/streams-intro
- 新的 Redis 模块 API:定时器、集群和字典 API(Timers, Cluster and Dictionary APIs)
- RDB 现在可存储 LFU 和 LRU 信息
- redis-cli 中的集群管理器从 Ruby (redis-trib.rb) 移植到了 C 语言代码。执行 `redis-cli –cluster help` 命令以了解更多信息
- 新的有序集合(sorted set)命令:ZPOPMIN/MAX 和阻塞变体(blocking variants)
- 升级 Active defragmentation 至 v2 版本
- 增强 HyperLogLog 的实现
- 更好的内存统计报告
- 许多包含子命令的命令现在都有一个 HELP 子命令
- 客户端频繁连接和断开连接时,性能表现更好
- 许多错误修复和其他方面的改进
- 升级 Jemalloc 至 5.1 版本
- 引入 CLIENT UNBLOCK 和 CLIENT ID
- 新增 LOLWUT 命令 http://antirez.com/news/123
- 在不存在需要保持向后兼容性的地方,弃用 "slave" 术语
- 网络层中的差异优化
-
Lua 相关的改进:
- 将 Lua 脚本更好地传播到 replicas / AOF
- Lua 脚本现在可以超时并在副本中进入 -BUSY 状态
- 引入动态的 HZ(Dynamic HZ) 以平衡空闲 CPU 使用率和响应性
- 对 Redis 核心代码进行了重构并在许多方面进行了改进
在正式发布之前,从之前透露的信息看,Redis Streams 是这次发布的重点内容。
Stream是Redis 5.0引入的一种新数据类型,它以更抽象的方式模拟日志数据结构,但日志的本质仍然完好无损:就像日志文件一样,通常实现为仅附加模式打开的文件, Redis流主要是仅附加数据结构。至少在概念上,因为Redis Streams是一种在内存中表示的抽象数据类型,它们实现了更强大的操作,以克服日志文件本身的限制。
随着 java8 中首次引入 Stream 的内容,其他框架和语言也在陆续的引入 Stream,比如最近听说 Javascript 正在引入 Stream 特性。
最后,送给大家一个福利,扫描下方微信二维码,关注“”微信公众号,回复“redis”送你一套免费的 Redis 视频教程!
参考资料
- Redis 5.0 release notes
- Introduction to Redis Streams
: » Redis 5.0 正式发布,19大新特性你值得拥有!
原创文章,作者:wure,如若转载,请注明出处:https://blog.ytso.com/251894.html