JAVA后端架构java后端面试宝典

阿里钉钉、ICBU、CBU、蚂蚁、国际化中台Java后台面经

2021-03-27  本文已影响0人  AI乔治

阿里提前批面了很多部门,除了淘系一面其他都过了,最终点了国际化中台的内推,在焦急等hr面中,分享面经,希望能帮到大家,都能拿到满意的offer~

3.3阿里CBU一面

项目30分钟(流程+项目难点+部署)

JVM类加载过程

主要类加载器有什么

双亲委派模型的好处

双亲委派模型怎么打破

什么软件/应用打破了双亲委派模型

常用设计模式介绍(代理模式、包装模式、工厂模式、适配器模式、责任链模式......)

包装模式在JDK中哪里应用了、责任链模式在哪里应用

工厂模式在Spring源码中哪里有应用

多线程在项目中的应用

定义线程池的方法

Callable和Runnable的区别

FutureTask介绍

BeanFactory和ApplicationContext区别

Bean的生命周期

Java中实现Map接口的有什么

遍历HashMap的几种方法

Java8中JVM运行时数据结构变化是什么(元空间取代了方法区)

为什么用元空间取代方法区

业界大数据新技术,比如Hadoop了解吗?

Java中的包装类有什么用(Integer Long Double),为什么需要包装类

TCP的粘包?粘包怎么解决?UDP会粘包吗?

TCP面向什么传输,UDP面向什么传输?

RPC了解吗?

线程的声明周期?

迪杰斯特拉最短路径算法?

选择排序是稳定的吗,时间复杂度?

快排稳定吗,时间复杂度,什么时候性能最差?

MYSQL的索引为什么使用B+树的数据结构?

前端Vue.js Ant Design了解吗?

Servlet是线程安全的吗?为什么线程不安全?

Linux的命令了解吗,Top命令是什么?

实验室项目有人指导吗?

Redis怎么实现分布式锁

介绍Redis的缓存穿透和缓存雪崩

怎么解决缓存穿透和缓存雪崩

类加载里面Class类和Object类的加载顺序

3.4蚂蚁金融核心一面

项目25分钟

热点数据怎么处理

分布式事务

JVM运行时数据结构介绍

os的程序计数器和线程的程序计数器有什么区别

垃圾收集器CMS介绍

标记-整理 的整理阶段会STW吗

MYSQL数据库聚簇索引 非聚簇索引

索引覆盖

UUID作为主键对于索引写的影响

DB和缓存一致性怎么保持(双写一致)

分布式数据库,怎么保证转账一致性

3.4阿里ICBU一面

项目中Redis的应用

介绍Redis基本数据类型及应用场景

介绍Sping框架IOC和AOP

介绍redis缓存雪崩及解决方案

介绍MyBatis框架(dao接口没有实现类、xml解析过程、延迟加载)

代码题:求给定字符串的最长不重复子串

代码题:给定String数组,求能拼接成的最大的数,以String类型返回

3.4阿里ICBU二面

项目难点

Map类型及介绍(HahMap、Hashtable、CurrentHashMap、LinkedHashMap)

HashMap线程不安全,环形链,CPU占用率过高

CPU占用率过高怎么排查

常见索引类型(唯一性索引、普通索引、联合索引)

索引覆盖

普通索引原理是什么,不同创建方式得到的普通索引的区别

Redis特性介绍(基于内存、过期键删除策略、持久化、数据结构多样、事务、主从架构)

Spring的AOP介绍(切面编程、动态代理)

研究生课题、毕设选什么课题

分布式相关了解什么

自己的缺点是什么

3.4阿里钉钉一面

os死锁产生的条件、怎么避免死锁

乐观锁和悲观锁怎么理解

Java锁有什么(Synchronized、ReentrantLock、ReentrantReadWriteLock、AQS)

Integer a= 300,Int b=300;问a==b是true还是false?

Integer a= 300,Integer b=300;问a==b是true还是false?

Integer a=3,Integer b = 3;问a==b是true还是false?

二叉树是什么

二叉搜索树是什么

二叉搜索树插入过程

HashMap介绍

解决hash冲突为什么使用红黑树不适用二叉树

