Redis 3.0正式版发布,正式支持Redis集群

时间:2021-11-07 15:10:19

Redis是一个开源、基于C语言、基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API。近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了。Redis 3.0的最重要特征是对Redis集群的支持,此外,该版本相对于2.8版本在性能、稳定性等方面都有了重大提高。

Redis 3.0正式版相对于RC6版本的改进内容包括:

  • 修复了无磁盘情况下的的复制问题;
  • 在角色变化后对BLPOP复制进行了测试;
  • 改进了prepareClientToWrite()错误处理;
  • 移除了dict.c中不再使用的函数。

Redis 3.0版本相对于2.8版本带来的主要新特性包括:

  • 实现了分布式的Redis即Redis Cluster,从而做到了对集群的支持;
  • 引入了全新的"embedded string" 对象编码方式,从而实现了更少的缓存丢失和在特定的工作负载下速度的大幅提升;
  • AOF重写过程中的 "last write" 操作降低了AOF child -> parent数据传输的延迟
  • 大幅提升LRU算法的性能以用于值的失效;
  • WAIT命令能够阻塞传输到指定数量从节点的写操作;
  • 实现了对MIGRATE连接缓存的支持,从而大幅提升键值迁移的性能;
  • 为MIGARTE新增了参数:COPY和REPLACE;
  • CLIENT PAUSE命令实现了在指定时间内停止处理客户端请求;
  • 提高了BITCOUNTINCR操作的性能;
  • CONFIG SET能够接受不同单位的内存值,如CONFIG SET maxmemory 1gb;
  • 调整Redis日志格式。

Redis之父Salvatore Sanfilippo针对Redis 3.0正式版的发布这样说到

自己相信Redis 3.0将能够完全改变Redis的面貌,人们将认识到Redis是一个全新的东西,它的自动扩展、容错和高可用性都有了很大的改进,从此,它将能够在更大范围内承担更关键的任务。Redis 3.0标志着一个新阶段和新开发模式的开始。以后,大量已经开发的新功能将不再急于进入稳定版本,实际上Redis 3.0就放弃了很多新功能,从而保证用户能够马上使用新的稳定版本。

Redis 3.0正式版发布的消息一经公布,就引起了国内各大社区、论坛的热烈讨论,Reddit的用户主要针对Redis稳定性进行了讨论,Hacker News上也有了相关评论,有兴趣的读者可以前去查看。更多关于Redis 3.0正式版本的改进内容,请读者查看其发布说明。更多关于Redis相关信息,请读者登录其官网或者查看GitHub上提供相关的文档


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流。