阿里Java高级岗中间件二面:GC+IO+JVM+多线程+Redis+数据库+源码

简介: 一转眼,都2023年了,你是否在满意的公司?拿着理想的薪水? 虽然“钱多、事少、离家近”的工作可能离技术人比较远,但是找到一份合适的工作,其实并不像想象中那么难。但是,有些技术人确实是认真努力工作,但在面试时表现出的能力水平却不足以通过面试,或拿到高薪,其实不外乎以下 2 个原因: 第一,“知其然不知其所以然”。做了多年技术,开发了很多业务应用,但似乎并未思考过种种技术选择背后的逻辑。所以,他无法向面试官展现出自己未来技术能力的成长潜力。面试官也不会放心把具有一定深度的任务交给他。 第二,知识碎片化,不成系统。在面试中,面试者似乎无法完整、清晰地描述自己所开发的系统,或者使用的相关技术。
+关注继续查看

一转眼,都2020年了,你是否在满意的公司?拿着理想的薪水?

虽然“钱多、事少、离家近”的工作可能离技术人比较远,但是找到一份合适的工作,其实并不像想象中那么难。但是,有些技术人确实是认真努力工作,但在面试时表现出的能力水平却不足以通过面试,或拿到高薪,其实不外乎以下 2 个原因:

第一,“知其然不知其所以然”。做了多年技术,开发了很多业务应用,但似乎并未思考过种种技术选择背后的逻辑。所以,他无法向面试官展现出自己未来技术能力的成长潜力。面试官也不会放心把具有一定深度的任务交给他。

第二,知识碎片化,不成系统。在面试中,面试者似乎无法完整、清晰地描述自己所开发的系统,或者使用的相关技术。所以,会让面试官怀疑他是否具备高效解决复杂问题、设计复杂系统的能力。

image

不少人准备技术面试,都会借助网上大量的“Java 面试笔试题”,今天小编也准备了一套阿里大佬整理的面试题,小伙伴可以试试,文末见详情!

阿里JAVA一面

1.volatile有什么用?

2.Minor GC和Full GC的触发时机

3.反射用到了哪些接口,哪些类?

4.反射机制中可以获取private成员的值吗?

5.Java中sleep方法和wait方法的区别

6.Java中有哪些注解?在SpringMVC中,requestmapping是自定义注

解,问:如何实现自定义注解?

阿里JAVA二面

1.线程池,threadpool有哪些重要的参数?

2.http协议头有哪些字段?

3.oracle如何实现分页(手写)

4.SpringMVC在处理前端页面请求时,各模块是如何工作的?

5.数据库索引有什么作用?带来的问题是什么?

6.以前有没有用过Java枚举

Java程序员项目介绍注意点

问及项目经验的时候,考察的并不是技术,而是你的项目概述能力。可按照下面的步骤进行:

1.从一个项目的生命周期为基准线展开讲,这样介绍更有层次感。接下来要将你在项目中的比重,你负责主要点有哪些。

2.在项目概述之后,就要讨论每个项目过程中遇到的困难部分,因为大部分项目都会遇到这个问题,所以尽量真实地描述你是如何解决问题的,这也将体现你解决问题的思想。

3.有礼貌的询问面试官对于项目还有哪些疑问或者不清楚的地方。

阿里巴巴Java高级岗必问面试题总结

一、Java多线程相关

  • 线程池的原理,为什么要创建线程池?创建线程池的方式;
  • 线程的生命周期,什么时候会出现僵死进程;
  • 说说线程安全问题,什么实现线程安全,如何实现线程安全;
  • 创建线程池有哪几个核心参数? 如何合理配置线程池的大小?
  • volatile、ThreadLocal的使用场景和原理;
  • ThreadLocal什么时候会出现OOM的情况?为什么?
  • synchronized、volatile区别、synchronized锁粒度、模拟死锁场景、原子性与可见性;

二、JVM相关

  • JVM内存模型,GC机制和原理;
  • GC分哪两种,Minor GC 和Full GC有什么区别?什么时候会触发Full GC?分别采用什么算法?
  • JVM里的有几种classloader,为什么会有多种?
  • 什么是双亲委派机制?介绍一些运作过程,双亲委派模型的好处;
  • 什么情况下我们需要破坏双亲委派模型;
  • 常见的JVM调优方法有哪些?可以具体到调整哪个参数,调成什么值?
  • JVM虚拟机内存划分、类加载器、垃圾收集算法、垃圾收集器、class文件结构是如何解析的;

三、Java高级部分

  • 红黑树的实现原理和应用场景;
  • NIO是什么?适用于何种场景?
  • Java9比Java8改进了什么;
  • HashMap内部的数据结构是什么?底层是怎么实现的?(还可能会延伸考察ConcurrentHashMap与HashMap、HashTable等,考察对技术细节的深入了解程度);
  • 说说反射的用途及实现,反射是不是很慢,我们在项目中是否要避免使用反射;
  • 说说自定义注解的场景及实现;
  • List 和 Map 区别,Arraylist 与 LinkedList 区别,ArrayList 与 Vector 区别;

四、Spring相关

  • Spring AOP的实现原理和场景?
  • Spring bean的作用域和生命周期;
  • Spring Boot比Spring做了哪些改进? Spring 5比Spring4做了哪些改进;
  • 如何自定义一个Spring Boot Starter?
  • Spring IOC是什么?优点是什么?
  • SpringMVC、动态代理、反射、AOP原理、事务隔离级别;

五、中间件篇

  • Dubbo完整的一次调用链路介绍;
  • Dubbo支持几种负载均衡策略?
  • Dubbo Provider服务提供者要控制执行并发请求上限,具体怎么做?
  • Dubbo启动的时候支持几种配置方式?
  • 了解几种消息中间件产品?各产品的优缺点介绍;
  • 消息中间件如何保证消息的一致性和如何进行消息的重试机制?
  • Spring Cloud熔断机制介绍;
  • Spring Cloud对比下Dubbo,什么场景下该使用Spring Cloud?

六、数据库篇

  • 锁机制介绍:行锁、表锁、排他锁、共享锁;
  • 乐观锁的业务场景及实现方式;
  • 事务介绍,分布式事物的理解,常见的解决方案有哪些,什么事两阶段提交、三阶段提交;
  • MySQL记录binlog的方式主要包括三种模式?每种模式的优缺点是什么?
  • MySQL锁,悲观锁、乐观锁、排它锁、共享锁、表级锁、行级锁;
  • 分布式事务的原理2阶段提交,同步\异步\阻塞\非阻塞;
  • 数据库事务隔离级别,MySQL默认的隔离级别、Spring如何实现事务、JDBC如何实现事务、嵌套事务实现、分布式事务实现;
  • SQL的整个解析、执行过程原理、SQL行转列;

七、Redis

  • Redis为什么这么快?redis采用多线程会有哪些问题?
  • Redis支持哪几种数据结构;
  • Redis跳跃表的问题;
  • Redis单进程单线程的Redis如何能够高并发?
  • Redis如何使用Redis实现分布式锁?
  • Redis分布式锁操作的原子性,Redis内部是如何实现的?

八、其他

看过哪些源代码?然后会根据你说的源码问一些细节的问题?(这里主要考察面试者是否对技术有钻研的精神,还是只停留在表面,还是背了几道面经,这个对于很多有强迫症的面试官,如果你连源码都没看过,基本上是会pass掉的!)

为了让你们去网上找资料麻烦,这里总结一份阿里内部面试大全分享

大厂面试资料整理不易、对这份面试答案感兴趣的工程师朋友们可以点击此处来获取就可以了!

1、阿里内部手册、Java核心知识点

image

2,大厂面试答案

image

image

image

大厂面试资料整理不易、对这份面试答案感兴趣的工程师朋友们可以点击此处来获取就可以了!

image

