写点什么

并发 +JVM+Redis+MySQL+ 分布式 + 微服务等及阿里等大厂最新面试问答

发布于: 2020 年 09 月 18 日

经过3个月一边整理一边复习,把许多知识都系统的进行梳理了一遍,很有融会贯通的感觉!各种面试题,在自己作答之后又参考了许多大佬的解答,学了很多大佬的思维方式。前段时间,集中进行了几轮面试,有阿里钉钉、字节跳动创意中心、腾讯、美团,最终进了腾讯内容事业部,具体面试经历和面试题目,过段时间也会分享出来。



话不多说,资料来了!(转发+关注,然后添加VX(tkzl6666) 即可获得我整理的《最新Java面试问答》文档资料的免费领取方式!)



1、并发篇



并发编程可以说是Java编程的灵魂,可以让系统性能更高,用户响应速度更快,让我们的程序模块化和异步化,且内部机制与实现原理也是一线互联网面试官比较青睐的。



知识点:



Java内存模型

AQS、CAS

并发工具类

……



面试题:(部分)



Synchronized 相关问题



  • 1. Synchronized 用过吗,其原理是什么?

  • 2. 获取对象的锁,这个“锁”到底是什么?如何确定对象的锁?

  • 3. 乐观锁一定就是好的吗?



可重入锁 ReentrantLock 及其他显式锁相关问题



  • 1. 除了 ReetrantLock,你还接触过 JUC 中的哪些并发工具?

  • 2. CyclicBarrier 和 CountDownLatch 看起来很相似,请对比下呢?



Java 线程池相关问题



  • 1. Java 中的线程池是如何实现的?

  • 2. 如何在 Java 线程池中提交线程?



Java 内存模型相关问题



  • 1. 请对比下 volatile 对比 Synchronized 的异同。

  • 2. 请谈谈 ThreadLocal 是怎么解决并发安全的?

  • 3. 很多人都说要慎用 ThreadLocal,谈谈你的理解,使用 ThreadLocal 需要注意些什么?

  • 4. 你在多线程环境中遇到的常见的问题是什么?你是怎么解决它的?

  • 5. ……





Java并发体系(xmind格式可在文末领取)



2、JVM



阿里面试必问JVM!我们所有的程序都运行在Java虚拟机上,只有对Java虚拟机底层原理进行深入的学习,全面理解JVM的运行机制、运行时数据区、垃圾收集算法等,还有事务及Spring MVC整个流程、AQS等。



知识点:



1.基本概念和运行过程

2.1线程

2.2 JVM内存区域

2.3 JVM 运行时内存

2.4 垃圾回收与算法

2.5 JAVA 四种引用类型

2.6 分代收集算法VS 分区收集算法

2.7 GC 垃圾收集器

2.8 JAVA IO/NIO

2.9.JVM 类加载机制



面试题:(部分)



1. 什么情况下会发生栈内存溢出。



2. JVM的内存结构,Eden和Survivor比例。



3. JVM内存为什么要分成新生代,老年代,持久代。新生代中为什么要分为Eden和Survivor。



4. JVM中一次完整的GC流程是怎样的,对象如何晋升到老年代,说说你知道的几种主要的JVM参数。



5. 你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包括原理,流程,优缺点。



6. 垃圾回收算法的实现原理。



7. 当出现了内存溢出,你怎么排错。



……





JVM学习笔记(xmind格式可在文末领取)



3、MySQL



MySQL的原理、底层、优化已经成为一个合格的程序员必备技能。开发人员对MySQL的掌握,越深入,你能做的事情就越多。



知识点:



MySQL存储引擎

共享锁及排它锁

MySQL的分区

MySQL事务及隔离性级别

执行计划

Btree与B+tree索引

Sql慢查询

Sql优化



面试题:(部分)



1. 索引的工作原理及其种类;



2. 与Oracle相比,MySQL有什么优势?



3. 为什么B+树相对于B树在查询上会更加优秀吗?



4. 一张表,里面有ID自增主键,当insert 了17条记录之后,删除了第15,16,17 条记录,再把Mysql重启,再insert一条记录,这条记录的ID是18还是15?



5. 主键 超键 候选键 外键



6. 数据库事务的四个特性及含义



7. ……





4、Redis



Redis在国内各大公司都很热门,比如新浪、阿里、腾讯、百度、美团、小米等。Redis也是大厂面试最爱问的。项目中使用Redis,主要考虑性能和并发。



知识点:



缓存一致性问题;

