转载自  2019阿里天猫团队Java高级工程师面试题之三轮面试

作者:编程砖家
https://www.cnblogs.com/xiaoyangjia/p/10697324.html

一.第一面

1.五分钟自我介绍,说说自己的擅长及拿手的技术

自我介绍是为了考察面试者的语言表达和总结概括能力,通常面试官希望听到如下四个方面:

A 基本信息:简历上也有基本信息,口述一遍当作开场,说一下毕业学校、所学专业、获奖经历,时间控制在半分钟。

B 项目经历:按照简历上的内容,按时间由远及近说说开发过的项目,运用什么技术栈,做出什么成绩,有什么收获,时间控制在两分半钟

C 技术专长:说说自己的特长,贡献过哪些开源项目,业余时间看什么书,是否写博客,要契合当前职位所需要的技术栈,时间控制在1分钟。

D 职业规划:说一下的职业规划和中长期打算,表示自己稳定可靠不轻易跳槽,时间控制在半分钟

2.说说Treemap和HashMap的区别?

https://www.cnblogs.com/williamjie/p/9099130.html

3.说说HashMap和ConcurrentHashMap的区别?

http://www.importnew.com/28263.html

3.说说一致性Hash算法?

https://www.cnblogs.com/lpfuture/p/5796398.html
4.你知道的GC算法和回收策略有哪些?GC的机制是什么?

https://blog.csdn.net/rabbit_in_android/article/details/50386954
5.垃圾回收器的基本原理?是否可以立即回收内存?怎么样主动的通知JVM进行垃圾回收?

http://www.cnblogs.com/zhangxiaopeng/p/5001171.html
7.说说Java的双亲委派模型

https://www.cnblogs.com/heapStark/p/9221753.html
8.线程池创建的几个核心构造参数是什么?

https://blog.csdn.net/pfnie/article/details/52757002
9.乐观锁和悲观锁?可重入锁和Synchronized?

https://www.jianshu.com/p/66b854d5bd49
10.CountDownLatch和Cylicbarrior的区别以及分别是在哪样场景下使用的?

http://www.importnew.com/21889.html
11.Http和Https的区别以及Https加密的方式?

https://www.cnblogs.com/wqhwe/p/5407468.html

二.第二面

1.Tomcat的基本架构是什么?

https://blog.csdn.net/xlgen157387/article/details/79006434

2.InnoDB四种事务隔离级别是什么?他们之间的区别是什么?

http://www.cnblogs.com/huanongying/p/7021555.html
3.说说MySQL事务特性和慢查询分析?

⑴ 原子性(Atomicity)

  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。

⑵ 一致性(Consistency)

  一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。

  拿转账来说,假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱相加起来应该还得是5000,这就是事务的一致性。

⑶ 隔离性(Isolation)

  隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。

  即要达到这么一种效果:对于任意两个并发的事务T1和T2,在事务T1看来,T2要么在T1开始之前就已经结束,要么在T1结束之后才开始,这样每个事务都感觉不到有其他事务在并发地执行。

  关于事务的隔离性数据库提供了多种隔离级别,稍后会介绍到。

⑷ 持久性(Durability)

  持久性是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。

  例如我们在使用JDBC操作数据库时,在提交事务方法后,提示用户事务操作完成,当我们程序执行完成直到看到提示后,就可以认定事务以及正确提交,即使这时候数据库出现了问题,也必须要将我们的事务完全执行完成,否则就会造成我们看到提示事务处理完毕,但是数据库因为故障而没有执行事务的重大错误。

4.有哪些MySQL常用的优化方法?

https://www.jisec.com/application-development/798.html
5.Http请求过程,DNS解析的过程?

https://www.cnblogs.com/geaozhang/p/7010353.html
6.三次握手和四次握手的过程?

https://www.jianshu.com/p/bd31d3b23725
7.B+树索引和Hash索引之间的区别?
https://blog.csdn.net/u013967628/article/details/84305511

https://www.cnblogs.com/lixiaolun/p/5058304.html
8.Spring IOC如何管理Bean之间的依赖关系,怎么样避免循环依赖?

https://www.jianshu.com/p/f0c005c7354b
9.SpringBean创建过程中的设计模式?

https://blog.csdn.net/caoxiaohong1005/article/details/80039656

三.第三面

1.说说MySQL的锁并发?加锁的机制是什么?

https://www.cnblogs.com/yelbosh/p/5813865.html
2.高并发场景下MySQL如何防止死锁,保证数据的一致性?

https://blog.csdn.net/qq_34107571/article/details/78001309

3.说说分库与分表设计与困境?

https://blog.csdn.net/jiangpingjiangping/article/details/78069480

4.集群的负载均衡的算法与实现?

https://www.cnblogs.com/data2value/p/6107450.html
5.Redis中Setnx命令使如何实现分布式锁的,使用Redis怎么进行异步队列?会有什么缺点?

https://www.cnblogs.com/diegodu/p/5807154.html

https://blog.csdn.net/wzbwzh/article/details/82876299

6.Redis的数据结构, 线程模型,数据淘汰机制?

https://blog.csdn.net/zhaoliang831214/article/details/82051449

https://www.cnblogs.com/barrywxx/p/8570821.html

https://www.cnblogs.com/changbosha/p/5849982.html
7.Redis的数据一致性问题?

https://blog.51cto.com/538858/2328219
8.缓存击穿的概念和解决方案?

https://www.cnblogs.com/williamjie/p/9117015.html
9.MQ底层原理的实现?

https://blog.csdn.net/h2604396739/article/details/81136527
10.不使用Java并发包,怎么实现阻塞队列?
https://blog.csdn.net/h525483481/article/details/80347485

