7.22 字节后端一面面经:番茄小说

时间:2022年7月22日 下午2点 ,时长55分钟
公司:字节跳动
部门:番茄小说 后端 base:北京
第一部分:项目介绍
  1. 介绍一下项目的难点?
  2. 分布式锁实现的方案?(回答:MySQL、Redis、zookeeper)
  3. Redis为什么能作为分布式锁?
  4. 高并发场景下,如何进行流量削峰?
第二部分:lc原题---岛屿数量
第三部分:八股
  1. 说一下Java的垃圾回收
  2. 如何判断一个对象是否可以被回收?
  3. GC roots包括哪些?
  4. 说一下一个对象从创建到被回收的过程,结合CMS垃圾回收器
  5. CMS垃圾回收器的缺点?垃圾碎片问题怎么解决?
  6. 进程的通信方式?
  7. 消息队列、共享内存、命名管道的特点及使用场景
  8. 拥塞控制的作用
  9. 拥塞控制的完整过程
  10. 加权图两点的最小距离如何计算?
  11. 介绍以下常见的排序算法
  12. 排序算法的稳定性,哪些算法是稳定的?
  13. 为什么快排要比其他排序算法快?
  14. 有哪些排序算法是O(N)的?
  15. 一些其他常规八股记不住了
第四部分:SQL题目(中等难度)
总结:面试官人挺好,自己有些问题回答的不行,估计凉了...

#java##字节跳动##面经##提前批#
全部评论
考虑小红书吗,我主页有内推帖子
点赞 回复 分享
发布于 2022-07-29 10:30
可以试一试荣耀。荣耀2023届校园招聘现已正式启动,内推码:yuhvad 网址https://career.hihonor.com/SU60eea919bef57c1023f6fe78/pb/school.html 可添加V信:China_Dadongdong,备注honor-23届。可帮忙查看简历投递进度。
点赞 回复 分享
发布于 2022-07-27 12:13
楼主有二面消息了么 我也今天面完 等得好煎熬😂
点赞 回复 分享
发布于 2022-07-22 21:28
牛牛 好厉害
点赞 回复 分享
发布于 2022-07-22 20:24

相关推荐

