字节生活服务(三面挂)

📍面试公司:字节跳动
🕐面试时间:9.8-9.18
💻面试岗位:生活服务 抖音团购 客户端开发
❓面试问题:
🙌面试感想:
#发面经攒人品# #我的秋招日记# #应届生第一份工作最好去大厂吗?#
一面65min:
1.算法题:2个有序数组,得到它们的中位数
2.时空复杂度都是O(N),空间复杂度如何优化到O(1)? index计数,边界处理
3.讲一下项目经历和实习经历
4.讲一下什么是DNS
5.讲一下for-tencent做了什么? 项目背景?
6.改造升级fstack,如何保证稳定可监控?
7.数据流是怎么样的? 性能优化的目标是怎么定的? 成本降低多少? 服务容量? 线上水位?
8.成本降低为一半是怎么定的? 有什么科学的计算方法? 还是看上面的预算?
9.性能优化调研的过程,为什么用dpdk/fstack?
10.C/C++的区别?
11.多态的实现原理?
12.virtual具体咋用的? 底层原理? 虚函数指针是什么?
虚函数表存在类里还是对象里?
13.多态调用查找的过程?  如何保证重写过后的调用,是调用的重写后的函数而不是父类的?
14.父类子类的虚函数表是一个吗?
15.如果父类有多个虚函数,但是子类只重写了某一个,子类如何调用没有重写的函数的?
16.子类重写了虚函数后,如何调用基类的那个函数? 命名空间显示调用
17.命名空间的底层原理是什么? 编译期间做的还是运行期间?
18.智能指针讲一下? 引用计数是什么?  循环引用是什么?
19.引用计数++或--是什么时候触发? 赋值? 拷贝构造? 赋值运算符重载? 底层的资源指针赋值和计数详细讲一下?
20.讲一下中断,硬中断,软中断,同步异步? 硬件触发 错误触发 软件触发
21.缺页中断详细讲一下? 什么时候触发的?
22.物理内存不连续,外碎片怎么处理的? 伙伴系统?
23.进程和线程的区别?
24.进程间通信的方式: 共享内存attach,管道
25.讲一下管道的接口pip,文件描述符,底层的数据结构是什么?
26.如何保证多进程数据安全:锁,信号量
27. 互斥锁 VS 读写锁?
28. tcp VS udp
29. 拥塞控制讲一下,什么情况触发拥塞? 拥塞触发后如何增长?
30.IO多路复用是什么? 什么场景用?
31.多路复用高效在哪? ET和LT,底层的数据结构了解吗?
32.反问
a.团队的组织架构? 团队的定位?  生活服务下面的,客户端开发方向
b.具体的业务:抖音团购,首页和二级页面
c.技术栈:ios开发主要是用的objective-c,然后安卓的话用的是扣子里或者java啊。

字节 生活服务二面 60min

1.自我介绍

2.了解客户端吗? 讲一下对客户端的理解?

3.讲一下tcmalloc高并发内存池的结构,使用场景?

4.threadCache结构重点讲一下? 内存对齐的规则? 这个规则是应用层的还是说和cpu,系统,底层硬件设备有关联?

5.场景题:mysql中有一个用户表,有几个key(userId,订单ID,订单数量,订单状态,订单时间)
目前想查一下该用户近30天的已支付的订单列表并且倒序去排,怎么做?

6.聚合索引的原理? 选哪几个key来聚合?

7.TCP为什么3次握手,不是2次或者4次? 全连接队列和半连接队列?

8.http VS https? 对称密钥和非对称的区别?

9.用过什么抓包工具? tcpdump抓到的是二进制吗? 除了数据还有什么内容? -n -w -x?

10.portobuf的压缩规则? 对比xml/json的优势和劣势? 压缩成二进制的好处,存储&&传输&&丢包

11.vector VS list

12.几十万个数据,如何找到最大的100个?  为什么用小堆?

13.单cpu多线程,任务如何执行的? 串行还是并行? 并行和并发的区别?
调度策略? 上下文切换? 本质是切换执行空间 VS 切换执行顺序<br>cpu密集型 VS IO密集型

14.常见的设计模式? 单例模式如何保证全局只有一个对象?

15.二叉树的之字形遍历

字节 生活服务三面 60min

1.自我介绍

**2.防火墙,** 你做的主要是那一侧的东西? 哪个层面上的?

3.ddos攻击是什么? 如何预防? 事前事中事后?

4.现代防火墙自动拦截功能,怎么样一个实现思路?
拒绝单ip高并发,流量限速,CDN吸收和分散流量,监控报警
5.tcp报文讲讲?
6.mtu是啥? 一般设置为多大? 1500? 二三四层结合着讲讲,ip切片?
7.网络层ip有sip和dip,假如我是一个客户端,去连接你的服务器,我的这个ip地址可以伪造吗?
8.伪造之后能发出去,但是回包回不过来了?

9.做tcp的中间人攻击,我该怎么攻击?

10.做tcp层面上的负载均衡器怎么做? 这种中继器怎么做?

11.高并发内存池,高并发指的是什么? 底层的内存分配器结构? slot结构?

