视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Redis2.6新功能介绍及安装相关问题
2020-11-09 11:07:41 责编:小采
文档


在redis2.6下,通过src/redis-cli -h host -p port进入后,输入info,相关redis参数:系统介绍以及redis相关参数及使用情况相比2

Redis2.6已经发布了(),下载后,在make时一堆编译错误,后来看issue,跟linux系统版本及位数有关。

昨天作者 antirez发布了2.6.2,此版本修复了一些linux版本不兼容导致make不通过的问题,可是下下来以后,发现在测试机编译还是有些问题,与是在issue上提出一个问题:(https://github.com/antirez/redis/issues/736#issuecomment-9848046) 早上来的时候,看到大牛们热心的回复,,真的很感动。在测试机上,由于系统 是32位的,导致编译时没通过,首先我立马确定了这个问题,在位测试机上测试时,发现果然编译可以通过,然后在32位上,跟据提示,在Makefile中增加一条CFLAGS= -march=i686,编译也顺利通过了,顿时感觉舒畅很多!

下载地址:

然后tar, make,即可。(make前,如果确认自己的测试机是32位linux,在src/Makefile文件中的头部加上CFLAGS= -march=i686,可参考isSUSE中相关回答)

修改对应的redis.conf,然后启动,即可进行测试了。

一.此版本主要更新的功能有:

1.支持lua脚本。
2.VM(虚拟内存)去掉了。
3.对于client的limit变成无。
4.aof性能提升了不少。
5.key的过滤时间可以支持毫秒级别了,原来是秒。
6.list与hash 的属性filed或value包含小整数,内存优化列好(使用了jemalloc,以前是malloc)。
7.提供了BITCOUNT与BITOP,前者支持位值count,后者支持了位操作。(以前只支持key-value 的置位操作)
8.支持新命令dump以及restore ,即序列化与反序列化操作。
9.大数据存储性能优化等。

以上功能我比较关注的一个是lua脚本支持,一个是位操作的功能扩展。

对于位操作的增加,在2.4已经存在,通过setbit/getbit,相关操作(要注意大小端的问题,存储读取数据时)。

此次增加了bitcount,以及bitop操作,通过位操作,来增强一些统计功能等相关功能的实现应该有很大的帮忙。

对于我们的系统里,以及用bit位记录相关数据,但是一直不能位操作,一直在考虑是否自己增加,在2.6作者实现了。还是非常赞一个。

二.相关简单测试:

使用了jemalloc,以及相关代码的优化,redis2.6的性能一定有一定提升.

使用redis2.6.2与redis2.4.4相比。

相同环境下,进行一万次set,一万次get操作,两者所花费的时间如下:

redis2.6.2 redis2.4.4

set操作 5938ms 6109ms

get操作 5985ms 5812ms

以上为开发机上进行测试,并不能体现redis完整的性能,但是相同的环境下,可以测试redis不同版本的性能问题。从以上set get操作来看,redis2.6性能上还是有部分提升,但不大。

下载本文
显示全文
专题