腾讯、shopee、oppoJava岗社招面经
腾讯
[一面]
1.Java
String str = new String (a+b)会创建几个对象;字符串常量池在JVM哪个位置
Spring的设计模式;工厂模式是怎么实现的
Java进程不见了,怎么定位
2项目
服务部署的形式;如果某个机房宕机了呢,是依赖组件还是业务自己做的;了解这块是怎么做的
流量突增平台会怎么处理
请求出现超时,但应用查不到这个请求日志,怎么排查
针对项目中的一个小问题,了解整个调用链路
3.Kafka
Kafka在业务中的使用场景
Kafka的精准一次是怎么设计的;平常为了防止重复消费是怎么做的
Kafka的大概框架是怎么样的;为什么吞吐量这么高;
Kafka的多个副本能提高它的读写性能,为什么这么设计
4.Redis
哨兵模式是为了解决什么?整个流程大概是怎样的
5.锁
Synchronized和lock的区别
Synchronized的锁优化是怎么样的
线程死锁的情况,怎么解决
6.MySQL
MySQL的事务特性?原子性是怎么实现的
MySQL的默认隔离级别?什么是不可重复读
select语句的执行过程
7.网络
select / poll / epoll的区别?epoll的数据结构
TCP三次连接,这个listen backLog有什么作用
TCP四次挥手,Time WAIT发生在哪方;两个超时重传时间的作用;大量timeout怎么处理
https的加密过程;证书认证的过程
8.Linux
进程间的通信方式;有哪些信号通信是不可靠的;为什么是不可靠的
僵尸进程怎么解决?协程有了解过吗
9.代码
线程交叉打印12A34B56C,多种实现方式(一个打印数字,一个打印字母)
[二面]
1.项目
项目中遇到的挑战
2.Kafka
Kafka和RocketMq的区别
3.Redis
本地缓存和Redis缓存的区别
本地缓存的场景
Redis的数据更新策略
Redis的部署方式,集群部署的丢失数据,主备切换过程
4.算法
一个字符串,一个子字符串,判断子字符串在字符串中出现的次数,不要求连续,但有先后顺序,s=rabbbit t=rabbit,出现的次数为3
[三面]
1.项目
项目介绍
在项目中用了Spring Boot是怎么使用的
线程池项目中怎么使用,遇到过什么问题
2.HashMap
HashMap的了解
3.线程
ThreadLocal项目中怎么使用
4.锁
乐观锁和悲观锁的区别;项目中的使用
Synchronized和ReentrantLock区别
5.Spring
Spring事务
Spring Bean的存储
6.MySQL
Java数据源怎么使用
分布式事务的实现
为什么索引能查询速度
7.算法
生产者和消费者的实现
8.Linux
CPU的内存模型
9.JVM
内存模型
10.网络
TCP的可靠性保证
11.Redis
Redis数据结构
排行榜的实现
[笔试]
1.选择题
10道计算机相关
10道数学相关
2.编程题
用多重背包算法来做
根据给出的数据建二叉搜索树,再返回所有叶子节点
k个一组翻转链表
[一面]
1.Linux
进程间的通信方式
内核空间和用户空间;为啥要这么区分
什么是分段机制以及分页机制
2.网络
TCP四次挥手的过程
TCP流量控制和拥塞控制
输入https://www.shopee.com以后的过程
对websocket有了解吗
IO多路复用的几种系统调用;主要区别
3.数据结构
什么是红黑树
介绍一下B+树、B树
4.线程
Java多线程实现方式
5.MySQL
持久化手段,执行update语句时,如何保证数据持久化
ACID
6.Redis
sorted set底层的数据结构;原理
7.Kafka
原理
怎么保证高可用、高性能
[二面]
1.ConcurrentHashMap
get、put方法
为什么插入新节点的时候是用尾插法
2.网络
web安全有了解吗
CSRF
TCP的CLOSE_WAIT和TIME_WAIT状态;CLOSE_WAIT的作用
3.MySQL
讲讲MVCC
4.Kafka
分区的分配策略
再平衡原理
5.Linux
用什么命令看tcp的状态信息
6.其他
你技术方面最大的优势是什么
职业规划
7.算法
对一个数组进行排序,元素只有0,1,2,使用那种排序方式;为什么;找一个字符串里面最长回文子串
[三面-HR]
1.其他
你对自己未来五年的一个规划是什么
你的某某经历主要是做什么?有什么印象深刻的事情?
你还有什么是想要了解的吗?
oppo
[一面]
1.Redis
持久化方式
过期键的删除策略
2.JVM
CMS原理;垃圾回收过程
一个固定的堆内存,当创建线程数很多的时候,JVM参数怎么配置
3.RocketMQ
用在什么场景
如果消费者组A下面有两个消费者组A1,A2,问消费者A1和A2能否消费不同的主题
RocketMQ如何保证事务
4.网络
TCP四次挥手
5.项目
讲讲项目
[二面]
1.Redis
常用数据结构
hash的指令有哪些
过期策略
2.Dubbo
Spring Cloud和Dubbo的区别
Dubbo调用模式
Dubbo的SPI
Dubbo协议有哪些;有何不同
3.项目
项目经历
分库分表如何做的,常用的数据库中间件有什么
分布式事务
4.JVM
最大堆内存和最小堆内存如何配置
类加载机制;如果我想自己控制类加载的时机怎么办
5.网络
https请求流程
如何获取最初的证书
6.MySQL
SQL如何优化
7.并发
工作中什么场景用到了多线程
如何创建多线程
线程池的参数有什么
8.算法
最小覆盖子串
以上就是我腾讯、shopee、oppo的面经全过程啦,希望对大家有所帮助吧
#java工程师##面经##社招##OPPO##Shopee##腾讯#