上周面经(网易有道,腾讯)

网易有道

一面:(很久之前的了)(45min)

1.上来手撕一个链表反转

2.问tcp拥塞控制,流量控制

3.数据库事务隔离级别,可能出现的问题

4.由3问题导出mvcc的概念,让说出自己理解的部分

5.SpringBean生命周期。

6.git命令,没答好,其实他想问我gitmerge与git rebase的区别

7.再次写代码,给定一个字符串,输出最长回文子串

意外收到二面现场面通知

二面

问的比较深

1.代码实现根号2,保留小数点后10位。

2.手撕一致性hash

3.问数据库的锁机制,从表锁问到行锁,每讲一个点都需要说清楚为什么。就这个扯到了mvcc,binlog,redolog,undolog。

4.synchronized关键字底层原理,从无锁讲到重量级锁。synchronized这种悲观锁为什么开销大,你是怎么理解的。

5.Java8新特性,用过哪些。

6.jvm虚拟机除了可以用在Java上,还可以用到其他语言上吗?

7.加锁解锁过程中,线程内具体的操作了解过吗?(真的很深层次了,考察你对常见的问题的深入理解)

腾讯

一面:csig,中间件

1.项目

2.项目中单进程模型,怎样做到的高并发。(这个我没考虑过,下来查了一下,servlet是单实例多线程的模型。具体的可能会涉及到tomcat最大连接数,最大线程数的概念)

3.代码中有线程池的概念吗?如果结合你的项目设计线程池,你应该怎么设计

4.redis集群中保证高可用,哨兵概念,持久化机制,redis是单进程的,持久化过程怎么进行。redis中有哪些数据结构,简单说一下,你项目中存的内容都用过哪些数据结构。redis 有序集合的底层是什么,跳表的特点有哪些,具体实现是什么。比如插入过程说一下。

5.redis的IO模型,从select讲到了poll,epoll,详细将epoll。为什么epoll只拷贝一次,而另外两种需要拷贝多次。具体是通过什么机制实现的。回调,哪里体现到了回调。回调函数源码看过吗?写过吗?

6.分布式系统了解过吗(csig中间件团队,我这真没搞过)

7.TCP 拥塞控制,流量控制说一下,滑动窗口

8.怎么判断网络上发生了拥塞,重传?失序?(提示了quic算法 ppi算法)

9.tcp_reuse ,timestamp参数(具体的time_wait参数相关)大量time_wait需要做的处理

10.为什么time_wait是2MSL,2MSL时长是多少,为什么需要将time_wait设置减小,调整时间有什么意义。(需要再深入再详细一些)如何让time_wait快速回收。

11.tcp里面的接收窗口(没get到点)。接收窗口如果是0,什么情况。详细说一下。

12.tcp粘包(没看过啊)

二面(T3.3大佬面的,佩服佩服,状态已灰)

1.Java中异步调用或者说异步IO实现了解吗?我说了说咱们项目中,做异步解耦的一个思想。

2.TCP中RTT,RTO相关计算公式,给解释一下。给了提示,tcp传输一组数据要用多长时间。

3.操作系统层面,CPU调用线程完成任务的过程,面试官提示我软中断,我感觉回答不上来。

4.讲一下DFS过程,口述。说思想即可。然后问了一个有向图判断循环引用的问题。我回答拓扑排序和dfs都可以。然后让我讲了讲在实际应用场景中,哪一个效率更高,为什么。

5.线程上下文切换为什么越频繁越耗费资源。

6.一开始还问了一个比较开放的题目,结合gc回收机制,说一说你在java编码过程中需要注意的规范

#腾讯##网易有道##面经##Java工程师#
全部评论
请教楼主,腾讯一面里面“怎么判断网络上发生了拥塞,重传?失序?”quic算法和ppi算法都是什么啊?
点赞 回复 分享
发布于 2020-04-05 19:04
请问楼主有道二面以后有消息了吗,进三面了吗
点赞 回复 分享
发布于 2019-08-27 09:11
楼主本科还是研究生呀
点赞 回复 分享
发布于 2019-08-26 14:47
这些问题是真的难,每个点都很深入了。。。 问一下LZ,git merge 和git rebase的区别要怎么讲呢,看了一些博客感觉不是很明白
点赞 回复 分享
发布于 2019-08-26 10:05
好难啊,问的这么细节
点赞 回复 分享
发布于 2019-08-26 09:33
厉害
点赞 回复 分享
发布于 2019-08-26 09:28

相关推荐

04-07 20:59
已编辑
华中科技大学 Java
一面3.201. 实验室项目2. 讲一下tcp的流量控制和拥塞控制3. 如果现在有一个1G的包,打算怎么发?4. 知道CLOSE_WAIT吗?5. 如果服务器端有很多CLOSE_WAIT是为什么?6. 如果有一个连接很久没有收发包,怎么解决?7. http和tcp的keep-alive有什么区别?9. springcloud中不同微服务怎么进行通信10. 讲一下java并发有哪些机制?11. java有哪些常见锁12. ReadWriteLock和互斥锁区别,哪个性能更好13. threadlocal需要加锁吗14. NI/O15. 讲一下jvm的内存模型和垃圾回收16. 什么情况下会导致fullGC17. 如何尽量避免fullGC18. java的反射19. 静态创建对象和动态反射代理区别,谁的性能更好?20. 讲一下linux系统运行一个进程有哪些步骤(输入指令回车之后)21. 说一下类加载的过程22. 有没有什么IO频繁的操作和IO不频繁的操作?手撕:力扣468.验证IP地址二面3.251. Linux系统中怎么检测两个主机之间是否有tcp连接?2. telnet指令知道吗(第一题答案)3. 两台机器建立连接后还没有发送数据,拔网线十分钟,之后的状态如何4. 如果中间某一方发送了数据会发生什么5. 应用层怎么从这个连接中拿到数据6. 说到socket,讲讲IO多路复用7. 延迟队列delayqueue执行过程中,服务重启了,发生什么变化8. RabbitMQ怎么实现延迟队列9. 设计一个短域名服务,输入长域名可以转换为短域名,怎么进行实现,借助类似于BASE32方式10. 哈希值过多时候怎么进行判断该值是否存在(布隆过滤器)11. 根据长域名生成两千万不重复id的方法12. Redis分布式锁实现可重入锁,释放锁时,什么情况下要去调远程服务三面4.3问了简历上的项目,当晚挂#面经# #腾讯# #腾讯求职进展汇总#
点赞 评论 收藏
分享
评论
7
105
分享

创作者周榜

更多
牛客网
牛客企业服务