金山面经

一面 20251202
1.MySQL索引
2.MVCC
3.Redis缓存击穿、缓存穿透、缓存雪崩
4.使用Redis分布式锁需要考虑哪些问题
(1)互斥,保证同一时间
(2)防止死锁:过期时间+自动续期
(3)防止锁被误删:先校验再删除
(4)释放锁是原子操作
(5)锁的续期
5.Redis持久化:RDB+AOF
(1)RDB:
(2)AOF
(3)混合
6.kafka消息持久化
7.RocketMQ和kafka的区别
8.项目:分布式会话鉴权、RPC为什么使用TCP协议、RPC这个项目主要实现了什么?
9.实习
10.TCP和UDP区别
11.UDP如何保证数据是正确的?在哪一层实现的?
12,手撕:
输入:l1 =[7,2,4,3],l2_[5,6,4]输出:[7,8,0,7]解释:7243+564=7807

二面 20251205
1.介绍实习中比较有挑战性的工作
2.Redis分布式锁是自己实现的还是第三方封装好的接口?--项目里其他人实现的?
3.那你知道是怎么做的吗?--不知道
4.自己想实习分布式锁,有什么思路?--首先要保证加锁和释放锁都是原子性的,锁的key,超时时间,支持重入
5.微信支付的话,有个微信授权,这个微信授权过程是什么样的?比如说淘宝,支付可以选择支付方式,我怎么授权给淘宝??--其实这个我根本没听懂问什么?
6.点评项目里缓存技术,使用了布隆过滤器的目的,为什么能解决缓存穿透的问题?
7.前提是不是全部数据加载到布隆过滤器??如果数据量很多,全部加载到布隆过滤器??误判率增高,会不会影响效果??布隆过滤器里存数据,数据有删除的话,怎么解决??项目里用布隆过滤器内存多大??自己实现的还是第三方已有的?自己实现的内存有多大??误判率有多大??---给我问懵了😭
8.为什么做RPC框架项目?为什么不采用已有的RPC?这个项目是怎么做的?有没有调研已有的RPC框架是怎么做的?和已有的RPC框架有什么区别?DUDDO底层协议是??有没有做过性能比对?你怎么知道你这个协议性能比较高?
9.用到了很多中间件,了解程度,会不会更深层次的去了解这些组件?用的最多的哪个?Redis的底层机制,他的优势?
10.Redis有持久化,能不能存储核心数据?能不能直接使用Redis当db,这样就没有缓存一致性问题了?--Redis的持久化都有数据丢失的风险
11.什么情况下会丢失??-RDB:在上次持久化之后到下次持久化之前,如果宕机,会丢失数据;AOF:持久化的是写命令,AOF文件可能会损坏
12.那mysql临时断电,会不会也有内存到数据库的时候数据丢失的风险?像redo undo这种日志也是在内存里,没刷到磁盘之前,数据库重启了,会不会有数据丢失的风险?
13.你还有什么你的某些优势我没有了解到的?--尬住了。。#牛客AI配图神器#
全部评论
感觉问的似乎很多啊
点赞 回复 分享
发布于 今天 00:12 北京

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务