8.12 腾讯一面
上午投,下午3点就收到短信,最后因为时间问题,约在了晚7:30,距离面试还有1.5h
问题:
1、三次握手,四次挥手(追问:TIME_WAIT的作用)
2、流量控制和拥塞控制
3、select和epoll的区别
4、如何实现一个可靠的udp传输(想了很久不会,面试官引导我,先想一下和tcp的区别)
5、java序列化的应用场景(被灵魂拷问——还有吗)
6、sleep和wait的区别
7、并行和并发的理解
8、线程和进程的区别
9、HashMap(让我自由发挥,捂脸.jpg,问到红黑树,果断不了解)
10、口头描述快排和归并的过程
11、事务的ACID
9.5 CVTE视源一面
主要问了项目
1、项目有哪些功能模块。
2、项目用了哪些表?表与表之间的关系?
3、使用一个SQL语句,对项目中的表进行连表查询
4、如何优化查询?索引是如何优化查询
5、网址输入URL,浏览器是如何发请求给服务器,服务器springmvc是如何处理请求,返回怎样格式的流,浏览器怎么解析流?
6、系统登录后,如何知道下一个请求是我发出来的?(项目中单点登录功能有关)
7、JWT的数据一旦被获取,是不是就能盗用了?(项目中单点登录功能有关)
8、使用汽车作为例子,讲解JAVA的 三大特性?
9、有100w的汽车的生产命令下发给工厂,要用什么集合类?(考虑多生产线,用线程安全的集合)
10、ArrayList扩容原理?是深拷贝还是浅拷贝?
11、HashSet的put过程?
12、如果100w的汽车的生产命令下发给工厂,要8个小时,如何缩短为1个小时?(考察多线程)
13、那如何读取这100w个命令数据?(考虑线程安全)
14、编程题:给一串字符,打印出其中出现次数第6高的字符?
我说了2种方案(都被灵魂拷问——还有吗?),这心慌了,看来没答到点上。面试结束后才想起来,大小根堆可能才是正确的,面试官想看到的答案,害~
9.21 网易互娱一面
9.21,说实话,面试前还是很紧张,下午看面经,刚好有一个华工大佬上午面了,然后过了一遍他面经,补了redis知识,结果面试真被考到了。说明什么(坏笑.jpg),懂了就学起来~
1、String为什么设置为不可变的?
2、慢查询中出现了记录,你是通过怎样的流程去处理?
3、(追问)你说到,使用explain的唯一索引和非唯一索引,两者的作用?
4、http的常用code
5、(追问)3开头还了解过什么码,304的原理
6、redis的内存淘汰机制
7、(追问)redis的LRU的实现
追问【是把所有的记录都放进去队列吗】
8、redis的rehash()
9、(算法题)给个无序数组,求第k大的元素
10.12 网易互娱二面
本来以为一周没有消息就默认挂了,结果10号突然来了一个面试通知,这。。到底我是备胎呢?还是国庆期间hr太忙,国庆后再发面试通知。面试当天,2个面试官,第一次见到这种大场面~
1、讲一下项目中的业务,你做了哪些工作,以及遇到了什么难题
2、(自己谈到了把大表拆分成多个小表的业务优化,字段上的拆分)业务上是这样的,那能说说技术上拆表的优点吗
3、mysql的innodb存储引擎,B+树索引结构
4、看过mysql相关的什么书
5、(项目中有上传视频的功能)上传视频的大小最多是多少?
6、项目中有视频的断点续传,视频上传在http协议层面也会进行分块,你了解其中的实现吗?或者说http头部有什么和视频分块上传有关的字段
7、项目还有什么可以优化的地方?
8、有参与过项目部署吗?
9、QPS比较高时,项目可以怎样优化
10、熔断机制(不懂)
11、有看过其他课程,自学过其他组件吗
12、rabbitmq怎么保证消息的可靠发送
13、谈谈未来在技术方面的规划
14、那为了达成目标呢,你要做什么事情
10.27更,到现在还没消息,应该是挂了,而且自己也不记得用的是哪个内推人的内推码(捂脸),但加微信问hr,她却说会有感谢信,我收的感谢信少,别骗我喔~(根本没有收到好吧!)
10.13 吉比特一面
9.25笔试,没在意,结果收到了面试通知。这周以为只有一个字节,没想到多了2个面试,给这无趣的二阶段复习多了不少色彩。
腾讯会议面试,这面还是挺久的,面试官什么都问,项目,基础,框架,场景题...,面了1:15
1、spring mvc接受前端请求中的数据的方式?
2、spring mvc接受二进制流,要怎么接收?
追问【用什么接收?】
追问【怎么把输入流放到字节数组中呢?】
3、spring mvc下,如何处理异常信息
4、项目中用到的spring mvc事务
5、JWT令牌的内容,优缺点,项目中的应用
6、非对称加密算法加解密的过程
7、nginx的配置
8、算法题【敲代码,还要运行出来】:给个数组,要求平均分到k个数组中,如:10长度的数组,k=4,那么有2个数组长度为2,还有2个数组长度为3
9、mysql索引中,如果b,c字段建立单独的索引,条件查询中a=10 and b=1 and c= 12,那么能用到索引吗,具体索引怎么工作呢?
10、新生代的垃圾回收过程?
追问【如果一个幸存区放不下保留的对象时,怎么办?】
追问【哪些对象会进入老年代?】
追问【怎么判断对象的年龄?】
11、如果自己创建了一个String类,那么加载器是加载自己创建的还是JAVA自己提供的?
12、JSP和Servlet
追问【那么监听器和过滤器什么时候执行】
13、如何正确地终止线程
14、hashmap的key可以为空吗?
追问【那存放在哪个桶】
15、反射中如何获得方法参数的注解?
16、Spring的@Autowired和@Resource的区别和应用
17、【场景题】如何开发在线活跃人数的功能
追问【那用户关闭浏览器怎么办】
18、班级排名多少
19、你认为你有什么优点
20、你认为你有什么缺点
21、看过什么书?
说了看过【深入JAVA虚拟机】和【innordb存储引擎内幕】
追问【是系统地学习JVM吗?】
追问【类在JVM中有哪些信息占用内存?】
追问【垃圾回收的时机?】
22、反问:一共几面
三面,第一面综合面,第二面比第一面简单些,第三是HR面
10.20 吉比特二面
一面面试官说过,第一面是综合面,第二面就比较简单了,还真是20mins结束
问了一下项目的视频播放,还有问了一下并发访问压力问题
1、有黑客频繁访问服务器,导致服务器crash掉,怎么处理
2、若黑客模仿正常访问,怎么防止服务器crash掉
剩下的都是非技术问题
9.16 字节教育客户端一面
1、final关键字的作用。
追问:final修饰方法和static修饰方法无法重写的原理
2、java的基本类Object类有什么方法,各自的作用?
3、(一个多线程的场景题,具体不记得)
4、讲讲JAVA中的List和Map,HashMap?
5、简单说说List的遍历方法?
6、List删除一个元素怎么做?
7、了解mysql的哪些东西?然后出题让我写SQL语句
8、算法题
非负整数的数组,不开辟新空间的条件下将数组中的0排到数组的后面
[2,0,3,0,6] 处理前
[2,3,6,0,0]处理后
9.22 字节教育客户端二面
刚开始体验极好,问的基本会,结果在算法题开始,内网开始变差了,断断续续的,心态开始不舒服了。
1、(操作系统)进程调度算法,各自的区别,现代计算机用哪种
2、脱离语言,谈谈抽象类和接口的区别。然后再讲讲java中的区别
3、(编程)写个快排,解释
4、(设计模式)写单例模式,解释一些修饰符,双重判断的作用
5、(非23种设计模式之一)脱离语言,谈谈生产者/消费者模式(自己不知道)。写一下java代码
总结:
本来45mins能搞定的,硬是被网卡到1h,一些扩展的细碎的问题我没记下
9.23 更新,我的天,第二天就收到hr说安排三面,然后hr说字节客户端一般没有hr面,3面技术面过了就ok了
9.23 晚,更新。害,三面的面试官要业绩考核,只能约到10.16号。
10.16 字节客户端三面
终于终于终于,结束了,煎熬,兴奋,刺激的字节投递。从9.23知道三面,一路准备。很多想说的,不过得等到意向书我才真的安心。
本来是2:30面,面试官因为有事,突然1:45一个电话打来,希望提前半小时,他没空,刚好我也睡不着,也就答应了。
1、(算法题,手撕+运行)
给个数组[a,b,c,a,e,b,c,a,f],输出[a1,b1,c1,a2,e,b2,c2,a3,f] 意思是对于重复次数超过1的字符,添加数字;没重复的,不变
2、JAVA多态的理解
3、泛型的作用,解决了什么问题?
4、list和map了解哪些?
5、这些list,map的区别?
6、ArrayList和LinkedList是线程安全的吗?那有类似的线程安全的集合类吗?
7、进程里有多个线程,一个线程崩了,会导致整个进程崩掉吗?为什么?
8、一个进程里的所有线程结束了,那么进程会结束吗?为什么?
9、DNS解析过程
10、cpu存储的最小单元是什么?有什么作用?
11、CPU和GPU的区别
12、HTTP和HTTPs的区别
13、TCP连接有什么特点
14、你觉得你最大的优势是什么
15、你觉得你最大的劣势是什么
16、后面就是自己的反问啦~
终于到小明许愿了,许愿意向书,双手合十!
10.17 富途一晚三面
16号收到hr的电话,邀请线下面试,然后发现是在大学城的酒店,想着没线下面过,经历一下也好,然后就去了,只不过没想到,一去就直接三面,走完流程,表面平静,内心早已风起云涌,现在的YM也强到能一晚三面,走完流程,这就是YM吗!!!
一面
1、自我介绍,了解客户端吗
2、项目过程中遇到了什么问题?有遇到解决不了的吗?
3、讲讲JAVA的泛型
4、单继承和多继承的各自的优点和缺点
5、弱引用和软引用的区别
6、什么时候进行垃圾回收
7、JAVA内存模型
8、什么是内存溢出
9、什么是栈溢出?常见的栈溢出例子
10、字符串相加有哪几种方式?灵魂拷问——还有吗?
11、什么是线程安全
12、有什么措施可以避免线程安全问题
13、volatile保证可见性和有序性的原理?用过吗
14、synchronized用法?3个用法的区别
15、【编程题】给n个会议和时间段,求一天内开完这些会议所需要的最少房间数
如有5个会议,有【6,7】,【7,10】,【8,11】,【15,18】,【10,12】
16、要求实现一个数据结构,通过2个key确定一个value?
17、在网页上输入一个URL,会发生什么
18、【智力题】有10个钻石,大小不一,每个只能看一次,看完之后就必须选择拿或者不拿,不拿的话就看下一个,不能往回拿,拿的话游戏结束,我们的目的是拿大的,如何做这件事?
二面
1、“abcde”字符串占几字节?
2、int占几字节?
3、内存堆和内存栈的区别
4、有个整形全局变量a=0,线程一进行a自增,线程二进行a自减,问最后的结果是0吗?不是的话,举例说明
追问【那如何保证线程安全,最后输出0】
5、死锁是什么?
6、死锁如何避免?
7、http哪一层协议?
8、https和http的区别?
9、https数据传输是对称加密还是非对称加密?为什么是非对称加密
10、tcp哪一层,拥塞控制和流量控制有什么区别?
11、udp的使用场景
12、口头说说排序怎么排,时间复杂度,怎么得出的
13、【智力题】给你一篮子鸡蛋,大小不一,用最少的比较次数找到最大的鸡蛋和最小的鸡蛋
用什么工具都可以。
14、【算法题】二叉树的插入
第三面是hr面