Redis是一个开源的(BSD许可),内存中的数据结构存储,用作数据库、缓存、消息代理和流引擎。Redis提供数据结构,如strings、hashes、lists、sets、sorted sets、bitmaps、hyperloglogs、geospatial indexes和streams。Redis内置了复制、Lua脚本、LRU驱逐、事务和不同级别的磁盘持久化,并通过Redis Sentinel和Redis Cluster自动分区提供高可用性。
你可以在这些类型上运行原子操作,比如追加到一个字符串上;在散列中增加值;将一个元素推到一个列表中;计算集合的交集、并集和差;或者获取一个排序集合中排名最高的成员。
为了实现最佳性能,Redis使用内存中的数据集。Redis可以通过定期将数据集转储到磁盘或将每个命令附加到基于磁盘的日志来持久化数据。如果只需要使用内存缓存,也可以禁用持久化。
Redis支持异步复制,具有快速的非阻塞同步和自动重连接,并在网络拆分时进行部分重连接。
Redis是用ANSI C编写的,可以在大多数POSIX系统上工作,如Linux,*BSD和Mac OS X,没有外部依赖。Linux和OS X是Redis开发和测试最多的两个操作系统,我们建议使用Linux进行部署。没有对Windows版本的官方支持。
新版本发布在Redis GitHub存储库:https://github.com/redis/redis
Redis版本有三个不同的稳定性级别:
稳定版本遵循通常的 major.minor.patch
语义版本模式。主要目标是提供关于向后兼容性的显式保证。
补丁主要包括错误修复,很少引入任何兼容性问题。
从以前的补丁级别版本升级几乎总是安全和无缝的。
可以添加新的功能和配置指令,或者更改默认值,只要这些不会产生重大影响或引入与操作相关的问题。
新的Major versions
计划每年发布一次。
一般来说,每个Major versions
在六个月后都会有一个Minor versions
。
补丁会根据需要发布,以修复高度紧急的问题,或者一旦稳定版本积累了足够的修复程序来证明它是正确的。