猿辅导一面
没看错,基础就问了两个问题。。。
1,都没给我介绍项目的机会,先跟我说了一下面试主要两个部分,一个基础,一个算法。直接问我项目里的问题,问我优化了tomcat的参数,问依据的是什么(???我给忘了,只记得应该优化这个,具体参数忘了)
2,nigix负载均衡策略哪几种,为什么要用轮询(??人家这么用的,我就也这么用了)
3,项目里你有什么收获,(我就说,redis和mysql同步的问题,如果只让redis库存减,mysql不减,但是redis不可靠,他说redis咋就不可靠了,没有持久化机制嘛?我说有呀,但是耗性能呀,所以用mq进行消息同步对吧,然后介绍了一下rocketmq的事务性消息,他问我你知道底层咋实现的嘛 ?不好意思,不知道。。。)

项目完了,问点java基础吧
4,说一下hashmap(这个题都问烂了,我说到1.7hashmap里的put操作时候,可能我话太多了,不让我说了,说这个问题过吧)
5,说一下创建线程的几种方式,4种,runnalbe和thread什么区别,runnable和callable啥区别,线程池的参数,为什么要有等待队列吗,直接创建非核心线程不好嘛?(这个地方我不知道,瞎扯的)
好了 基础完了 算法题吧
6,实现一个字符串全排列 ,可能有重复的,要去重,我直接一个set完事了。。人家说,能不用set嘛。。然后我不会。。人家提示大半天,我也没想起来。。
7,实现一个collection,提供append 和 pull方法 pull里返回这里面的最大值,并且删除。。
我直接一个max()+remove()出来了。。人家说,能不能不用python内置函数,那我说直接遍历找最大值。。人家说还能不能优化,学过的数据结构有啥能用。 最后提示我用堆,然后我就开始建堆,结果人家说不需要每次都建呀,因为我用的是下浮,我也只写过下浮。上浮没写过,人家最后让用上浮,吭哧吭哧把上浮写出来了,最后可能没时间了,人家说你就说一下思路吧。。貌似最后时间复杂度没有达到他想要的。。
就结束了,反问环节
8,怎么没咋问我基础呀,主要就是看中算法嘛?
人家说基础在项目里问过了呀,算法也是能力的一种对吧。。(数据库,计网,设计模式都没问我)