写点什么

BATJ 真题突击:Java 基础 +JVM+ 分布式高并发 + 网络编程 +Linux

发布于: 2020 年 12 月 21 日

今年的金九银十跳槽的难度明显比往年要大很多,今天在这里给大家分享一些 BATj 面试 Java 程序员真题,让大家进行突击复习,查漏补缺,希望大家都能在这个金九银十拿到满意的 offer!(文末有答案分享哦!)



JVM 面试真题:


  • 类加载器是有了解吗?

  • Java 虚拟机是如何判定两个 Java 类是相同的?

  • 类加载器是如何加载 class 文件的?

  • 双亲委派模型(Parent Delegation Model)?

  • 双亲委派模型的工作过程?

  • 双亲委派模型为什么这样设计呢?

  • JVM 内存划分:

  • 对象分配规则?

  • 简述一下 Java 中创建一个对象的过程


网络编程与高效 IO


  • BIO、NIO 和 AIO 的区别?

  • NIO 的组成?

  • Netty 的特点?

  • Netty 的线程模型?

  • TCP 粘包/拆包的原因及解决方法?

  • 了解哪几种序列化协议?

  • 如何选择序列化协议?

  • Netty 的零拷贝实现?

  • Netty 的高性能表现在哪些方面?

  • NIOEventLoopGroup 底层源理是?


mysql 优化 索引


  • 索引的好处和坏处是什么?

  • 数据库中,哪些列需要创建索引,哪些列不适合创建索引?

  • 说说你对索引的认识(结构、对 dml 的影响、为什么提高查询性能)

  • 若果一个 sql 查询语句很长,执行速度慢,你会想到哪些优化的方法?

  • 数据库里有些数据会反复被查询,问有什么好方法提高效率?

  • 什么是跨站脚本攻击,有何危害,sq|注入攻击如何防范?

  • 在工作中,一台线上 MSSQL 数据库查询数据突然变得异常缓慢,如果交给你排查,请写出排查思路。




Linux 面试


  • 随意写文件命令?怎么向屏幕输出带空格的字符串,比如”hello world”?

  • 终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?

  • Grep 命令有什么用?如何忽略大小写?如何查找不含该串的行

  • Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

  • 把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?




Spring&SpringMVC


  • 什么是 spring?

  • 使用 Spring 框架的好处是什么?

  • 解释一下什么是 IOC?

  • 解释一下什么是 AOP?

  • spring 有哪些主要模块?

  • spring 常用的注入方式有哪些?

  • spring 中的 bean 是线程安全的吗?

  • spring 支持几种 bean 的作用域?

  • spring 自动装配 bean 有哪些方式?

  • 说一下 spring 的事务隔离?

  • 什么是 Spring 的 MVC 框架?

  • 说一下 spring mvc 运行流程?

  • spring mvc 有哪些组件?

  • @RequestMapping 的作用是什么?

  • @Autowired 和 @Resource 的区别?




并发与高性能


  • 有个每秒钟 5k 个请求,查询手机号所属地的笔试题(记得不完整,没列出),如何设计算法?请求再多,比如 5w,如何设计整个系统?

  • 高并发情况下,我们系统是如何支撑大量的请求的

  • 集群如何同步会话状态

  • 负载均衡的原理

  • 如果有一个特别大的访问量,到数据库上,怎么做优化(DB 设计,DBIO,SQL 优化,Java 优化)

  • 如果出现大面积并发,在不增加服务器的基础上,如何解决服务器响应不及时问题“。

  • 假如你的项目出现性能瓶颈了,你觉得可能会是哪些方面,怎么解决问题。

  • 如何查找 造成 性能瓶颈出现的位置,是哪个位置照成性能瓶颈。

  • 你的项目中使用过缓存机制吗?有没用用户非本地缓存




分布式技术面试


  • 为什么使用 MQ??

  • Kafka, ActiveMQ, RabbitMQ, RocketMQ 各有什么优缺点?

  • 消息中间件产生的背景

  • Netty 有什么用?NIO/BIO/AIO 有什么用?有什么区别?

  • 为什么要进行系统拆分?拆分不用 Dubbo 可以吗?




关于面试题答案


文中所有的面试题答案,我已经整理成一个 PDF 文档了,这一份文档涵盖了 Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink 等高并发分布式、大数据、机器学习等技术面试点,如果需要的话各位可以来找我获取到


由于头条篇幅有限,答案我已经整理出来一份 PDF 文档,


需要获取得话麻烦一键三连+评论,然后添加 VX(tkzl6666)即可免费领取




spring 原理



Java 基础



微服务



Zookeeper



MongoDB



由于头条篇幅有限,答案我已经整理出来一份 PDF 文档,


需要获取得话麻烦一键三连+评论,然后添加 VX(tkzl6666)即可免费领取




架构视频也可以免费送




用户头像

添加我的微信:tkzl6666 获取文中资料 2020.09.19 加入

添加我的微信:tkzl6666 获取文中资料

评论 (1 条评论)

发布
用户头像
BATJ 真题突击:Java 基础 +JVM+ 分布式高并发 + 网络编程 +Linux
2020 年 12 月 21 日 14:50
回复
没有更多了
BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux