标签:模型 ring shm 内存操作 数据 加载 关系 str 哨兵
1.持久化
redis支持持久化,通过持久化机制将内存中的数据存到硬盘,重启后将数据从硬盘加载到内存
存储方式:a.RDB存储数据的快照 b.存储执行的命令
2.存储的数据类型
string,hash,list,set(无序),zset(有序,给每个数值都加了个权重)
3.单线程
redis都是基于内存操作
采用单线程,避免了不必要的上下文切换和竞争条件
使用多路I/O复用模型,非阻塞IO;
4.redis和memcached
a.memcached的数据全部存在于内存中,断电后会挂掉,丢失数据,不能超过内存大小,redis的数据可以进行持久化
b.memcached的数据只支持简单的字符串,redis支持多种数据类型
c.底层的模型不同,redis构建了自己的vm机制,因为调用系统函数会浪费一定的时间去移动和请求
d.redis支持数据备份 主从设备模式
6.优点,
a.速度快,数据存在于内存中,类似于HashMap,时间复杂度是O(1)
b.操作原子性
7.redis的集群
a.主从模式
master进行读写操作,同步到从库,
从库只读,
master库和从库是一对多的关系,
从库挂了无影响,主库挂了,不能写,
主库挂了不会自动出现新的主库,重启后还是主库
b.哨兵模式
监控redis集群的运行状况,
master挂了会出现选举出一个新的master,并修改所有服务器的配置文件
master重启后会成为从库,
哨兵可以集群,可检测其他哨兵
哨兵可以检测多个主设备模式,是多对多的关系
哨兵和主从不要放在同一台服务器上,避免同事挂掉
c.cluster模式
当数据量达到一台服务器放不下时,数据分片,
标签:模型 ring shm 内存操作 数据 加载 关系 str 哨兵
原文地址:https://www.cnblogs.com/MrYangjlPython/p/11801143.html