从八月初开始准备秋招,从那时候开始背八股背项目刷lc一天能刷二十几道,八月尾投递了第一份简历,九月初第一个一面,十月第一个二面,第一个线下面,到十月末第一个offer,十一月没怎么面试,几个终面的公司接连收到感谢信,恰好收到运营商的线下面试邀请,于是想着换个地方换换心情,去的前一天收到第二个offer沟通,回来这天收到华子报批的信息,好像整个人终于松懈下来了;虽然跟同校其他大佬收获的offer比,我的offer很一般,但是自己有几斤几两还是很清楚的hh,因此就愉快地接受了事实签了三方;签的公司了解起来好像还不错,希望能够wlb一点,春招或许我都不会投递了(是真的很懒的一个人),毕竟接下来几个月忙毕设不会怎么复习面试,如果进不了大厂那我目前的offer就是最好选择了。下面是一些一面后就没推进的公司的面经:字节后端开发工程师-抖音生活服务-一面:JWT token与传统登录验证有什么区别;JWT详细过程;JWTtoken怎么验证;用户信息在gateway中验证,怎么传递给下游微服务;微服务与微服务之间如何相互调用;微服务如何注册到注册中心,微服务宕机注册中心怎么发现;为什么要用ES,ES如何实现倒排索引,ES分片和副本是什么;联合索引abc,查询ac可以匹配联合索引吗场景:用户表用号码作主键有什么缺点?事务的ACID属性,如何保证原子性;split中为什么要对"."字符写成"\\."这样。Shopee一面:有没有用单元测试订单放入延迟队列,用的什么作为延迟队列,还有哪些组件可以作为延迟队列Redis底层数据结构以及怎么实现/string  listRedisson分布式锁怎么使用的,申请锁的命令,为什么要用分布式锁,分布式锁有哪些问题,怎么解决= !=  <> in notin等查询能不能匹配索引聚簇索引与非聚簇索引的区别用户态和内核态的区别,怎么切换,系统调用的情景TCP的拥塞控制/流程,慢启动什么的NIO,BIO区别,NIO下线程一次能处理几个IO操作怎么在大文件无法被加载进内存的情况下判断某数据是否存在其中对无法加载进内存的大文件里的数据进行排序TP-LINK一面:登录校验方式分别有什么,JWT校验的重点在哪里,加密方式解密方式Redisson分布式锁,以及redis与数据库的数据一致性线程同步方式-关键字,乐观锁,悲观锁为什么要用消息队列处理下单模块里的订单生成,如果消息处理中间件down了怎么办nacos作用,以及nacos崩溃了怎么办TCP四次挥手及close_wait状态用户态切换到内核态方式美团地图搜索-后端开发:介绍项目;项目难点;Linux命令;Linux进程太大,怎么排查;客户端和服务端部署在Linux上,从启动到交互的过程是什么;数据库索引结构;算法题:pow(x,n)中移互联网一面:削峰填谷,对于某些时刻访问量特别大的请求,怎么解决;mysql单个实例的最大访问量是多少;缓存和数据库怎么同步?定时事务?消息队列MQ?多个缓存实例怎么同步;分布式事务情景,上锁,扣减等操作,失败的场景;reverse数组,最少操作次数。小红书共四面,方向是广告营销一面问项目,项目重难点,项目怎么提升;Redis优缺点;Redis数据结构;穿透,击穿,雪崩的情况;MySQL锁的级别;死锁发生情况及解决;垂直分库与水平分库,数据表多大数据会涉及分表;消息队列了解哪些;手撕:数据库一道group+having count(*)+LC151作业帮一共三面 两轮技术面+hr面一面 40minHashMap结构,底层,是否线程安全,不安全在哪个点;安全的Map-ConcurrentHashMap,怎么保证线程安全;CAS在ConcurrentHashMap里怎么使用;SpringBoot事务,及事务失效情况;分布式事务,TCC;最终一致性在订单下达上的体现--消息队列;如何保证消息队列消息能够被正确消费;Redis基础数据类型及底层,还有哪些数据类型;缓存击穿及解决;Redis分布式锁只能锁一个资源,那怎么才能达到锁多个资源;一亿个手机号存储在数据库,怎么在Redis层面判断当前登录的手机号已经注册;MySQL事务隔离级别及解决了哪些问题;索引失效情况;limit 100000,10怎么优化;介绍一个项目优点;Redis缓存预扣,再扣减数据库,此时对数据库操作失败了怎么办;项目2相关;手撕--删除链表重复元素;反问:岗位业务;面试流程。43993-4轮面试, 1-2周进度一面:自我介绍;DDD介绍,与三层架构的对比;怎么理解微服务;处理服务实例宕机的情况;项目从前端到后端怎么设计(数据传递,代码设计等);Get和Post怎么传递数据,代码实现;线程池怎么使用,多线程;Redis分布式锁,集群怎么使用;自己介绍一个点;Redis集群之间数据不一致怎么解决;Java学习路线,未来规划;反问:面试轮次,反馈时间;业务;华测导航三面:技术+人事+业务总监一面30min:Java集合;项目;Mysql存储引擎,索引底层;MVCC;SpringCloud;技术栈拓展;反问:公司介绍,岗位bg;流程;二面15min:人事面;自我介绍;部门理解公司理解;秋招经历;薪资需求;个人bg;回顾这些面试内容好像又身临其境了,大多数面试的感受还是很好,面试官都很平静,有的面试官会更严肃一些,有的会轻松一些;口音也是天南海北的,北方南方,还遇到一个偏向两广口音听起来有点费劲;还有就是我感觉面试官之间的习惯也是不同的,有很多人说,面试官说感谢你的时间这句话就是挂了,但其实不是,有的面试官习惯说这句话而已。线下的面试华子那次,很惊讶于自己竟然能够通过三次面试,一面的面试官很专业也不会压力人,二面面试官问了一些关于项目的问题,让我自己介绍最重要的部分,他还给我另外的机会推销自己(先说我介绍的部分没有很打动他,建议我再想想有没有什么想说的),或许是看我很努力,也是给我通过了,三面主管面的面试官聊得很深入也很细致,最后还站起来祝我秋招一切顺利心想事成,出了大厦就收到hr小姐姐的消息说我面试通过了,说到这里也要很感谢一直和我联系的hr,她从我暑期投递华子的时候添加的微信,这次秋招也是她联系我投递的部门,前期笔试,性格测试她还特意打电话告诉我一些关键点,期间我觉得希望渺茫也跟她沟通也是很认真地跟我聊,虽然后期她由于职位变动不负责我的批次投递了,但是还是祝她工作顺利;第一个二面给了科大讯飞,虽然最终没有通过流程终止,但在九月末收到二面面试预约,还是给我在迷茫的九月一点加油鼓劲,让我的十月有一个奔头,相信这是努力的回报;十月相对于九月来说面试还多一些,因此十月虽然累但是心里挺有干劲的;十月尾收到第一个oc,犹豫再三还是拒掉了,离家太远且当时觉得好多流程都还没推进,不太甘心就这么签了;十一月慢慢过,再收到了一个oc,综合方面都挺好的,所以干脆签了,刚好毕设选题也确定了,接下来就是慢慢做毕设享受最后半年的大学时光了。秋招这几个月,在论坛里发过的牢骚和迷茫不少,还好有同样纠结的同学们,一起whisper建议和方向,一起加油打气,祝网友和坛友们都能收获满意的offer。
点赞 评论 收藏
分享
TimeLine:11.28 一面12.3 二面12.5 HR面,下午直接发offer项目:知光平台 + 点评一面1. 自我介绍(介绍学历+项目)2. 介绍一下知光中 Feed 流中用到的三级缓存?(本地缓存+Redis 页面缓存+Redis 片段缓存)3. 你知光的项目中怎么保证的 Caffeine, Redis 和 MySQL 的一致性4. 某一个用户发帖,他的粉丝是怎么收到的?(项目中还没做,简单说了下思想)5. 推流模式对于大V是不是有问题?6. Redis 数据结构,重点讲一下 ZSet7. 设计一个 key 去重,value 排序的数据结构(其实就是 ZSet)8. 秒杀怎么设计的,lua 脚本怎么实现的9. 分布式缓存是怎么选择节点的?10. 一致性 hash 怎么做的?11. B+ 树底层原理,延伸到索引12. 讲一下 go 的 channel 和协程的用法和你的理解13. 算法:力扣 1838 最高频元素的频数(冷门,字节喜欢出这种)14. 反问二面整个二面大部分都在围绕操作系统底层拷打,算法题也不常规1. 自我介绍(学历+项目)2. 什么情况会出现缓存穿透,你项目中有处理过这个吗?3. 除了缓存空值还能怎么解决,如何在查询之前判断数据库里是否有某个值4. 讲讲你项目中的 hotkey 怎么设计的?5. 什么是 Outbox 模式?为什么用 Canal?具体讲讲6. 问 ProtoBuf 协议了解的多不多(就 RPC 的那个二进制传输协议)7. 如何优化读取一个大文件(没答出来)类似于 10亿个QQ号,如何快速查找。8. 协程和线程的区别,为什么协程切换更快9. 内核态切换10. 操作系统内存映射 mmap11. Go 语言,GMP 模型12. 算法题(面试官直接口述):一个数组求和,每个元素都在int范围内,保证最终的结果在int范围内,但是中间会溢出,怎么实现13. 反问
查看25道真题和解析
点赞 评论 收藏
分享
评论
10
82
分享

创作者周榜

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