字节一二三hr面 java面经(已off)

3.30 一面(50min)
结合着项目去问的八股:
1.数据一致性怎么保证的?假设是多机房多集群部署,不同机房之间有各自的redis,如何实现整体的限流?
2.超时关单如何实现?为什么要用乐观锁?乐观锁和悲观锁的区别?
3.aop底层原理?
4.如何解决redis大key和热key的问题?
5.spring框架中bean如何初始化的?
6.spring怎么解决bean循环依赖的问题?
7.http请求从浏览器开始到后端服务器的过程?
8.http和https的区别?说一下https加密过程。
9.什么是公钥什么是私钥?
手撕:LCR 194 公共祖先(题本身简单 难在要自己构建测试用例的树)
反问环节

面完第二天中午约二面,这里因为主包是第一次面试,一面的时候很紧张,说话都哆嗦,本以为已经凉了,没想到竟然过了,不过为了再准备准备还是跟hr约了一个靠后的时间。
-----------------------------------------------------------------------------------------------------------------------------

4.2 二面(1h)
项目:
1.详细说一下秒杀业务如何实现?防超卖业务如何实现?redis防止超卖用到了数据库吗?如何进行最终的兜底策略?
2.定时任务(SpringTask)实例宕机了,任务是否丢失?有别的方案吗?
3.项目中缓存击穿的业务场景?缓存穿透是如何解决的?为什么要用缓存空值?为什么不用布隆过滤器?(布隆过滤器这个点,主包的同门在一面红围巾的时候被连环拷打,布隆过滤器原理?存在的问题?如何解决?事后这个知识点被主包偷师了,也是光速吟唱)
4.一个关于项目中支付订单这一业务的连环问:
订单表怎么设计的?索引结构怎么设计的?现在需要查订单,根据时间排序,如何设计索引?订单的数据如果非常大,到了几千万,会有什么问题?有什么解决办法?订单场景如何分库分表?分库分表是什么(问这个问题是因为上一个问题没答好,脱口而出只把数据量大的表拆分成小表)?慢查询如何解决?explain关注哪些内容?
面试官在聊天框写了一个塞扣语句,让我找有哪些问题。(主包看了半天只找出了一个select * 的问题)

八股:
1.redis有哪些常用数据结构?zset一般使用场景?zset底层数据结构?(这里主包听错了,以为问的是set的底层数据结构)
2.讲讲redis主从复制?
3.怎么去保证rabbitmq消费不丢失?生产端如何保证?消费端怎么保证?如何保证消费有序?
4.hashmap底层实现原理?发生哈希冲突时,底层如何处理?
5.线程池了解吗?线程池好处是什么?
手撕:LCR 023 相交链表(最简单的一集)
反问环节

主包个人感觉二面是整个流程下来最有压力的一面,项目拷打很深,感觉面试官就是想看看你是不是真的做过简历上的项目,所以经常在一些细枝末节的地方层层深挖。回答问题时感觉面试官更想听到的是主包针对某个业务分析业务的核心诉求是什么,然后才是解释为什么要使用这种技术方案?例如未支付超时自动关单和成功支付的并发安全问题,这本来就是一件发生概率很低的事,如果为了保证强一致性而去加锁,反而会牺牲并发量。感觉面试官更想听到的是你对这一业务的思考。
-----------------------------------------------------------------------------------------------------------------------------

4.3三面 负责人面(40min)
面试官上来一看主包的简历,没有实习经历,项目也比较简单,那就换个拷打的方向,今天拷打算法,直接开始手撕,题目本身不难,难在撕出来后面试官又加要求。
LCR 095 最长公共子序列(面试时让输出序列,不是长度) 难在撕出来后面试官加要求问主包如果用字符序列CharSequence去做不用String可不可以,后面又加了一个要求具体是啥主包也忘了。

然后又问了几个常规问题:
1.ConcurrentHashmap底层原理?
2.项目中的缓存有设置过期时间吗,你是依据什么设置的?
3.为什么要用本地缓存?
4.synchronized锁升级过程,详细说一下如何实现可重入?
5.reentrantlock底层原理?
6.JWT如何实现无状态鉴权的?如何进行加密的?
7.为什么会想到要限流,是基于什么样的一个场景?如何压测的?qps是多少?用多少并发量去压测?限流前后缓存命中率有什么变化?(这个问题主包在面红围巾的时候已经被问过一遍了,直接吟唱)
8.如果单机redis迁移到集群架构,会出现什么问题,这个时候如何保证一致性?
反问环节

4.8hr面(20min)
都是一些很常规的问题,最后反问了一下具体业务,转正情况就结束了,然后hr拜托主包介绍介绍身边的人来投这个部门(中国交易与广告),主要是缺前端和客户端,这两岗位hc充足,主包所在的小团队后端已经没什么hc了,但是大部门肯定还是机会多多的。
-----------------------------------------------------------------------------------------------------------------------------

4.8晚发offer
整体面下来除了二面压力很大,剩下的几面基本都很轻松愉悦,这里真的要给字节的效率点赞了,除了一面是因为主包自己觉得凉了,就没问hr结果,后面的几面都是前脚面完,两分钟不到就出结果;而且每轮面试前5分钟hr都会发短信祝面试顺利,情绪价值也给主包拉满了。

