0、Redis 概述
Redis 的出现时间并不长,是 NoSQL 中的一种,基于键-值型的存储,在 2009 年第一次发布 Redis。
Redis 全称(Remote Dictionary Server)远程字典服务器,而这个字典服务器从本质上来讲,主要是提供数据结构的远程存储功能的,可以理解为 Redis 是一个高级的 K-V 存储和数据结构存储,因为 Redis除了能够存储 K-V 这种简单的数据之外,还能够存储,列表、字典、hash 表、等对应的数据结构。
Redis 支持主从模式,Redis 能够借助于 Sentinel 工具来监控主从节点,当主节点发生故障时,会自己提升另外一个从节点成为新的主节点。
sentinel [ˈ ˈsentɪ ɪnl] 哨兵
Redis 官网:https://redis.io/download
1、Redis 所支持的数据类型
支持存储的数据类型有:
String(字符串,包含整数),
List(列表),
Hash(关联数组),
Sets(集合),
Sorted Sets(有序集合),
Bitmaps(位图), HyperLoglog。
2、Redis 性能评估
(1)、100 万较小的键存储字符串,大概消耗 100M 内存
(2)、由于 Redis 是单线程,如果服务器主机上有多个 CPU,只有一个能够使用,但并不意味着 CPU 会成为瓶颈,因为 Redis 是一个比较简单的 K-V 数据存储,CPU 通常不会成为瓶颈的
(3)、在常见的 linux 服务器上,500K(50 万)的并发,只需要一秒钟处理,如果主机硬件较好的情况下,每秒钟可以达到上百万的并发
3、Redis 与 Memcache 对比
(1)、Memcache 只能使用内存来缓存对象。而 Redis 除了可以使用内存来缓存对像,还可以周期性的将数据保存到磁盘上,对数据进行永久存储。当服务器突然断电或死机后, redis 基于磁盘中的数据进行恢复。
(2)、Redis 是单线程服务器,只有一个线程来响应所有求。Memcache 是多线程的
(3)、Redis 支持更多的数据类型