Redis〔篇〕

news/2024/6/15 7:43:34 标签: redis, 数据库, 缓存

redis怎么做到双写一致性呢?

这个是要分情况的 业务要是对一致性要求不是很高的话可以使用延时双删,要强一致的话需要双写一致性。


Redis数据持久化?

redis是有两种数据持久化方式的,一种RDB一种AOF

  1. rdb是redis数据快照,它是把内存中所有记录保存在磁盘中的。当redis实例出现故障后从磁盘读取快照文件进行数据恢复;
  2. aof采用的是一种刷盘策略,可以设置everysec每秒进行一次刷盘,记录操作命令,当redis出现故障后,会根据记录的命令重新执行达到数据恢复的效果。


数据过期策略?

有两种 惰性删除和定期删除

  • 惰性删除:设置key的过期时间后,不用去管它,等到下次需要这key的时候然后检查是否过期,过期然后进行删除。(如果下次一直不使用key,那么就会一直存在内存中,不会被释放)
  • 定期删除:每隔一段时间会对一些key进行检查,删除里边过期的key。
  • 一般是惰性删除和定期删除配合使用。

数据淘汰策略

redis中内存不够用时,再向redis中添加新的key,那么redis就会按照某一种规则将内存中的数据删除掉,就称为内存淘汰策略。

redis支持8种不同策略来选择要删除的key;

  1. noeviction: 不淘汰任何key,但是内存满时不允许写入新数据(默认就是这种策略);
  2. volatile-ttl:对设置了过期时间的key,比较key剩余的ttl值,值越小越先被淘汰;
  3. allkeys-random: 对全体key,随机进行淘汰;
  4. volatile-random:对设置了过期时间的key,随机进行淘汰;
  5. allkeys-lru:对全体key基于LRU算法进行淘汰(最少使用时间);
  6. volatile-lru:对设置了过期时间的key基于LRU算法进行淘汰;
  7. allkeys-lfu:对全体key基于LFU算法进行淘汰(最少使用频率);
  8. volatile-lfu:对设置了过期时间的key基于LFU算法进行淘汰;

Redission分布式锁

  • redis实现分布式锁是利用了redis的setnx命令。
  • 首先还是进行加锁操作,加锁成功后会另开一个线程去监听持有锁的线程(看门狗机制)对锁过期时间进行续期。
  • 加锁和设置过期时间都是基于lua脚本完成的
  • Redisson分布式锁是可重入的;


主从数据同步的流程是什么?

1 主从全量同步:从节点发送请求给主节点master,master节点判断是不是第一次请求,是的话返回master的数据信息,master执行bgsave生成RDB文件,从节点然后清空本地数据,加载RDB文件,在主节点生成RDB文件期间有别的命令会记录在repl_backlog日志文件中,再把日志文件中的命令发送给从节点,从节点进行执行。

2 主从增量同步: 从节点向主节点发送请求,主节点判断是不是第一次同步,不是第一次同步的话,主节点会在repl_log中获取offset之后的数据 发送给从节点,从节点进行增量同步。


http://www.niftyadmin.cn/n/5054772.html

相关文章

7.网络原理之TCP_IP(上)

文章目录 1.网络基础1.1认识IP地址1.2子网掩码1.3认识MAC地址1.4一跳一跳的网络数据传输1.5总结IP地址和MAC地址1.6网络设备及相关技术1.6.1集线器:转发所有端口1.6.2交换机:MAC地址转换表转发对应端口1.6.3主机:网络分层从上到下封装1.6.4主…

PHP8的数据封装(数据隐藏)-PHP8知识详解

面向对象的特点之一就是封装性,也就是数据封装,也被称为数据隐藏。 php8通过限制访问权限来实现数据的封装性,这里用到了public、private、protected、static和final几个关键字。下面来介绍前3个。 1.、public(公共成员&#xf…

华为数通方向HCIP-DataCom H12-831题库(单选题:181-200)

第181题 以下关于OSPF的5类LSA中的转发地址(ForwardingAddress,FA) 的描述,正确的是哪一项? A、当FA地址为0.0.0.0时,收到该LSA的路由器认为到达目的网段的数据包应该发往对应的ABR,因此将到达ABR的下一跳地址作为这条外部路由的下一跳 B、当FA地址为0.0.0.0时,收到该LS…

关于Greenplum为什么基于PostgreSQL而不是MySQL?

Greenplum选择PostgreSQL而不是MySQL,其原因主要有以下几点: 更强的分析能力 PG有非常强大的SQL支持能力和非常丰富的统计函数和统计语法支持,除对ANSI SQL完全支持外,还支持比如分析函数(SQL2003 OLAP window函数&a…

CISSP学习笔记:通过原则和策略的安全治理

#第一章 通过原则和策略的安全治理 1.1 理解和应用机密性、完整性和可用性的 安全的主要目标,CIA三元组 机密性、完整性和可用性,每条原则的重要性主要取决于组织的安全目标以及安全性所受到的威胁程度 1.1.1 机密性 机密性:限制未授权主…

mac openssl 版本到底怎么回事 已解决

在mac 安装node多版本的时候,有可能把原有的 openssl1.1 版本 直接要再一次升级了,无奈的 php环境 编译器是 openssl 1.1 还是 3.0 ,今天来个底朝天的找问题。 brew search openssl 有安装 三个版本。 但是错误提示 是第二个版本。 brew …

向量数据库X云计算驱动大模型落地电商行业,Zilliz联合AWS探索并贡献成熟解决方案

近日,由Zilliz 联合亚马逊云科技举办的【向量数据库 X 云计算 驱动大模型落地电商行业】活动在上海落幕,获得业内专业人士的广泛好评。 众所周知,大模型技术的发展正加速对千行万业的改革和重塑,向量数据库作为大模型的海量记忆体、云计算作为大模型的大算力平台,是大模型…

华为云云耀云服务器L实例评测|华为云云耀云服务器docker部署srs,可使用HLS协议

华为云云耀云服务器L实例评测|华为云云耀云服务器docker部署srs,可使用HLS协议 什么是华为云云耀云L实例 云耀云服务器L实例,面向初创企业和开发者打造的全新轻量应用云服务器。提供丰富严选的应用镜像,实现应用一键部署&#x…