Redis学习
1.Redis是什么
Redis是一种支持key-value等多种数据结构的存储系统,应用场景:用于缓存,事件分布或订阅,高速队列.该数据库使用ANSIC语言编写,支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化.
2.支持语言
3.Redis支持的数据结构
string(字符串):
它是redis的基本数据类型,一个键对应一个值,需要注意是一个键值最大存储512MB.
hash(哈希):
redis hash是一个键值对的集合,是一个string类型的field和value的映射表,适用于存储对象
list(列表):
是redis的简单的字符串列表,它按插入顺序排序
set(集合):
是字符串类型的无序集合,也不可以
sorted set(有序列表):
是string类型的有序集合,也不可重复
有序集合中的每个元素都需要指定一个分数,根据分数对元素进行升序排序,如果多个元素有相同的分数,则以字典序进行升序排序,sorted set因此非常适合实现排名
4.使用redis有哪些好处
(1):速度快,因为数据存在内存中,类似于HsahMap,HashMap的优势就是查找和操作的时间复杂度较低
(2):支持丰富的数据类型,支持string,list,set,sorted set,hash
(3):支持事物,操作都是原子性,所谓的原子性就是对数据的更改要么是全部执行,要么是全部不执行
(4):丰富的特性,可用于缓存,消息,按key设置过期时间,过期后将会自动删除
(4):丰富的特性,可用于缓存,消息,按key设置过期时间,过期后将会自动删除
redis的架构模式
搭建redis的环境分为以下几种版本.
1.单节点:读写一体(简单)
2.多个redis服务器:主从复制读写分离.主从环境,主节点可以读写,从节点只能读.(分散读的压力,主从复制的一个关系,每个服务器都将主节点数据完整的复制一遍)
3.多个redis服务器:读写分离.主从环境.加入哨兵.进行主备切换(主从复制的一个关系,每个服务器都将主节点数据完整的复制一遍).
4.集群,存取数据模式为将key进行hash运算,根据算出来的hash值将数据存入(大于一半环境不可用,整个集群不可用)