面试刷题10-17

Java基础,Java并发,JVM是三座大山,视频入门,看书提高,面经重点。

阿里面试

1、自我介绍

2、项目介绍(秒杀系统)

3、集合用过哪些(ArrayList、LinkedList、HashMap、ConcurrentHashMap、TreeMap、TreeSet这些)

3、ArrayList和LinkedList区别

4、两个list求差集(没理解意思)使用一个Set

5、HashMp讲讲(说了1.7和1.8区别,自己还说了1.7会造成链表死循环)

6、死循环怎么造成的(balabala)

7、如何检测链表死循环(这里又理解错了,说了上线排查,给自己埋了一个坑,后面理解了,就是链表如何确认存在循环,这里说了双指针)

8、好,既然你说到上线排查,那你说说你用过哪些jvm指令(这里忘了。。。)

9、看你项目里用了Speing和Mybatis,那你说说看Spring吧(说了IOC和AOP)

10、bean的生命周期(把自己讲糊涂了,生命周期里面有好多好长的方法名和类名,记混了。。。)

11、Mybatis 原理以及如何与Mapper体育映射的(这可没了解过,直接说不会)

12、Mybatis缓存听说过没(这里说了下一级缓存和二级缓存)

13、问项目里的秒杀系统怎么设计的(这里主要说了下通过redis预减库存、消息队列异步下单)

14、缓存如何与数据库保持一致(先更新在删除)

15、如果缓存清空了,大量请求落到db上,怎么办(这里说了限流器,由于我也实现了一个简单的限流器,后面就接着问上了)

15、讲讲你的限流器怎么是实现的(漏桶算法,利用了atomic原子类balabala)

总结:总共面下来不到28分钟,每次遇到不会的就会说着一些有的没的,生怕沉默下去,面试官全程也不打断,感觉很友好,体验很棒。

 


 

电话面 35分钟 面试官超温柔……声音超好听,遂决定记录一下

1.介绍项目

2.对电影进行评论,怎么设计数据库表格。如果并发量大怎么改进(说了切分),分表以后主键id重复怎么办?

3.spring IOC说一下 spring启动用到什么设计模式

4.aop说一下 用到什么设计模式 代理和桥接的区别

5.hashmap线程不安全,jdk怎么改进的

6.java1.8里lamda表达式和stream说一下

7.平衡二叉树和红黑树区别

8.堆排序

9.一个txt文件,里面全是数据串,大小都在0到一百万之间,文件本身很大无法一次性读取进内存(即数据串有重复的),对这些串做排序,并且要全部输出出来(重复的也都要)

10.有什么想问的

 

 

一面(上午,除了技术方面,闲聊差不多一个小时多一点)比较基础,JDK相关方面以及开发中的基本API:

  1. 简单说说面向对象的特征以及六大原则
  2. 谈谈final、finally、finalize的区别

 

  1. Java中==、equals与hashCode的区别和联系
  2. 谈谈Java容器ArrayList、LinkedList、HashMap、HashSet的理解,以及应用场景
  3. 谈谈线程的基本状态,其中的wait() sleep()  yield()方法的区别。

二面(下午)相对来说比较深一点:

  1. JVM性能调优的监控工具了解那些?
  2. 简单谈谈JVM内存模型,以及volatile关键字
  3. 垃圾收集器与内存分配策略
  4. 垃圾收集算法
  5. MySQL几种常用的存储引擎区别
  6. 数据库的隔离级别

最后一个算法方面的:

5亿整数的大文件,怎么排?

 

 

 

国庆后继续的上下午三面、四面

  1. Java内存模型
  2. full gc怎么触发
  3. gc算法
  4. JVM回收策略
  5. ClassLoader原理和应用
  6. 高吞吐量的话用哪种gc算法
  7. ConcurrentHashMap和HashMap
  8. volatile的底层如何实现,怎么就能保住可见性了?
  9. 有参与过开源的项目吗?
  10. 线程池原理,拒绝策略,核心线程数
  11. 1亿个手机号码,判断重复
  12. 线程之间的交互方式有哪些?有没有线程交互的封装类 (join)

下午四面

  1. 项目介绍
  2. 两次点击,怎么防止重复下订单
  3. 数据库表设计,索引
  4. Redis的缓存淘汰策略、更新策略
  5. dubbo、netty、RPC介绍原理
  6. 限流算法
  7. zk挂了怎么办
  8. 分布式锁的实现方式,zk实现和Redis实现的比较
  9. 秒杀场景设计,应付突然的爆发流量
  10. 分布式数据一致性
  11. 一致性哈希
  12. 消息队列原理介绍
  13. 注解的原理
  14. 数据库原理,数据库中间件,索引优化
  15. ioc原理、aop原理和应用
  16. 大数据相关,MapReduce
  17. Docker的原理

 

 

你可能感兴趣的:(算法)