Redis是一个开源的高性能键值对数据库。
特性1 存储结构
Redis是Remote Dictionary Server(远程字典服务器)的缩写,它以字典结构存储数据,并允许其他应用通过TCP协议读取字典中的内容。
Redis字典结构的存储方式和对多种键值数据类型的支持使得开发者可以将程序中的数据直接映射到Redis中,数据在Redis中的存储形式和其在程序中的存储方式非常相近。
特性2 内存存储与持久化
Redis数据库中的所有数据都存储在内存中,性能上对比其他基于硬盘存储的数据库有非常明显的优势。
Redis提供了对持久化的支持,即可以将内存中的数据异步写入到硬盘中,同时不影响继续提供服务。
特性3 功能丰富
Redis可以为每个键设置生存时间,时间到期后该键被自动删除,这一功能配合出色的性能让Redis可以作为缓存系统来用。作为缓存系统,Redis还可以限定数据占用的最大内存空间,在数据达到空间限制后可以按照一定的规则自动淘汰不需要的键。
Redis的列表类型键可以用来实现队列,并且支持阻塞式读取,可以很容易的实现一个高性能的优先级队列。Redis还支持“发布/订阅”的消息模式。
特性4 简单稳定
在Redis中使用命令来读写数据,Redis命令语句可类比于关系数据库的SQL语言。
Redis提供了几十种不同编程语言的客户端库,这些库都很好的封装了Redis命令,使得在程序中与Redis进行交互变得更容易。