Redis发布带有“流式”数据类型的5.0版本

栏目: 数据库 · 发布时间: 7年前

在版本4发布的15个月之后,Redis最近宣布了其流行数据库的第5个版本。这个版本的主要特性是对一种新数据类型“流”的支持。流是一种仅能追加的数据结构,可以在相同消费者组内被多个协作的客户端用作日志处理。流就基于 Rax 实现的,它是个基数树库。

流支持快速查找和范围查询,这些是构建聊天系统、消息代理、排队系统和可以从 统一日志 模式 受益的大多数系统。流在概念上类似于Apache Kafka中支持消费者组的消息传递机制,但本质上又很独特。流还支持消息持久化及主/副本复制功能。这个数据类型在版本4中 规划 ,现在在版本5中已经可以使用,并为其提供了详尽的 文档

Redis 5对 排序 集做了优化,并提供了新的命令来从排序集的起点和终点弹出元素。ZPOPMAX或BZPOPMAX命令会分别以非阻塞和阻塞模式返回和移除最高分数元素。类似地,ZPOPMIN或BZPOPMIN命令会返回和移除最低分数元素。开发者可以使用排序集的这些命令来模拟列表功能。

在最新版本中,通过引入集群(Clusters)和定时器(Timers)API,Redis模块也得到了扩展。 定时器API 允许模块创建毫秒精度的定时器以及一个回调函数。集群API(不要与 Redis 的服务器集群混淆)提供了一种抽象来实现集群化的消息总线。这样,一个节点就可以以类似于发布/订阅系统的方式来向某个特定节点或所有节点发送消息了。

这次版本发布还在背后做了一些性能方面的提升,比如改进的内存热点碎片整理以及改进的HyperLogLog 算法 。大多数命令现在都支持在客户端使用“<command_name> HELP”快速查看命令行帮助信息,比如,XINFO HELP可以查看新的流功能方面的帮助信息。

新版本中还加入了LOLWUT命令,对Redis用户来说,这个命令更像是一个复活节彩蛋,技术上倒用处不大,因为LOLWUT会产生 Georg NeesSchotter 这样的计算机艺术的随机变体。花费一些不产生技术价值的时间来探索60年代的某些事物,LOLWUT就诞生于这样的需求。在那个年代,作者认为更容易“ 用黑客视角谈论技术,没有障碍或者预先思索过的想法,极限就是探索 ”。

除了需要向后兼容的场景,最新的Redis版本终于不再使用“从”(slave)这个术语了,而改为使用“副本”(replica)。

查看英文原文: https://www.infoq.com/news/2018/10/Redis-5-Released


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Learn Python the Hard Way

Learn Python the Hard Way

Zed A. Shaw / Addison-Wesley Professional / 2013-10-11 / USD 39.99

Master Python and become a programmer-even if you never thought you could! This breakthrough book and CD can help practically anyone get started in programming. It's called "The Hard Way," but it's re......一起来看看 《Learn Python the Hard Way》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具