网易云音乐Java引擎开发4月面经

04月11日 收藏 0 评论 1 java开发

网易云音乐Java引擎开发4月面经

面试官介绍了一下部门业务,说是网易云音乐的实时计算组,主要负责推荐和搜索算法的落地

笔试3.5/4 一直以为进不了面试

2022年4月8日 15:15 45min

1、自我介绍
2、序列化了解吗?都有哪些序列化方式?JDK序列化是怎么做的
3、JSON和protobuf相比有哪些优劣势
4、Netty比JDK的NIO好在哪里,你用Netty做过什么
5、聊天室的协议使用的是什么(TCP+自定义应用层协议)
6、群聊和单聊都分别怎么实现的
7、服务器端大量的close-wait怎么解决
8、Netty的buffer比NIO的Buffer好在哪里
9、零拷贝是什么
10、Netty的buffer是不同连接共享的吗?什么情况下共享什么情况下不共享
11、非阻塞的具体含义是什么?非阻塞就是没有上下文切换吗?用户态和内核态的切换条件是什么?
12、Netty的线程池相对于一般的线程池有什么性能提升?
13、Netty对buffer的管理?(池化非池化、堆内存直接内存,扯到了申请内存)
14、我现在要new一个对象,但是JVM的堆空间不够了,会发生什么情况?(是否达到最大堆空间、虚拟机是否允许堆空间扩展)
15、我的CPU只有一个核心,需要考虑线程安全问题吗(不能保证原子性)
16、Synchronized和Lock的区别
17、进程间通信的方式
18、我本机有两个进程采用socket通信,会走网卡吗?
19、TCP是端到端可靠协议,那Ping命令为什么可以存储ttl和路径信息
20、场景题:我有两个很大的csv文件,内存放不下,存储了很多用户的听歌信息,包括点了哪些红心、听歌总数、评论数等等,这两个文件一个是前天的一个是昨天的,信息内容全是乱序的,我现在要做一个显示用户活跃度的同比增长表格,怎么做?
21、算法:我不太喜欢给leetcode,大家都做吐了,你来帮我写一个IPV4->Int32编码和Int32->IPV4解码的程序就行了(最后只写完了编码,他说看看思路就可以了)
面试官水平很高,一直在引导,问问题层层递进非常深入,很多问题我都只写到了出发点,还在此基础上做了一定的扩展

场景题和算法的做法笨得跟猪一样,但今天还是收到了二面通知,感谢不杀之恩

C 1条回复 评论
耿蕊

我是前年在培训班学的平面设计,总的来说只能教你一些最基础的,真正有用的东西都是在实际工作中加上自身空闲时间的摸索来学会的。

发表于 2023-02-15 22:00:00
0 0