2019年大厂Java面试真题合辑放送

java 后端面试题
1、List 和 Set 的区别

2、HashSet 是如何保证不重复的

3、HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?

4、HashMap 的扩容过程

5、HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?

6、对象的四种引用

7、Java获取反射的三种方法

8、Java反射机制

9、Arrays.sort 和 Collections.sort 实现原理 和区别

10、LinkedHashMap 的应用

11、Cloneable 接口实现原理

12、异常分类以及处理机制

13、wait 和 sleep 的区别

14、数组在内存中如何分配
2019年大厂Java面试真题合辑放送_第1张图片
Kafka面试专题及答案
1、Kafka 的设计时什么样的呢?

2、数据传输的事物定义有哪三种?

3、Kafka 判断一个节点是否还活着有那两个条件?

4、producer 是否直接将数据发送到 broker 的 leader(主节点)?

5、Kafa consumer 是否可以消费指定分区消息?

6、Kafka 消息是采用 Pull 模式,还是 Push 模式?

7、Kafka 存储在硬盘上的消息格式是什么?

8、Kafka 高效文件存储设计特点:

9、Kafka 与传统消息系统之间有三个关键区别

10、Kafka 创建 Topic 时如何将分区放置到不同的 Broker 中

11、Kafka 新建的分区会在哪个目录下创建

12、partition 的数据如何保存到硬盘

13、kafka 的 ack 机制

14、Kafka 的消费者如何消费数据

15、消费者负载均衡策略

16、数据有序

17、kafaka 生产数据时数据的分组策略
2019年大厂Java面试真题合辑放送_第2张图片

Redis面试专题
1、什么是 Redis?简述它的优缺点?

2、Redis 与 memcached 相比有哪些优势?

3、Redis 支持哪几种数据类型?

4、Redis 主要消耗什么物理资源?

5、Redis 有哪几种数据淘汰策略?

6、Redis 官方为什么不提供 Windows 版本?

7、一个字符串类型的值能存储最大容量是多少?

8、为什么 Redis 需要把所有数据放到内存中?

9、Redis 集群方案应该怎么做?都有哪些方案?

10、Redis 集群方案什么情况下会导致整个集群不可用?

11、MySQL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据?

12、Redis 有哪些适合的场景?

13、Redis 支持的 Java 客户端都有哪些?官方推荐用哪个?

14、Redis 和 Redisson 有什么关系?

15、Jedis 与 Redisson 对比有什么优缺点?

16、说说 Redis 哈希槽的概念?

17、Redis 集群的主从复制模型是怎样的?

18、Redis 集群会有写操作丢失吗?为什么?

19、Redis 集群之间是如何复制的?

20、Redis 集群最大节点个数是多少?

21、Redis 集群如何选择数据库?

22、Redis 中的管道有什么用?

23、怎么理解 Redis 事务?

24、Redis 事务相关的命令有哪几个?

25、Redis key 的过期时间和永久有效分别怎么设置?

26、Redis 如何做内存优化?

27、Redis 回收进程如何工作的?

28、加锁机制

29、锁互斥机制

30、watch dog 自动延期机制

31、可重入加锁机制

32、释放锁机制

33、上述 Redis 分布式锁的缺点

34、使用过 Redis 分布式锁么,它是怎么实现的?

35、使用过 Redis 做异步队列么,你是怎么用的?有什么缺点?

36、什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?

37、redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?

38、redis 主从复制如何实现的?redis 的集群模式如何实现?redis 的 key 是如何寻址的?

39、使用 redis 如何设计分布式锁?说一下实现思路?使用 zk 可以吗?如何实现?这两种有什么区别?

40、知道 redis 的持久化吗?底层如何实现的?有什么优点缺点?

41、redis 过期策略都有哪些?LRU 算法知道吗?写一下 java 代码实现?

42、缓存穿透、缓存击穿、缓存雪崩解决方案?

43、在选择缓存时,什么时候选择 redis,什么时候选择 memcached?

44、缓存与数据库不一致怎么办?

45、主从数据库不一致如何解决?

46、Redis 常见的性能问题和解决方案

47、Redis 的数据淘汰策略有哪些?

48、Redis 当中有哪些数据结构?

49、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如何将它们全部找出来?

50、使用 Redis 做过异步队列吗,是如何实现的?

51、Redis 如何实现延时队列?
2019年大厂Java面试真题合辑放送_第3张图片
微服务面试专题
1、前后端分离是如何做的

2、微服务哪些框架

3、说说 RPC 的实现原理

4、说说 Dubbo 的实现原理

5、怎么理解 RESTful
2019年大厂Java面试真题合辑放送_第4张图片
最全JVM面试专题

1、内存模型以及分区,需要详细到每个区放什么。
2、堆里面的分区:Eden,survival (from+ to),老年代,各自的特点。
3、对象创建方法,对象的内存分配,对象的访问定位。
4、GC 的两种判定方法:
5、SafePoint 是什么
6、GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用
7、在什么地方,如果让你优化收集方法,有什么思路?
8、GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。
9、Minor GC 与 Full GC 分别在什么时候发生?
10、几种常用的内存调试工具:jmap、jstack、jconsole、jhat
11、类加载的几个过程:
12、JVM 内存分哪几个区,每个区的作用是什么?
13、如和判断一个对象是否存活?(或者 GC 对象的判定方法)
14、简述 java 垃圾回收机制?
15、java 中垃圾收集的方法有哪些?
16、java 内存模型
17、java 类加载过程?
18、简述 java 类加载机制?
19、类加载器双亲委派模型机制?
20、什么是类加载器,类加载器有哪些?
21、简述 java 内存分配与回收策率以及 Minor GC 和Major GC

2019年大厂Java面试真题合辑放送_第5张图片

你可能感兴趣的:(程序员,JAVA)