image

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2天前
|
NoSQL Java 关系型数据库
5. 在Java中操作Redis 【重点】
5. 在Java中操作Redis 【重点】
39 0
|
5天前
|
存储 缓存 NoSQL
Java开发面试--Redis专区(二)
Java开发面试--Redis专区
28 0
|
5天前
|
存储 缓存 NoSQL
Java开发面试--Redis专区(一)
Java开发面试--Redis专区
24 0
|
6天前
|
缓存 NoSQL Java
Java实现redis缓存效果变量过期
Java实现redis缓存效果变量过期
20 0
|
15天前
|
缓存 NoSQL Java
阿里Java三面凉凉:微服务,Redis,JVM一个都搞不懂
前言: 金九银十刚刚过去了,不知道很多小伙伴都拿到自己心仪的offer没有,我这边也收到了一个粉丝投来的消息,说看到阿里的面试真题之后人都是懵的,发现自己一窍不通,下面给大家分享我这个粉丝的经历,以及我在这方面学习的经验。 阿里微服务面试真题 1.单片,SOA 和微服务架构有什么区别? 单片 SOA 和微服务之间的比较 – 微服务访谈问题 单片架构类似于大容器,其中应用程序的所有软件组件组装在一起并紧密封装。 一个面向服务的架构是一种相互通信服务的集合。通信可以涉及简单的数据传递,也可以涉及两个或多个协调某些活动的服务。 微服务架构是一种架构风格,它将应用程序构建为以业务域为模型
26 0
|
29天前
|
NoSQL Java Redis
阿里Java高级岗中间件二面:GC+IO+JVM+多线程+Redis+数据库+源码
虽然“钱多、事少、离家近”的工作可能离技术人比较远,但是找到一份合适的工作,其实并不像想象中那么难。但是,有些技术人确实是认真努力工作,但在面试时表现出的能力水平却不足以通过面试,或拿到高薪,其实不外乎以下 2 个原因:
|
1月前
|
存储 NoSQL Java
蚂蚁金服Java研发岗二面:redis 常见数据结构以及使用场景分析
redis简单来说 就是一个数据库,不过与传统数据库不同的是 redis 的数据是存在内存中的,所以存写速度非常快,因此 redis 被广泛应用于缓存方向。另外,redis 也经常用来做分布式锁。redis 提供了多种数据类型来支持不同的业务场景。除此之外,redis 支持事务 、持久化、LUA脚本、LRU驱动事件、多种集群方案。所以在面试中我们经常可以看到redis的身影,今天给大家带来一道redis的面试真题以及解析,后面会给大家分享今年来redis常考试的一些真题。
43 0
|
1月前
|
存储 缓存 NoSQL
腾讯java研发岗二面:如何保证 redis 的高并发和高可用?
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
|
1月前
|
缓存 NoSQL Java
阿里Java三面凉凉:微服务,Redis,JVM一个都搞不懂
金九银十马上开始了,不知道小伙伴有没有信心拿到自己心仪的offer,我这边也收到了一个粉丝投来的消息,说看到阿里的面试真题之后人都是懵的,发现自己一窍不通,下面给大家分享我这个粉丝的经历,以及我在这方面学习的经验。
29 0
阿里Java三面凉凉:微服务,Redis,JVM一个都搞不懂
|
1月前
|
NoSQL Dubbo Java
余额宝团队(Java技术1-4面题目):Hash+二叉树+Redis+线上调优+G1
余额宝一面 1. JVM 内存分哪几个区,每个区的作用是什么?JVM有哪些回收算法,对应的收集器有哪些? 2. GC 的两种判定方法 ?CMS 收集器与 G1 收集器的特点。 3. hashmap源码问题 4. HashMap、HashMap如何保证线程安全、ConcurrentHashMap 5. HashMap底层结构 put操作讲一下 6. GC 的两种判定方法 ?CMS 收集器与 G1 收集器的特点。 7. java线程同步都有哪几种方式,在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别? 8. cas的原理,变量要用哪个关键字修饰,volati
相关产品
性能测试
容器服务Kubernetes版
容器镜像服务
推荐文章
更多