百度Java提前批一二三面面经
昨下午一面过后直接二面,记录下(顺序不一定)
一面都是些基础 (1个小时)
- Integer a = new Integer(7); Integer b = new Integer(7); a == b? (开门红,答错了)
- voatile和synchronized
- 讲讲HashMap
- 红黑树了解吗,是一种什么树
- HashMap如何实现线程安全
- 讲讲ConcurrentHashMap
- 讲讲ReentranLock
- equals 和 ==,重写equals是否要重写hashCode
- cookie和session
- cookie还能存什么 (基本没用过cookie,都是用的Token鉴权的方式)
- HTTP请求报文
- 举几个常见的header
- JVM内存区域
- GC垃圾回收
- 举几个垃圾回收器 (CMS,G1)
- spring aop
- 项目中有用到aop么
- spring事务
- jdk代理和cglib的区别
- Java反射
- 是否用过反射,反射常用方法
- Java的异常有哪些,那些是需要catch的
- 在try代码块里return,finally是否还会执行 (答错了,会执行但不会影响返回值)
- REST和RPC概念区别
- 项目为什么使用rabbitMQ
- rabbitMQ消息丢失如何防止
- redis基本数据类型
- 数据库隔离级别
- linux修改文件权限命令
- 文件权限3个数字分别代表什么
- 遇到过 "too many open files" 错误吗 (没有。。。)
- 算法题,给定字符串判断括号是否匹配 (用栈秒了)
二面 (半个小时)
- redis集群如何保证节点数据安全 (答了哨兵)
- nginx处理http请求的过程 (不会)
- nginx配置负载均衡 (不会,只配过反向代理)
- 为什么使用rabbitMQ
- docker和虚拟机的区别 (看过,忘了)
- docker常用命令
- docker删除一个正在运行容器的镜像 (先ps,然后 stop ,rm,最后rmi)
- 用一条shell命令实现上面的操作 (这个就真不会了)
- js事件冒泡 (简历里写了前端就问一手这个,以前看过真忘了)
- 数据库引擎选型
- B+树的时间复杂度
- 数据库隔离级别
- 不同级别采用的锁
- redis的key过期删除
- int a = 7; Integer b = new Integer(7); a == b? (梅开二度,答错了)
- 如何实现原子操作
- CAS是什么,在什么地方用到了
- 线程池参数,执行流程
- JVM G1 垃圾回收器,为什么要分区,有什么好处
- JVM 如何排查OOM
- JVM设置内存的参数 (只记得个-Xms -Xmn什么的,具体的意思忘了)
- 52张牌,26张红牌26张黑牌,抽两张一红一黑的概率 (慌了,很简单的数学题,脑子抽了没答上来)
百度AI部门,tob业务
让我等经理三面,也不知道是项目经理还是技术经理,一面感觉良好,二面一上来就给我问懵
听说牛客很灵,许个愿吧
7月26日更新,三面(一个小时)
先是根据项目聊了点技术
- 你对vert.x的看法
- vert.x的特点
- 与spring boot的比较
- docker的常用命令
然后就是聊项目,聊人生,聊生活,学习计划,职业规划等等。。。还让我给前两面的面试官打分。。。
最后写个了编程题,屏幕共享拿自己IDE写的,约瑟夫环,m个人围成一个圈,每次数n次,被数到的人出列。数组+HashSet写出来了,但是时间复杂度不会算。
不过要实习一个月看表现给提前批offer,说后续有人联系我,不知道算不算过了,希望不被鸽。