腾讯、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数据结构

排行榜的实现 


Shopee

[笔试]

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##腾讯#
全部评论
shopee hr面完多久给的oc哇
点赞 回复 分享
发布于 2021-08-02 21:12
楼主最后去哪了
点赞 回复 分享
发布于 2022-04-30 22:36

相关推荐

11-07 18:46
已编辑
中南大学 Java
点赞 评论 收藏
分享
评论
7
54
分享
牛客网
牛客企业服务