前言:
这次面试是最舒服的一次,可能是因为之前几次都是坐在地上面的吧!37每次都会提前通知,好评一个。
过程
秒杀系统,sql执行顺序怎么优化的,为什么要优化。
多线程了解吗?线程创建的三种方式,如何创建一个可以取消的线程。线程池相关,核心线程数的数量怎么确定(CPU密集型 CPU数量 + 1,IO密集型 CPU数量×2)。线程死锁的原因。
StringBuilder,StringBuffer区别,使用场景。
你知道的垃圾回收算法(刚才突然发现之前理解错了,我答的是引用计数,可达性分析。难道他想问的是复制,标记清除,标记整理这些?)。新生代垃圾回收算法,为什么是清除-复制。
MySQL事务,隔离机制,每次都问到了。
Python爬虫相关(根据简历问的)。URL去重(Set,亿级用Bloom Filter,这里感谢左神,也不知道左神上不上牛客)。反爬,代理ip,验证码,极验这些。
总结
这次面试是面的最开心的一次,全程都是带着笑的。好几次说着说着和面试官一起笑了起来。总之心态要好,每次面试都是一次复习巩固的机会,一定要珍惜。面的多了就能知道面试官想要什么答案。面试不是考试,而是交流,所以沟通技巧也挺重要的。(一直想让老哥问我Redis,就是不问,很气)
就拿URL去重来说,开始我回答Set,然后面试官说亿级别的数量怎么处理,然后问他,是否允许小概率的误判,他说可以。然后偷笑,说那用布隆过滤器。他说对的,也笑了起来。让我说说布隆的原理。然后我巴拉巴拉一堆。(再次感谢左神,左神真帅)
面试一定要搞清楚面试官老哥要表述的内容,不然巴拉巴拉一堆,不是他想要的,就尴尬了。
最后,秋招陆续开始了,祝大家都能拿到想要的offer。
点击作者姓名与作者大佬交流~
作者:求个offer回家过年