Redis2.6 本来预计是在今年第一周就应该放出的,但是现在三个月快过去的,依然在跳票中。于是Redis作者@antirez发表文章向大家解释了跳票的原因,并细数了2.6版本令人激动的新功能。
废话不多说,下面就是列举到的新功能。
1.Lua脚本支持
不用说,很多同学都已经期待很久了。而跟这个功能配套的,还有对JSON 和 MessagePack 的原生支持。不得不说真的很贴心。
2.毫秒级的过期时间设定
你将可以设定毫秒级的过期时间,在实现上,误差不会超过1ms。当然,这是通过PEXIRE, PTTL, PSETEX这些新的过期设置命令来实现的。
3.放开连接数限制
彻底放开了对客户端连接数的限制,目前你的Redis连接能力就取决于你系统的并发能力了。
4. AOF low level semantics is generally more sane, and especially when used in slaves. This is an uncommon use case, and the misbehavior was subtle, but now the implementation and behavior is definitely more sane.(这块不太清楚,谁能提供下解释?)
5.对输出缓冲区的分级
你可以对不同的客户端模式下不同的输出缓冲区进行大小控制,比如在普通客户端,slave机器和pubsub客户端上实施不同的策略。
6.AOF日志支持合并命令
在2.4版本中Redis引入了组合式命令,你可以通过给一个写操作命令传递多个参数来实现多个值的写入。而在一个稳定版的过渡后,目前AOF文件也支持以这样的方式来做rewrite了,可以想象,如果你使用了高级的数据结构,一个有N个元素的结构就只需要保存一条AOF命令了。
7.命令行配置参数
Redis作者终于有空整理一下配置项了,在2.6版本中,所有在redis.conf文件中的设置都可以通过命令行启动时设置。比如你可以这样启动你的Redis:./redis-server –slaveof 127.0.0.1 6379 –port 6380
8.hash函数种子随机化
这可以让hash函数结构分布更具随机性,有效防止碰撞。
9.大数据存储性能优化
10.代码优化
重构了大量的核心代码,新的内部API会让cluster方案更容易实现。在2.6版本中,所有cluster相关的代码都去掉了,cluster功能将会是3.0版本最大的亮点。另外,所有VM相关的代码已经移除。
11.启动画面添加ASCII的Redis logo图
12.redis-benchmark脚本增强
支持定制化的压测,CSV输出等功能。
13.redis-cli功能增强
使用–eval指令实现Lua脚本执行,让编写调试更简单。
14.SHUTDOWN功能增强
SHUTDOWN命令添加SAVE和NOSAVE两个参数,分别用于指定SHUTDOWN时用不用执行写RDB的操作。
15.INFO命令的输出优化
增加了一些统计项,并且将输出内容分块展示
16.SORT命令优化
让SORT命令的复杂度可控
17.INCRBYFLOAT 命令 HINCRBYFLOAT
用于对值进行浮点数的加减操作
18.BUG修复,性能优化相关
英文:http://antirez.com/post/redis-2.6-is-near.html
原文链接:http://blog.nosqlfan.com/html/3683.html
【编辑推荐】