一个长度小于1000的数组,怎么取出最大的十个数(堆排序、快排、各自的时间复杂度)

分布式事务了解吗(CAP、BASE)

数据库事务是什么(ACID)

分布式并发控制(分布式锁)

Redis怎么实现分布式锁

Redis除了LUA还能怎么实现分布式锁(RedLock?)

堆和栈区别

堆怎么分区,什么时候进行Full GC

滑动窗口介绍

面试官提问:你觉得我还有什么地方没问到,但是是你掌握的比较好的?

建议多刷算法、数据结构

3.5阿里淘系聚石塔一面(挂)

项目

数据库和Redis数据一致性

程序服务器宕机怎么保持一致(binlog),这种情况下还会有什么问题

AOP讲解,原理

SpringMVC的好处和缺点

线程池开线程标准

NIO和BIO区别,NIO一定比BIO好吗?为什么

多核和多CPU有什么区别

git底层原理、IDEA快捷键

二叉树遍历方式(递归、非递归的两种形式)

常用设计模式(单例、动态代理)

单例模式有什么好处

你在代码中应用静态类、单例模式的场景

OOM产生的情形

怎么避免OOM

线程上下文切换、保存现场是什么、保存的位置

JMM内容

代码:字符串和城市匹配

代码:100G字符串(数字)文件存在磁盘,在4G的内存中,排序

你觉得自己的优点、长处(这时候我已经崩溃了,这期间问了很多很多底层的东西,我都不会,我想转产品)

3.8 阿里国际化中台一面

自我介绍

项目

本科课程,你觉得你最感兴趣的,学的最好的课程

计算机网络五层模型介绍

TCP三次握手

一个url从浏览器输入到响应的全过程

servlet结合spring讲述

spring事务实现原理

spring AOP原理扩展

JDBC连接数据库执行sql过程

项目中的数据结构介绍

树(二叉树、完全二叉树、满二叉树、红黑树、b树、b+树)、链表、栈、队列

竞赛论文情况

项目中的难点亮点是什么

除了redis还了解其他的缓存吗

JVM系统介绍(运行时数据结构、垃圾回收过程、判定对象死亡)

3.8阿里国际化中台二面

自我介绍

本科课程掌握比较好的课程

计算机网络五层模型、TCP三次握手

实际动手实现过网络协议吗

HTTPS实现原理,加密算法

socket编程

socket通信过程

用过什么数据结构解决什么问题

concurrentHashMap原理

CAS和synchronized的区别

synchronized锁的区别

HashMap介绍

红黑树、b树、b+树介绍及应用场景

算法:动态规划、递归、贪心算法、迪杰斯特拉算法、贪心算法

1000000个整型数字怎么排序获得topk(k大小的小根堆),时间复杂度和空间复杂度是什么

字符串匹配算法KMP

LRU怎么实现

spring介绍 IOC AOP

springMVC执行过程

shiro框架介绍

自定义注解知道吗,注解原理

cpu占用率过高可能的原因

JAVA IO编程

竞赛情况

3.9 阿里国际化中台三面

学习新知识的过程

spring学习总结(详细讲述Spring和IOC的学习过程)

Spring Bean生命周期

Spring Bean生命周期,你在实际中有什么应用

Redis在项目中的应用

AOP介绍以及在你项目中某个具体功能的实现(讲解事务源码、原理、应用)

设计模式了解什么,在项目中的实际应用

项目难点介绍

财务业务梳理+事务实现+功能抽象

竞赛情况

机器学习了解吗

你觉得自己人生中很受挫的事情是什么?

英语问答:

1.英文自我介绍

2.英文介绍三年的职业规划

3.18阿里国际化中台笔试

有10亿个数据,数据为整数,取值范围为[1 - 10000],请对这10亿个数据进行排序。

设计一个拼手气红包算法。给定红包总金额和红包的个数,输出每个红包的金额。 要求:1). 每个红包金额随机 2). 每个红包的金额数不小于1 3). 每个红包的金额数不超过总金额的30% 例如红包总金额100,人数10,输出【19 20 15 1 25 14 2 2 1 1】

关注小编-【AI乔治】了解更多Java进阶架构知识。

上一篇下一篇

猜你喜欢

热点阅读