前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Redis 6.0 稳定版发布,正式支持多线程

Redis 6.0 稳定版发布,正式支持多线程

作者头像
大数据技术架构
修改2020-05-21 21:43:51
1.1K0
修改2020-05-21 21:43:51
举报

近期Redis 6.0.0稳定版发布了,是Redis有史以来最大的版本, Redis的作者在博客中介绍了该版本中的新特性,此外除了这些新特性外,Redis 6也正式支持多线程!意味着从此不能单纯的说Redis是单线程模型了。本文我们先来看看Redis 6.0.0 GA版本都有哪些新特性,然后介绍下Redis对多线程的支持。

Redis 6.0 稳定版特性一览

那么,从RC1到今天,除了稳定之外,还有什么变化呢?

1、重新设计了客户端缓存,特别是放弃了caching slot,而只使用key names。

2、现在Redis支持这样一种模式:如果用于复制的RDB文件不再有用,它将立即删除。在某些环境中,最好不要将数据放在磁盘上,而只放在内存中。

3、acl在特点方面变得更好。首先,有一个新的ACL日志命令,它允许查看所有违反ACL的客户机、访问不应该访问的命令、访问不应该访问的密钥,或者验证尝试失败。日志实际上在内存中,因此每个外部代理都可以调用“ACL log”来查看发生了什么。这对于调试ACL问题非常有用。

4、改进了复制协议PSYNC2。Redis能够更频繁地部分重新同步,使副本和主副本找到公共偏移。

5、带有超时的Redis命令现在不仅BLPOP并且以前可以接受秒的命令现在可以接受十进制数。

6、RDB文件现在加载速度更快。根据文件的实际组成(较大或较小的值),可以预期20/30%的改进。当有很多客户机连接时,信息也更快了,这是一个老问题,现在终于解决了。

7、我们有一个新命令STRALGO,它实现了复杂的字符串算法。目前唯一实现的是LCS(longest common subsequence),这是一种重要的算法,用于比较冠状病毒的RNA(以及其他生物体的DNA和RNA)。

Redis 6.0 开始支持多线程

之前Redis的作者 Salvatore 就在 RedisConf 2019 分享过,其中一段展示了 Redis 6 引入的多线程 IO 特性对性能提升至少是一倍以上。

目前对于单线程 Redis 来说,性能瓶颈主要在于网络的 IO 消耗, 优化主要有两个方向:

  1. 提高网络 IO 性能,典型的实现像使用 DPDK 来替代内核网络栈的方式
  2. 使用多线程充分利用多核,典型的实现像 Memcached

因此,从Redis 6.0 RC1起,Redis提供了可选的多线程模型,以此来满足不同用户的需求。社区对比了 Redis 多线程和单线程的 SET 和 GET 性能,表现如下:

以上就是Redis 6.0.0的新特性及多线程IO支持方面的介绍。虽然Redis 6 GA版本是Redis有史以来最大的一个版本,它也是稳定的,但Redis作者也坦言要谨慎使用,在投入生产之前要做必要的工作负载测试。社区也将准备尽快发布Redis6.0.1。

微信扫一扫,关注我
微信扫一扫,关注我
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据技术架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Redis 6.0 稳定版特性一览
  • Redis 6.0 开始支持多线程
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档