Redis 教程

redis

Redis(Remote Dictionary Server),即远程字典服务,是一个开源的使用 ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、支持 key-value 的高性能 NoSQL 数据库,并提供多种编程语言的 API。

Redis 又被称为数据结构服务器,因为它存储的值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

 

1. Redis 特点

Redis 与其它 key-value 缓存产品新版,具有三个特点:

  • Redis 支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis 不仅仅支持简单的 key-value 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储。
  • Redis 支持数据的备份,即 master-slave 模式的数据备份。

 

2. Redis 优势

  • 高性能 – Redis 读写性能突出,官网测试的读写速度能达到每秒10万次左右。
  • 丰富的数据类型 – Redis 支持 string, list, hashe, set 及 ordered set 数据类型。
  • 原子性 – Redis的所有操作都是原子性的,就是要么成功执行,要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过 MULTI 和 EXEC 指令包起来。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等特性。

 

3. Redis 与其它 key-value 存储系统对比

  • Redis 有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。
  • Redis 运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

 

4. Redis 资源

Redis 官网:https://redis.io/

Redis 源码地址:https://github.com/redis/redis

Redis 在线测试:http://try.redis.io/

Redis 命令参考:http://doc.redisfans.com/

Redis 可以安装在 Linux、Unix、Windows、MacOS等操作系统上。生产环境通常选用 Linux 平台。Windows 安装 Redis:下载安装 Windows Redis;运行 Windows Redis;测试 Windows Redis。Linux 源码安装 Redis:下载安装 Linux Redis...