Redis5.0 一篇理解新版特性

  1. 官方列舉特性如下:
================================================================================
Redis 5.0 RC1   Released Tue May 29 14:14:11 CEST 2018
================================================================================

Upgrade urgency LOW: This is the first RC of Redis 5.

Introduction to the Redis 5 release
===================================

Redis 5 is a release focused on a few important features. While Redis 4
was very very focused on operations, Redis 5 changes are mostly user-facing,
with the implementation of new data types and operations on top of existing
types. The following are the major features of this release:

1. The new Stream data type. https://redis.io/topics/streams-intro
2. New Redis modules APIs: Timers, Cluster and Dictionary APIs.
3. RDB now store LFU and LRU information.
4. The cluster manager was ported from Ruby (redis-trib.rb) to C code
   inside redis-cli. Check `redis-cli --cluster help` for more info.
5. New sorted set commands: ZPOPMIN/MAX and blocking variants.
6. Active defragmentation version 2.
7. Improvemenets in HyperLogLog implementations.
8. Better memory reporting capabilities.
9. Many commands with sub-commands now have an HELP subcommand.
10. Better performances when clients connect and disconnect often.
11. Many bug fixes and other random improvements.
12. Jemalloc was upgraded to version 5.1
13. CLIENT UNBLOCK and CLIENT ID.
14. The LOLWUT command was added. http://antirez.com/news/123
15. We no longer use the "slave" word if not for API backward compatibility.
16. Differnet optimizations in the networking layer.
17. Lua improvements:
    - Better propagation of Lua scripts to slaves / AOF.
    - Lua scripts can now timeout and get in -BUSY state in the slave as well.
18. Dynamic HZ to balance idle CPU usage with responsiveness.
19. The Redis core was refactored and improved in many ways.

 

  1. Redis5.0 新特性
    1. 新增Streams 數據類型 ,
    2. 添加了新的模塊API、定時器、集羣及字典
    3. RDB中持久化存儲LFU和LRU的信息
    4. redis-cli 中的集羣管理器從 Ruby (redis-trib.rb) 移植到了 C 語言代碼。執行 `redis-cli --cluster help` 命令以瞭解更多信息
    5. 新的有序集合(sorted set)命令:ZPOPMIN/MAX 和阻塞變體(blocking variants)
    6. 升級 Active defragmentation 至 v2 版本
    7. 增強改進 HyperLogLog 的實現
    8. 更好的內存統計報告
    9. 許多包含子命令的命令現在都有一個 HELP 子命令
    10. 客戶端頻繁連接和斷開連接時,性能表現更好
    11. 許多錯誤修復和其他方面的改進
    12. 升級 Jemalloc 至 5.1 版本
    13. 引入 CLIENT UNBLOCK 和 CLIENT ID
    14. 新增 LOLWUT 命令http://antirez.com/news/123
    15. Redis 主從複製中的從節點不再稱爲 "Slave” ,改用”Replicas"
    16. 網絡層中的差異優化
    17. Lua 相關的改進
    18. 引入動態的哈希 HZ(Dynamic HZ) 以平衡空閒 CPU 使用率和響應性能,可以通過配置文件設置,默認使用動態哈希。
    19. 對 Redis 核心代碼進行了重構和優化
  2. 基本的數據結構
    1. 動態字符串 sds.c
    2. 壓縮列表 ziplist.c
    3. 快速鏈表quicklist.c
    4. 字典 dict.c
    5. 整數集合 intset.c
    6. Streams 的底層實現結構 listpack.c 和 rax.c

參考鏈接: https://raw.githubusercontent.com/antirez/redis/5.0/00-RELEASENOTES

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章