主包之前没有实习经历,结果一上来面的第一家公司就给off了,感觉有点魔幻。#牛客AI配图神器#
全部评论
暑期实习/春招进度都在专题汇总页里,还有同阶段同学一起交流 👉https://www.nowcoder.com/link/chunzhaoji2610
3 回复 分享
发布于 04-13 16:30 北京
佬是什么项目呀 我感觉我和你项目差不多
1 回复 分享
发布于 04-12 20:27 辽宁
你给hr说什么时候到岗了吗
1 回复 分享
发布于 04-12 10:57 陕西
兄弟你也是这个部门吗,我也刚off
1 回复 分享
发布于 04-12 10:55 陕西
学长牛逼,第一次面试直接字节今天网易一面被狠狠拷打了估计寄了
1 回复 分享
发布于 04-11 21:35 陕西
主包什么bg
1 回复 分享
发布于 04-11 13:09 陕西
太强了😭
1 回复 分享
发布于 04-10 23:09 云南
暑期实习还是日常实习哇?
1 回复 分享
发布于 04-10 16:49 北京
佬,你这是中国交易与广告的哪个部门啊
1 回复 分享
发布于 04-10 10:18 福建
哇哦,佬的项目是不是类似点评之类的啊,感觉很多问题相似,我也在准备这个
1 回复 分享
发布于 04-09 14:35 天津
你们java咋都有三面技术,我java二面过了就是hr面了
点赞 回复 分享
发布于 04-14 16:31 四川
拼多多招2027届实习生啦,https://careers.pddglobalhr.com/campus/intern?t=f9hJ7AB4rz。
点赞 回复 分享
发布于 04-14 12:22 上海
同学,考虑一下我们这里吗,招实习生啦:https://careers.pddglobalhr.com/campus/intern?t=FFEgIPlwIe
点赞 回复 分享
发布于 04-10 14:26 上海
base哪里呀
点赞 回复 分享
发布于 04-09 14:00 安徽

相关推荐

04-17 11:13
已编辑
厦门大学 Java
还在等hr面结果,发面经,攒攒人品~4.2一面(隔天出结果)主要是八股,问得相对比较基础。八股1、Redis里常用的数据结构有哪些?介绍一下每个数据结构的底层数据结构。2、解释一下跳表是什么?3、Redis常用的淘汰策略有哪些?如果让你实现Redis里面的最少使用淘汰策略(LRU)和基于频率的的淘汰策略有哪些?4、使用缓存的时候要注意避免哪些极端情况?缓存三兄弟说一下。5、简单说一下进程。6、有用过协程吗?7、一个进程在执行fork操作的时候,子进程会继承父进程的什么信息?8、用户态和内核态之间转换的时候发生了什么?9、操作系统的内存管理和内存分配你了解哪些?10、为什么TCP是三次握手?项目1、你项目的Redis分布式锁是怎么实现的?执行什么命令?2、那你这套机制怎么避免死锁问题呢?3、怎么确保这个锁没有被其他的线程抢到?有过期时间吗?4、怎么确保这个锁没有被其他的线程抢到?有过期时间吗?过期时间一定能保证任务已经执行完了吗?5、那如果说你(持有锁的线程)先挂了会怎么样?6、你刚才不是说会对状态机进行回滚?还是说你是对这个后续拿到锁的线程直接退出还是回滚?手撕单向链表删除倒数第N个节点4.9二面(当天出结果)二面感觉是最难的,上来就直接开始拷打消息中间件的细节了。八股和项目结合着问的。最后还问了点场景题。1、能大概解释一下 RocketMQ 的一些机制吗?2、一条消息在 RocketMQ 中的完整消费流程是怎样的?3、生产者是怎么将消息发送到 Broker 的?4、消费者订阅后,消息是拉取还是推送的?5、为什么 RocketMQ 的吞吐量比 RabbitMQ 更高?6、如何保证消息不丢失?7、RocketMQ 中如何保证消息的顺序性?8、了解 Broker 的主从架构吗?10、你项目中消息中间件主要解决了什么问题?11、能简单介绍 Redis 的特性吗?12、Redis为什么这么快?13、如何解决缓存击穿问题?14、如果大量 key 同时过期,该怎么办?15、Redis 的内存淘汰策略有哪些?16、内存淘汰的触发机制是什么?17、了解 Redis 的主从和哨兵架构吗?18、哨兵是如何选举主节点的?19、如果所有从节点都健康,只有主节点挂了,哨兵如何选出新主?20、简单介绍一下你对微服务架构的理解。21、如果微服务中一个核心模块宕机了,有什么缓解方式?22、如果某个特定请求因代码缺陷导致所有实例依次宕机,如何避免这种情况?23、除了限流,常态下如何避免一个用户打挂所有实例?手撕:从数组中找出所有和为target的子集4.13三面(当天出结果)三面基本上都是问实习相关的问题,还问了一点跟项目相关的问题。1、介绍一下你认为最值得说的一个项目。2、介绍一下你的MinIO的纠删码机制。3、MinIO的集群是怎么做的扩容?4、你项目的各个量化指标介绍一下,并且说明是怎么测量以及怎么提升的。手撕:带过期时间的LRU(手动实现双向队列)4.14hr面(等待结果中)主要是了解了一下在实习过程中遇到的问题和解决方法,也问了一下自己对新岗位的期待和一些场景的处理方式。还问了一下到岗时间。总结:四次面试的面试官都很耐心,而且全程都是积极回应我的回答,反问也都很耐心的解答我的问题。希望能够顺利OC4.15更新 已口头offer4.17更新 已offer
点赞 评论 收藏
分享
评论
33
112
分享

创作者周榜

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