12.for-tencent对比传统递归解析? 它的优势是啥? 安全? 效率?

13.一个域名对应的ip有很多,怎么返回的? 代码里面的算法逻辑是啥样的? 权重? 外围集群咋设计的,就近接入,动态路由?

14.单机的dns系统如何做高可用和高容错的?

15.设计一套端到端的机制,来确保整个httpdns服务正常运行,需要很多数据,埋点设计需要哪些?这是一个开放问题,你可以从整体到单机都讲讲

16.vmstat命令? 监控的内存信息有哪些? 里面的cache干啥的?

17.进程间通信的方式? 管道的底层原理? 怎么实现的?

18.内存对齐讲一下?

19.虚函数可以是virtual的吗? 虚表指针存在对象的哪个位置?

20.智能指针有哪些? 循环引用?

21.手撕:搜索旋转排序数组#我的秋招日记# #应届生第一份工作最好去大厂吗?#
全部评论
感谢UP主借个楼,有26届同学吗? 上市企业,Base深圳/重庆. 招云计算/算法/产品/测试/实习. 看我发布内推.
1 回复 分享
发布于 09-29 11:54 重庆
请问三面怎么挂了呢,题没写出来吗
点赞 回复 分享
发布于 09-30 11:27 陕西
面试完了吃kfc
点赞 回复 分享
发布于 09-29 08:25 广东
这三面这么吓人
点赞 回复 分享
发布于 09-28 21:58 湖北
捞是cpp么
点赞 回复 分享
发布于 09-28 11:58 北京
求三面题
点赞 回复 分享
发布于 09-28 10:30 山东
蹲蹲面经
点赞 回复 分享
发布于 09-28 10:30 山东
接offer
点赞 回复 分享
发布于 09-28 10:30 山东

相关推荐

09-27 00:19
门头沟学院 Java
发发面经攒攒人品tl8.29&nbsp;&nbsp;一面9.3&nbsp;&nbsp;&nbsp;二面9.12&nbsp;三面&nbsp;9.15挂8.29&nbsp;字节抖音&nbsp;一面1.面试官介绍流程:编程&nbsp;+&nbsp;简历提问&nbsp;+&nbsp;基础知识2.自我介绍3.TCP为什么需要三次握手,四次挥手4.追问:三次握手的过程中,客户端挂了,后续如何处理?&nbsp;答:服务端超时关闭连接。追问:linux或者编程库如何配置这个超时参数5.https如何在http基础上保持安全性6.多线程情况下,什么hashmap是线程安全的7.追问:如何保证安全8.key和value是否设置为null9.jvm的垃圾回收器都有什么,解决什么场景?发展趋势是为了解决什么问题,这些迭代是为了解决什么问题10.追问:项目中是否碰到垃圾回收不合理的情况11.什么情况下OOP不合适,需要使用AOP,结合你的项目,结合项目说明12.Spring&nbsp;AOP中的AOP应用有什么13.如果没有@Transactional14.如何解决循环依赖15.需要存储一个用户对象,包括id、邮箱等,如果用redis存放,可以用string和hash,你会怎么选16.追问:并发情况下,怎么保证string的一致呢?如果一个线程改了id,一个线程改了username,怎么解决17.缓存穿透&nbsp;缓存击穿&nbsp;缓存雪崩18.什么是幻读19.mysql的事务隔离级别20.redis和mysql是搭配使用的,如何保证数据一致性,能保证完全一致吗21.考虑在哪些地方加监控,哪些打点,哪些报错,怎么考虑错误处理,哪些需要异常抛出来,哪些打个日志,怎么分级处理23.实习相关手撕:lru9.3&nbsp;二面算法:从尾到头k个一组反转链表1.实习2&nbsp;-&nbsp;4&nbsp;.本科和研究生成绩,是否考研,课题组5.TCP怎么保证可靠,如果包发送失败了呢,怎么确认数据包的数据是完整的安全的正确的6.hashmap中以一个对象,比如person作为key,如果修改了它的成员变量,比如age,那还能找到它吗?&nbsp;默认的hashcode是怎么实现7.如何设计一个线程安全的计数器8.乐观锁和悲观锁,及其适用场景,哪个性能更好,高并发场景会用哪个更多9.从数据库中查询某个商家近30天的数据,从性能的角度考虑,尽可能快地查询10.设计一个用户量比较大的评论系统11.有一个大文件,找到出现频次最高的一百条评论12.其他公司面试情况9.12&nbsp;字节三面1.&nbsp;自我介绍2.&nbsp;redis常见的数据结构3.&nbsp;mysql事务的隔离级别4.&nbsp;介绍实习项目,难点和挑战5.&nbsp;代码(仅口述)二维数组,每行已排序,然后将所有数据排序一维输出6.&nbsp;给用户发金币,预算1千万金币给500w人发,每个人最多可发3个,且发的越多平均收益越低,如何发金币让全局回报最大7.&nbsp;RPC进行序列化和反序列化的原理(或者说类怎么进行序列化)
点赞 评论 收藏
分享
评论
3
19
分享

创作者周榜

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