写点什么

5 年开发经验,面试 10 分钟后,面试者,转疯了

用户头像
极客good
关注
发布于: 刚刚


3、?分布式架构设计,Redis 分布式锁呢?


是不是看上去很难,是不是和自己准备的“题库”中的问题不一样?不知道从何处下手?如果你有这种感觉,那么说明你的技术还需要继续修炼。


面对如此多的技术面试,怎么样才能说自己的技术已经过关了呢?


只有问题没有参考答案,但是,请允许我说但是,对于下面这些问题,我这里还是有一份参考学习笔记文档和面经试题解析的在文末分享,需要各位小伙伴下来逐一学习!


一键三连+评论,然后添加我的 VX(tkzl6666)即可免费领取。




一、开场白


自我介绍,项目经验(介绍下自己最满意的,有技术亮点的项目或平台,重点介绍下自己负责那部分的技术细节;这一块主要考察应聘者对自己做过的事情是否有清晰的描述,判断做的事情的复杂度)


2、JVM


  • 垃圾回收算法有几种类型? 他们对应的优缺点又是什么?

  • 类的加载过程是什么?简单描述一下每个步骤

  • JVM 预定义的类加载器有哪几种?分别什么作用?

  • 什么是双亲委派模式?有什么作用?

  • 什么是内存溢出, 内存泄露? 他们的区别是什么?

  • 引起类加载操作的行为有哪些?

  • 介绍一下 JVM 提供的常用工具

  • Full GC 、 Major GC 、Minor GC 之间区别?

  • 什么时候触发 Full GC ?


...


3、Java 并发


  • 什么是可重入锁、乐观锁、悲观锁、公平锁、非公平锁、独占锁、共享锁?

  • 讲讲 ThreadLocal 的实现原理?

  • ThreadLocal 作为变量的线程隔离方式,其内部是如何做的?

  • 说说 InheritableThreadLocal 的实现原理?

  • 并发包中锁的实现底层(对 AQS 的理解)?

  • 讲讲独占锁 ReentrantLock 原理?


4、Java 集合


  • HashSet 和 TreeSet 有什么区别?

  • HashSet 的底层实现是什么?

  • LinkedHashMap 的实现原理?

  • 为什么集合类没有实现 Cloneable 和 Serializable 接口?

  • 什么是迭代器 (Iterator)?

  • Iterator 和 ListIterator 的区别是什么?


5、Spring 全家桶


  • Spring bean 的生命周期能不能结合源码回答一下这个问题、或者结合一下 bean 的生命的意义来回答,就是 Spring 为什么需要找个生命周期

  • Spring 容器当中包含了哪些常用组件(至少说 5 个),作用是什么,场景是什么;比如 BeanDefinition;再比如 BeanDefinitionMap

  • Spring 自动注入的原理是什么?能不能从源码来说明一下这个问题;我们常常说的自动注入,到底怎么注入的?有什么坑?怎么让你一个属性不自动注入

  • Spring 源码当中如何来搞定循环依赖的?Spring 支持循环依赖?生命情况不支持?支持的原理是什么?能不能从源码来说明一下?

  • 如何来二次扩展 Spring,比如自定义一


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


个实现自动注入的注解;不使用 @Autowried,自己如何开发一个 @XXX 来完成自动注入?


  • mybatis 源码当中利用了 Spirng 的那些扩展?mybatis 扩展 Spring 之后有哪些问题是无法解决的?比如二级缓存怎么解决

  • eureka 源码当中如何扩展的 Spring?比如怎么动态插拔 eureka 的功能,利用了 Spring 的那个技术点,或者从源码说一下


6、Redis


  • Redis 持久化机制有哪些? 区别是什么?优缺点是什么?

  • Redis 支持的数据类型

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

  • Redis 是单线程的吗?

  • Redis 的缓存失效策略有哪几种?

  • 什么是缓存命中率?提高缓存命中率的方法有哪些?

  • Redis 全局命令及数据库管理

  • Redis 设计订单应用场景

  • Redis 缓存雪崩讲讲看?

  • 什么是缓存穿透?

  • Redis 重启时加载 AOF 与 RDB 的顺序


7.中间件


  • Dubbo 完整的一次调用链路介绍;

  • Dubbo 支持几种负载均衡策略?

  • Dubbo Provider 服务提供者要控制执行并发请求上限,具体怎么做?

  • Dubbo 启动的时候支持几种配置方式?

  • 了解几种消息中间件产品?各产品的优缺点介绍;

  • 消息中间件如何保证消息的一致性和如何进行消息的重试机制?

  • Spring Cloud 熔断机制介绍;

  • Spring Cloud 对比下 Dubbo,什么场景下该使用 Spring Cloud?


8、分布式


  • 消息中间件如何解决消息丢失问题

  • Dubbo 的服务请求失败怎么处理

  • 重连机制会不会造成错误

  • 对分布式事务的理解

  • 如何实现负载均衡,有哪些算法可以实现?

  • Zookeeper 的用途,选举的原理是什么?

  • 数据的垂直拆分水平拆分。

  • zookeeper 原理和适用场景

  • zookeeper watch 机制

  • redis/zk 节点宕机如何处理

  • 分布式集群下如何做到唯一序列号

  • 如何做一个分布式锁

  • 用过哪些 MQ,怎么用的,和其他 mq 比较有什么优缺点,MQ 的连接是线程安全的吗

  • MQ 系统的数据如何保证不丢失

  • 列举出你能想到的数据库分库分表策略;分库分表后,如何解决全表查询的问题。


9、数据库


  1. MySQL InnoDB 存储的文件结构

  2. 索引树是如何维护的?

  3. 数据库自增主键可能的问题

  4. MySQL 的几种优化

  5. mysql 索引为什么使用 B+树

  6. 数据库锁表的相关处理

  7. 索引失效场景

  8. 高并发下如何做到安全的修改同一行数据,乐观锁和悲观锁是什么,INNODB 的行级锁有哪 2 种,解释其含义

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
5年开发经验,面试10分钟后,面试者,转疯了