压题:字节跳动面试问题大揭秘
压题:字节跳动面试问题大揭秘
字节日常实习后端面经
【一面】约50min
1.http和https的区别
2.get和post的区别
3.3次握手的过程,以及为什么不是2次或者4次
4.ArrayList和LinkedList的区别
5.在使用时候,你是如何区分两者的(就是具体使用场景)
6.HashMap的底层数据结构
7.HashMap会产生哪些并发安全?如何解决的?
8.说一下ConcurrentHashMap是如何实现的线程安全的?
9.除了ConcurrentHashMap,还可以如何将HashMap变为线程安全的
10.Redis常见的数据结构有哪些?以及底层是如何实现的?
11.项目中为什么引入Redis呢?和本地缓存有哪些区别?
12.MySQL的char和varchar有什么区别?
13.对这两个字段建立索引,有哪些需要注意的地方嘛?
14.索引有哪些分类嘛?
15.你在项目中尝试过优化索引嘛?
16.说一下Explain会返回哪些参数?
17.场景设计题:有一个窗口可以执行任务,有一部分任务具有优先级,该如何设计调度算法呢?进阶:优先级低的任务出现饥饿问题,该如何进一步优化?
18.算法题:输出树的最大宽度
19.反问
【二面】80min
1.项目背景
2.项目部署的过程
3.域名和ip地址如何对映的
4.已知一个进程名,如何杀掉这个进程
5.进程间通信有哪些方式?kill-9使用的是哪种
6.Redis是单点部署还是集群部署
7.如果Redis数据超过内存限制,该如何处理
8.Redis缓存过期如何实现的?底层呢?
9.Redis持久化是如何实现的?
10.介绍RDB持久化机制的详细过程吧
11.RDB持久化会阻塞主线程嘛?
12.fork创建子进程有哪些特点呢?
14.Copy On Write技术介绍一下
15.为什么Java打包之后是jar,而不是和C直接生成exe可运行文件
16.两道算法题
公众号进入网站体验更佳