https://blog.csdn.net/h525483481/article/details/80347485
11.如何实现高并发环境下的削峰、限流?

https://blog.csdn.net/weixin_34360651/article/details/87075481

https://www.jianshu.com/p/6746140bbb76
12.讲讲项目中用到的中间件(比如Dubbo/MQ/Zookeeper/Redis/Kafka)?

说一下为什么使用,有什么优缺点,遇到什么问题,怎么解决这个问题

13.说说微服务的超时机制和熔断?

https://www.cnblogs.com/yunpt/p/10060342.html

14.高并发架构的设计思路?

https://www.jianshu.com/p/1c3bf85ab2cd

2019阿里天猫团队Java高级工程师面试题之三轮面试相关推荐

  1. java高级工程师笔试题含答案_java高级工程师笔试题

    java高级工程师笔试题 选择题 1:which is the main() method return of a application? a.string b.byte c.char d.void ...

  2. dosbox edit.exe 如何使用_宅家30天,2万字节java高级工程师面试题解析,如何斩获阿里p7...

    宅家里一个月,"闭关修炼"的你是不是正在为金三银四跳槽季发愁呢?小编今天说的这富含的15个互联网大厂Java高级工程师核心面试问题整理!内容包括: kafka面试题及解析18道 Z ...

  3. java如何解析cron成可视化_宅家30天,2万字节java高级工程师面试题解析,如何斩获阿里p7...

    宅家里一个月,"闭关修炼"的你是不是正在为金三银四跳槽季发愁呢?小编今天说的这富含的15个互联网大厂Java高级工程师核心面试问题整理!内容包括: kafka面试题及解析18道 Z ...

  4. 「独家」五面阿里P6:Java开发面试题及答案

    说说最近的项目 如何实现session共享,用redis如何实现 缓存击穿的概念和解决方案 说说微服务,微服务之间如何管理 二面(现场) java nio常?用的三个类 java里面的同步锁了解吗?C ...

  5. 阿里 java 面试题 p6_「独家」五面阿里P6:Java开发面试题及答案

    一面(电话) 说说对JVM的理解 treemap和hashmap有什么区别? Java多线程的的5大状态图流转 mysql主键和唯一索引的区别 说说最近的项目 如何实现session共享,用redis ...

  6. 阿里 + 京东 Java 岗面试题概要(面试须知

    Zookeeper 做服务的注册中心,如果服务规模大于 1000,会发生羊群效应网络风暴,怎么优化? 分布式事务两阶段提交如果第二阶段超时了怎么办? 从源码角度讲一讲 Eureka 的底层架构与设计原 ...

  7. 阿里 + 京东 Java 岗面试题概要(面试须知)

    很多程序员都会担心 35 岁的职业危机,而数据也显示,40 岁以上的程序员几乎不存在,大都转了管理岗,余下的只能被迫离职或者转行.然而,太久待在舒适区,可能连小公司的面试,都很难通过了. 程序员是最需 ...

  8. 最新阿里内推Java后端面试题

    阿里一面题目: osi七层网络模型,五层网络模型,每次层分别有哪些协议 死锁产生的条件, 以及如何避免死锁,银行家算法,产生死锁后如何解决 如何判断链表有环 虚拟机类加载机制,双亲委派模型,以及为什么 ...

  9. 2022 年,阿里内推 Java 后端面试题,文末附面试福利

    阿里一面题目: osi 七层网络模型,五层网络模型,每次层分别有哪些协议 死锁产生的条件, 以及如何避免死锁,银行家算法,产生死锁后如何解决 如何判断链表有环 虚拟机类加载机制,双亲委派模型,以及为什 ...

最新文章

  1. 《深入剖析Tomcat》一2.2 应用程序 1
  2. NS3入门--second.cc
  3. μC/OS-Ⅱ 操作系统内核知识
  4. 创建或更改表 tablename 失败_mysql 创建用户
  5. java遍历树_Java实现遍历N级树形目录结构
  6. 让Ubuntu更多的使用物理内存
  7. robotium之无name、ID仅有desc定位
  8. kafka安装_kafka 安装部署教程
  9. make编译安装_学习笔记
  10. Vimium、CrxMouse配置信息
  11. 通过css和html构建能耗数据分析树状图
  12. 兰州交通大学php,航拍兰州交通大学校园∣让我再看你一遍 从南到北
  13. 【转载】VLOOKUP函数多条件查询 VLOOKUP三个条件查询
  14. WinRAR 6.0 sc 去广告版
  15. 鸿蒙系统(HarmonyOS)-- 第2章:鸿蒙Ul框架
  16. 电子商务电子支付实训二
  17. 语音识别领域公司分析
  18. ORACLE JOB无法自动执行
  19. Linux应用开发【第四章】Linux进程间通信应用开发
  20. 软件:文档下载神器之冰点文库下载器去广告纯净版

热门文章

  1. react全局状态管理_rxv: 在React中用Vue3的reactivity包实现状态管理。
  2. b+树时间复杂度_第15期:索引设计(索引组织方式 B+ 树)
  3. vue 离开页面事件_【必看】58 道 Vue 常见面试题集锦,涵盖入门到精通,自测 Vue 掌握程度...
  4. 算法设计与分析——动态规划——最大字段和问题
  5. Mysql@和@@符号的详细使用说明
  6. C++map容器-排序
  7. 后悔贪心+P2949 [USACO09OPEN]Work Scheduling G
  8. python面向对象语言_Python语言基础之——面向对象编程
  9. word List23
  10. 用信号量解决进程的同步与互斥