后端面经学习笔记

1.Redis 缓存穿透、击穿、雪崩的概念分别是什么,解决方法是什么

穿透:访问不存在的 key,大量访问去访问底层数据库,解决方法是使用布隆过滤器,布隆过滤器对于不存在的是一定能确定的,对于存在不一定

击穿:热点数据失效,解决方式可以是热点数据永不失效

雪崩:大量 key 失效,解决方法可以是限制访问数据库的数量、对于失效时间增加随机值

2.Redis 的 AOF 日志和 RDB 日志的优缺点,在生产环境如何结合起来使用

RDB 日志存储的是全量快照,文件小,但缺点是快照时间之后的写入会丢失,丢失的数据量比较多。

AOF 日志存储的是操作命令,文件比较大但是优点是丢失的数据少。

结合起来使用可以是 RDB 快照,然后 AOF 存储快照保存之后的命令。

3.MVCC 是什么

MVCC 是多版本控制管理的一种方法 实现了读已提交 可以确保不同事务之间不互相影响,确保可重复读可以增加行锁,增加版本。

读提交判断事务 ID 事务快照才实现可重复读

4.索引失效的五种情况

索引函数,索引列计算,like 最开始有%,隐式类型转换,覆盖索引没有最左匹配原则

5.事务的四大特性

acid 原子性 一致性 隔离性 持久性

相关推荐
心祭丫丫6 分钟前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
派大猩猩_2 小时前
Obsidian 笔记怎么同步多端:Nutstore Sync 大笔记库同步测评
笔记·obsidian·obsidian插件·obsidian同步
Nerd(BUG版)3 小时前
Flutter学习day5--事件手势与命中测试
学习·flutter
Nerd(BUG版)5 小时前
KMP学习day4--Kotlin空安全与泛型
学习·安全·kotlin
東隅已逝,桑榆非晚5 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
wdyan2976 小时前
带着小白学习-微服务-5 实战:配置中心-数据库连接
数据库·学习·微服务
叼烟扛炮6 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮6 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
Rabitebla8 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
叼烟扛炮9 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain