当时面试能记下的就这些了,可能不太全请见谅:

一面

1、HashMap和ConcurrentHashMap;

2、再谈谈一致hash算法?

3、乐观锁还有悲观锁;

4、可重入锁和Synchronize?

5、事务四大特性?

6、事务的二段提交机制?

7、聚簇索引和非聚簇索引?

8、用自己的实践经历说一下索引的使用场景(说一个就要举一个例子)?

9、当前读和快照读?

10、类加载过程?

11、双亲委派机制及使用原因?

12、说说GC算法?

13、对于未来你有什么职业规划?

二面

1、说说自己参与的项目,技术难度在哪里?

2、Collections.sort底层排序方式?

3、排序稳定性?

4、具体场景的排序策略?

5、Http请求过程,DNS解析过程;

6、三次握手四次挥手;

7、简述线程池和并发工具的使用?

8、数据库索引原理;

9、频繁老年代回收怎么分析解决?

10、Spring IOC、AOP?

11、讲讲SpringBoot/SpringCloud的一些应用?

12、阻塞队列不用java提供的自己怎么实现,condition和wait不能用?

13、拥塞窗口讲一讲,为什么要用慢启动算法?

14、你有着什么样的职业规划?

三面

3、Http与Https的区别在哪里?

4、Https的加密方式

5、线程池的核心参数和基本原理

6、线程池的调优策略

14、负载均衡的原理?

15、Redis的数据一致性问题(分布式多节点环境 & 单机环境)?

16、讲讲docker容器?

17、如何实现何高并发下的削峰,限流?

四面

1、项目中用的中间件的理解(Dubbo、MQ、Redis、kafka、zk)

2、服务器雪崩是怎么造成的?之前有这样的经历吗?怎么防备?

3、高并发架构的设计思路;

4、以前项目中遇到的最大问题和解决策略;

5、生活中遇到的最大的挫折是什么?

6、生活中遇到的最大的令你最有成就感的事情是什么,可以说一下吗?

7、你有什么职业规划?

五面(HR)

1、为什么要用你,你与其他竞争者比较优势是什么?

2、你从上一家公司离职的原因是什么?

3、你对于薪资有什么期望?

4、关于公司的情况,你有什么想问我的吗?

5、如果公司需要你加班你有问题吗?

总结

  1. 在面试之前一定要对项目很熟悉!项目的优化点、技术栈、架构图等等都要搞清楚。
  2. 阿里面试总体感觉比较重视基础,所以 Java 那些基本功一定要扎实。然后,网络部分也要格外重视。
  3. 阿里面试官对于一些问题问的非常深入。

面试题答案整理

关于以上的面试题答案,因为内容太多没能展示出来。不过笔者已经整理打包好了,有需要获取到借鉴学习的朋友(见文末)

该如何学习?

笔者在这里分享一份阿里大牛的手写笔记《Java面试手册》。这份笔记包括有:性能优化、微服务架构面试、并发编程高级面试、开源框架面试、分布式面试五个专栏

还有相应的实战笔记:

性能优化

微服务架构

分布式

开源框架

5年Java程序员,五面蚂蚁险拿offer定级P7,大厂面试不过如此?的更多相关文章

  1. 一名资深架构师规划Java程序员五年职业生涯指南

    每个程序员.或者说每个工作者都应该有自己的职业规划,如果你不是富二代,不是官二代,也没有职业规划,希望你可以思考一下自己的将来.今天我给大家分享的是一篇来自阿里大牛对五年工作经验程序员的职业建议,希望 ...

  2. 十面阿里 Java 程序员,最终拿下阿里 P6 offer!

    转子:https://mp.weixin.qq.com/s/RkMxPbm8E99-rTZKmvBy6Q 今天介绍小编的一个朋友,他现今有四年开发经验了,前前后后为了进阿里面试十次(阿里旗下—蚂蚁金服 ...

  3. 2020年薪30W的Java程序员都要求熟悉JVM与性能调优!

    前言 作为Java程序员,你有没有被JVM伤害过?面试的时候是否碰到过对JVM的灵魂拷问?   一.JVM 内存区域划分 1.程序计数器(线程私有) 程序计数器(Program Counter Reg ...

  4. java程序员的就业指导(重点)

    想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内 ...

  5. 拿到蚂蚁金服的offer是一种什么体验?3年Java程序员分享面经

    前言:我是一名三年的Java程序员,之前一直是在外包公司工作的.在这个月五号的时候,通过我的学长做内推,有了去蚂蚁金服面试的机会.我是在12号接到的电话面试的,因为蚂蚁金服需要7天的简历评估的.还有就 ...

  6. Java已五年1—二本物理到前端实习生到Java程序员「回忆贴」

    关键词:郑州 二本 物理专业 先前端实习生 后Java程序员 更多文章收录在码云仓库:https://gitee.com/bingqilinpeishenme/Java-Tutorials 前言 没有 ...

  7. 【Python】Java程序员学习Python(五)— 函数的定义和使用

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  8. 为Java程序员金三银四精心挑选的五十道面试题与答案

    1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...

  9. Java程序员从笨鸟到菜鸟之(九十六)深入java虚拟机(五)——java本地接口JNI详解

    http://blog.csdn.net/csh624366188/article/details/8063144 对于Java程序员来说,java语言的好处和优点,我想不用我说了,大家自然会说出很多 ...

随机推荐

  1. antd4 源码学习 :表单

    Evernote Export 首先.vue 的数据流是双向的,而 react 的数据流是单向的. 这意味着什么? 这意味着,vue 中,子组件可以用 emit 把数据更新传给父组件.而 react ...

  2. Maven配置文件中的版本使用-SNAPSHOT

    SNAPSHOT是什么? SNAPSHOT是快照,是一种特殊的版本,制定了某个当前的开发进度副本.不同于正式版本,Maven每次构建都会在远程仓库中检查新的快照.如此每次发布更新代码的快照到仓库中,新 ...

  3. Intelij DataGrip 的安装和使用

    链接: Intelij DataGrip 安装教程以及汉化教程 Intelij DataGrip 使用教程 以上两个教程已使用过,没有问题 如有侵权请联系删除

  4. 计算滚动条的宽度--js

    原理 创建两个div嵌套在一起 外层的div设置固定宽度和overflow:scroll 滚动条的宽度=外层div的offsetWidth-内层div的offsetWidth 实现代码 /** * 获 ...

  5. 【mysql】- 锁篇(下)

    InnoDB存储引擎中的锁 表级锁 表级别的S锁.X锁 在对某个表执行SELECT.INSERT.DELETE.UPDATE语句时,InnoDB存储引擎是不会为这个表添加表级别的S锁或者X锁的 表级别 ...

  6. Java中的大数值使用

    在Java中,偶尔会遇到超大数值,超出了已有的int,double,float等等你已知的整数.浮点数范围,那么可以使用java.math包中的两个类:BigInteger和BigDecimal. 这 ...

  7. IO、NIO实现简单聊天室,附带问题解析

      本篇文章主要使用IO和NIO的形式来实现一个简单的聊天室,并且说明IO方法存在的问题,而NIO又是如何解决的.   大概的框架为,先提供思路和大概框架图--代码--问题及解决方式,这样会容易看一点 ...

  8. webpack的使用 一、webpack 和webpack的安装

    本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时, 它会递归地构建一个依赖关系图(dependen ...

  9. laravel 用户认证简单示例

    一.模型代码: 实现接口:\Illuminate\Contracts\Auth\Authenticatable 并引入trait:\Illuminate\Auth\Authenticatable &l ...

  10. Git 提交、删除、切换命令

    1.将本地代码提交到远程仓库 [初始将文件修改上传到远程仓库] 初始化: git init 添加到暂存区: git  add . 提交到仓库: git commit -m 'first commit' ...