快手后端开发一面

1、自我介绍
2、项目拷打
3. Java 里面有哪些基本数据类型,分别占多少个字节?
4. Java 里面 LinkedList 和 ArrayList 的优势分别是什么,各自适用场景有哪些?
5. ArrayList 的线程安全性如何,若要在多线程场景下使用列表,有哪些解决方案?
6. Java 的堆里面新生代和老年代是如何划分的,新生代又分了几个区,新创建对象在其整个生命周期里是怎么在新生代和老年代流转的?
7. 数据库有哪些事务隔离级别,分别能解决哪些并发问题,解决原理大概是什么?
8. MySQL 的可重复读隔离级别能不能解决幻读问题,为什么?
9. 什么是聚簇索引和非聚簇索引,它们的区别和联系是什么?
10. 假如有 SQL 查询语句,有没有可能只用到非聚簇索引而不需要用到聚簇索引,举例说明
11、如果是 OOM 了怎么排查?
12、自己有用过 jmap 和一些工具去排查过错误吗?
13. HTTPS 协议的客户端和服务端之间的通信过程是怎样的?
14. 当 Java 进程的 CPU 使用率突然升高时,排查思路是什么,会用到哪些工具(如 Linux 命令、JDK 工具)?
15. 频繁 FullGC 排查​呢?思路和工具?
16、谈谈 Kafka
17、为什么项目中技术选型用的是 RabbitMQ?
18、RabbitMQ 的数据持久化是怎么做的?
19、线程和进程的区别?
20、线程的安全怎么保证?
21、进程通信的方式有哪些?
22、进程间通信,它的数据传输大概是怎样的流程?怎么能让数据从一个进程传递到另一个进程去?#发面经攒人品##牛客AI配图神器#
全部评论
没有手撕吗佬
点赞 回复 分享
发布于 09-20 01:21 日本

相关推荐

11-28 06:30
门头沟学院 Java
C++: 1.虚函数实现原理2.虚表是一个类有一个还是一个对象有一个?(每个类有一个虚函数表,每个对象有一个虚函数表指针)3.查询虚表的时间复杂度是多少?4.`std::move()` 原理,涉及移动吗5.假设有一个 1KB 的大对象,`move` 能节省拷贝吗6.智能指针原理7.new 和 malloc 有什么区别呢8.用 `new` 生成的对象,可以用 `free` 释放吗?那如果是基础类型呢?9.用 `new` 创建数组时,释放的时候需要写出元素个数吗10.`std::map` 和 B+ tree 有什么区别呢11.红黑树和 B+ Tree 在性能、内存空间占用上的对比12.为什么数据库选择 B+ Tree 而不是红黑树13.在 STL 里,内存池是怎么实现的,有怎样的结构?14.执行 `vector<int> v(4, 100)` 会发生什么,在栈上还是堆上分配?15.那如果是 `new vector<int>(4,100)` 呢16.如何拿到类中私有成员变量的值?17.有一个二维数组里面都有值,想要给每个数都加 100,行遍历和列遍历有什么区别?网络:1.在浏览器中访问一个 http 服务器,这里面会经过哪些协议?2.为什么不直接用 tcp 协议,还需要用 http 协议?算法:1.`1,2,3,4,...,n` 构造二叉树2.合并两个有序数组 a 和 b,两个数组可能是升序/降序(4 种情况),合并后的结果放在 a 中,合并后的顺序按照 a 的顺序来
点赞 评论 收藏
分享
评论
1
14
分享

创作者周榜

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