分布式锁

缓存

应用场景

消息队列

……



面试题:(部分)



1.Redis相比memcached有哪些优势?



2.Redis常见性能问题和解决方案



3.MySQL里有2000w数据,Redis中只存20w的数据,如何保证Redis中的数据都是热点数据



4.Memcache与Redis的区别都有哪些?



5. Redis最适合的场景



6. 是否使用过Redis集群,集群的原理是什么?



7. ……





5、开源框架



Spring作为现在最流行Java开发技术,其内部源码设计非常优秀;



MyBatis在阿里等大厂十分流行,BAT等一线互联网公司面试也一定会涉及源码解析的问题。



知识点:



Spring

AOP

IOC

事务管理

SpringMVC

MyBatis



面试题:(部分)



1. 使用Spring框架能带来哪些好处?



2. 什么是控制反转(IOC)?什么是依赖注入?



3. 请解释Spring Bean的生命周期?



4. 你知道spring的生命周期初始化回调方法有几种方法实现?实现原理是什么?或者说他们的执行时机和在bean的生命周期哪里体现了?



5. 你平常工作中有做过一些spring的二次开发吗?或者你有没有针对spring去实现过扩展?



6. MyBatis源码中用了哪些设计模式?为什么要用这些设计模式?



7. 什么是缓存雪崩?如何解决?



8. ……





6、分布式



知识点:



分布式数据库:

memcached、MongoDB、Redis

分布式通讯:

ActiveMQ、RabbitMQ、Kafka

分布式限流:

Nginx、zookeeper



面试题:(部分)



1. MongoDB的优势有哪些?



2. 在MongoDB中如何创建一个新的数据库?



3. zookeeper有哪些应用场景?



4. zk的分布式锁



5. 在Nginx中,如何使用未定义的服务器名称来阻止处理请求?



6. 使用“反向代理服务器”的优点是什么?



7. 请列举Nginx服务器的最佳用途。



8. ……





7、微服务



知识点:



Dubbo

SpringBoot

SpringCloud



面试题:(部分)



1. Dubbo支持哪些协议,每种协议的应用场景,优缺点?



2. Dubbo超时时间怎样设置?



3. Dubbo集群的负载均衡有哪些策略



4. Dubbo的主要应用场景?



5. Dubbo的核心功能?



6. springboot启动机制。



7. ……





8、 性能优化



知识点:



MySQL优化

JVM性能优化

并发编程性能优化

基础代码性能优化



面试题:(部分)



1、双11高并发大促场景下,为什么只能够下订单, 而不能够退款?(服务降级等)



2、支付宝系统可以从哪些角度优化提升性能?(缓存、异步、分布式等)



3、天猫上亿商品数据如何完成快速统计?(Fork/Join任务拆分等)



4、支付宝转账提现功能应该如何优化?(一致性、高吞吐方案等)



5、淘宝网络抖动,如何避免用户重复下订单?



6、……





性能优化知识体系



 9、 BATJ最新面试题及答案解析



阿里篇



1. 从innodb的索引结构分析,为什么索引的 key 长度不能太长



2. 如果让你来设计一个支持数据库、NOSQL 和大数据之间数据实时流动的数据流及处理的系统,你会考虑哪些问题?如何设计?



……



腾讯篇



1. Java 8的ConcurrentHashMap为什么放弃了分段锁,有什么问题吗,如果你来设计,你如何设计。



2. 写出三种单例模式实现 。



3. 什么情况下会发生栈内存溢出。



……



百度篇



1. IO模型——IO多路复用机制?



2. 什么情况下设置了索引但无法使用?



3. 如何设计一个高并发的系统?



4. ……



头条篇



1. 一个环有10个节点,编号0-9。从0点出发,走N步又能回到0点,共有多少种走法?



2. MySQL为什么要用b+树,不用平衡二叉树做索引结构?



3. 假如一个业务依赖单点redis,此redis故障将导致业务不可用,如何改进?



4.……





用户头像

微信:tkzl6666 添加获取你想要的Java资料 2019.01.29 加入

添加VX(tkzl6666 ) 获取大厂面试真题,面试复习资料,Java进阶资料,Java实战项目。

评论 (1 条评论)

发布
用户头像
并发 +JVM+Redis+MySQL+ 分布式 + 微服务等及阿里等大厂最新面试问答
2020 年 09 月 18 日 16:20
回复
没有更多了
并发+JVM+Redis+MySQL+分布式+微服务等及阿里等大厂最新面试问答