抖音上海后台开发提前批一二面面经(已约三面)

面试时间:7.10 晚七点半
面试形式:视频面试
面试时长:各一个小时
面试主要内容:网络传输协议  数据库  Java基础  算法题等

一面

1

用到了什么rpc框架(coral,亚马逊的rpc框架),

coral是基于什么协议的?(http协议),

http协议的header是什么结构的?(请求行,请求头部,请求包体)

2

TCPUDP的区别(巴拉巴拉巴拉)

TCP怎么保证可靠传输的?(三次握手、四次挥手、确认机制、重传机制、滑动窗口、拥塞控制)

如果tcp连接断了(比如server宕机),client如何处理?

3 链表

介绍一下链表(ArrayList LinkedList

单链表和双链表的区别及应用场景

4 MySQL索引(B+树)

5 操作系统和数据库了解么?(不是科班出生回答说不是很了解就不怎么问了)

6 HashMap的底层实现?

数组存储的元素是什么?(链表头的指针)

详细介绍一下 put这个方法的执行流程

1 .hashcode 返回32位的 int 结果

2 .hash 16位和后16位按位异或(减少空间开销,并能保存所有位数信息)

3 与数组长度取模(按位与),计算出index,插入index下的链表(忘记头插还是尾插了)

7 valatile的作用(防止指令重传、 保证可见性)

如何保证可见性(变量更新会直接同步到主存,并另其他线程的变量无效)

8 算法题

输入一个数据流(4,3,10),请依次输出当前数据的中位数

声明一个链表去存储这些数据,并返回链表的中位数(ON

包括两个方法:

1 insertList

2 findMedium

二面

一面结束,面试官让我等一下看是否有二面,结果等了十分钟还没有结果,我都准备躺床上休息了,面试官打电话过来让我二面,惊喜。

1 Javahashmap

2 Java中用到的锁(synchize, Lock

一个class 中有两个加锁的方法,可以同时分别被不同的线程调用么?(当然可以)

3 Redis 缓存

如何保证缓存与数据库读写一致性?

针对千万次每秒的访问,分布式缓存如何实现?主从换从如何保证一致性。

4 Git操作

Git rebase Git merge的区别

5 算法题

打印二叉树的左边界(层级遍历, 打印每层的第一个节点)


#面经##字节跳动##Java工程师#
全部评论
一个class不同的方法加锁可以被不同的线程调用?
点赞 回复 分享
发布于 2019-07-12 00:37
实习还是秋招呢?
点赞 回复 分享
发布于 2019-07-12 00:32
大佬,这个题要怎么回答面试官才觉得OK呢????Redis 缓存 如何保证缓存与数据库读写一致性? 针对千万次每秒的访问,分布式缓存如何实现?主从换从如何保证一致性。
点赞 回复 分享
发布于 2019-07-12 07:23
我也想问三楼的问题,查了一些资料感觉都不太好,希望楼主解答~
点赞 回复 分享
发布于 2019-07-12 07:48
coral不是基于tcp的么...
点赞 回复 分享
发布于 2019-07-12 09:18
我想问哈大家tcp断了客户端怎么处理呢
点赞 回复 分享
发布于 2019-07-13 00:19
研究生还是本科生
点赞 回复 分享
发布于 2019-07-15 21:06
这么多网络的内容,是因为楼主的项目涉及到网络方向的吗?
点赞 回复 分享
发布于 2019-09-14 15:03
求抖音三面面经,是上海抖音的负责人吗
点赞 回复 分享
发布于 2019-10-30 18:02

相关推荐

ProMonkey2024:5个oc?厉害! 但是有一个小问题:谁问你了?😡我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了(别的帖子偷来的,现学现卖😋)
点赞 评论 收藏
分享
11 133 评论
分享
牛客网
牛客企业服务