面经

1. redis为什么更快?
2. redis 怎么实现持久化的?
3. redis单线程在多核机器里使用会不会浪费机器资源?
4. redis 执行命令还是单线程,那如何利用多核心来提升性能?
可以在系统部署多个 redis docker 容器来处理,达到充分利用 cpu 多核心的效果

5. redis缓存穿透、缓存击穿、缓存雪崩是什么?怎么解决?
6. 怎么用redis分布式锁?

MySQL 相关
mysql事务特性是什么?
MySQL的行级锁有哪些?
mysql 有哪些索引?
mysql为什么用 b+树索引?
为什么索引数据结构不用hash?
组合索引是什么?优点?

网络相关
介绍一些osi七层模型
tcp和udp哪层
属于传输层
TCP 和 UDP 的区别、TCP 是如何保证可靠传输的?

数据链路层有哪些协议?
主要有 arp 协议,ARP 是借助 ARP 请求与 ARP 响应两种类型的包确定 MAC 地址的。

http和https有什么区别?
网络代理正向和反向区别?

操作系统相关
1. 进程开辟虚拟空间有哪些段?都用什么用?

2. 栈里面放什么信息?
主要存放函数的局部变量,函数返回后,局部变量会自动销毁。

3. 进程上下文切换是什么?
进程是由内核管理和调度的,所以进程的切换只能发生在内核态。
所以,进程的上下文切换不仅包含了虚拟内存、栈、全局变量等用户空间的资源,还包括了内核堆栈、寄存器等内核空间的资源。
通常,会把交换的信息保存在进程的 PCB,当要运行另外一个进程的时候,我们需要从这个进程的 PCB 取出上下文,然后恢复到 CPU 中,这使得这个进程可以继续执行,
进程上下文切换
对于线程上下文切换的话,因为虚拟内存是共享的,所以在切换时,虚拟内存这些资源就保持不动,只需要切换线程的私有数据、寄存器等不共享的数据。所以,线程的上下文切换相比进程,开销要小很多。

volatile关键字作用,具体怎么做到可见性?
垃圾回收算法有哪些?
全部评论
什么岗位哇
3 回复 分享
发布于 2023-07-23 10:48 贵州
m
1 回复 分享
发布于 2023-08-10 08:24 陕西
mm
1 回复 分享
发布于 2023-07-25 13:12 北京
m
点赞 回复 分享
发布于 2023-09-18 14:20 安徽
m
点赞 回复 分享
发布于 2023-09-16 19:01 北京
m
点赞 回复 分享
发布于 2023-09-13 01:04 上海
插眼
点赞 回复 分享
发布于 2023-09-08 09:44 广东
第三个咋答呀😖
点赞 回复 分享
发布于 2023-09-07 12:05 海南
m
点赞 回复 分享
发布于 2023-08-31 19:15 陕西
m
点赞 回复 分享
发布于 2023-08-31 13:46 山东
n
点赞 回复 分享
发布于 2023-08-11 22:28 广东
+3
点赞 回复 分享
发布于 2023-08-11 07:35 湖北
m
点赞 回复 分享
发布于 2023-08-11 00:47 湖北
m
点赞 回复 分享
发布于 2023-08-10 18:05 广东
m
点赞 回复 分享
发布于 2023-08-05 14:17 四川
m
点赞 回复 分享
发布于 2023-08-05 13:47 河南
好正统的八股
点赞 回复 分享
发布于 2023-08-01 16:10 安徽
m
点赞 回复 分享
发布于 2023-07-31 14:33 广东
m
点赞 回复 分享
发布于 2023-07-24 15:33 山西
m
点赞 回复 分享
发布于 2023-07-24 13:26 浙江

相关推荐

上周组里招人,我面了六个候选人,回来跟同事吃饭的时候聊起一个让我挺感慨的现象。前三个候选人,算法题写得都不错。第一道二分查找,五分钟之内给出解法,边界条件也处理得干净。第二道动态规划,状态转移方程写对了,空间复杂度也优化了一版。我翻他们的简历,力扣刷题量都在300以上。后三个呢,就有点参差不齐了。有的边界条件没处理好,有的直接说这道题没刷过能不能换个思路讲讲。其中有一个女生,我印象特别深——她拿到题之后没有马上写,而是先问我:“面试官,我能先跟你确认一下我对题目的理解吗?”然后她把自己的思路讲了一遍,虽然最后代码写得不是最优解,但整个沟通过程非常顺畅。这个女生的代码不是最优的,但当我问她“如果这里是线上环境,你会怎么设计’的时候,她给我讲了一套完整的方案——异常怎么处理、日志怎么打、怎么平滑发布。她对这是之前在实习的时候踩过的坑。”我在想LeetCode到底在筛选什么?我自己的经历可能有点代表性。我当年校招的时候,也是刷了三百多道题才敢去面试。那时候大家都刷,你不刷就过不了笔试关。后来工作了,前三年基本没再打开过力扣。真正干活的时候,没人让你写反转链表,也没人让你手撕红黑树。更多的是:这个接口为什么慢了、那个服务为什么OOM了、线上数据对不上了得排查一下。所以后来我当面试官,慢慢调整了自己的评判标准。算法题我还会出,但目的变了。我出算法题,不是想看你能不能背出最优解。而是想看你拿到一个陌生问题的时候,是怎么思考的。你会先理清题意吗?你会主动问边界条件吗?你想不出来的时候会怎么办?你写出来的代码,变量命名乱不乱、结构清不清楚?这些才是工作中真正用得到的能力。LeetCode是一个工具,不是目的。它帮你熟悉数据结构和常见算法思路,这没问题。但如果你刷了三百道题,却说不清楚自己的项目解决了什么问题、遇到了什么困难、你是怎么解决的,那这三百道题可能真的白刷了。所以还要不要刷LeetCode?要刷,但别只刷题。刷题的时候,多问自己几个为什么:为什么用这个数据结构?为什么这个解法比那个好?如果换个条件,解法还成立吗?把刷题当成锻炼思维的方式,而不是背答案的任务。毕竟面试官想看到的,从来不是一台背题机器,而是一个能解决问题的人。
牛客51274894...:意思是光刷力扣还不够卷
AI时代还有必要刷lee...
点赞 评论 收藏
分享
牛客48784610...:深圳的变成录用进行中,这个是稳了吗,还没有收到邮件
点赞 评论 收藏
分享
评论
73
518
分享

创作者周榜

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