大家好,我是老王,收到来自近期成功上岸的粉丝分享的阿里面试真题,分享给大家参考下,希望大家看完成功面试上大厂Offer。
01.薪资体系
新技术用到的也很多,也是很多人想要进入的大厂备选之一。
阿里的薪资结构,一般是12个月工资 + 1个月工资 = 13薪。
阿里标准薪资是14薪,但是通常能拿到 16-20薪。
年终奖看部门盈利情况,一般是 3个月。
阿里有2条职级体系,一条是P序列,代表技术;一条是M序列,代表管理。
P和M之间是有对应关系的。
02.面试真题
阿里一面
-
mysql索引结构?
-
redis持久化策略?
-
zookeeper节点类型说一下;
-
zookeeper选举机制?
-
zookeeper主节点故障,如何重新选举?
-
syn机制?
-
线程池的核心参数;
-
threadlocal的实现,原理,业务用来做什么?
-
spring di的原理;
-
四次挥手;
-
gcroot选择;
-
标记清除算法的过程,标记清楚算法如何给对象分配内存空间?
-
cms算法的缺点;
-
correnthashmap?
-
threadlocal原理?
-
hashmap;
-
Java数据类型,同步机制;
-
如果线上用户出现502错误你怎么排查?
-
并发量很大,服务器宕机。你会怎么做?
-
syn和lock的区别,哪个更好?怎么选择?
-
hashmap源码,为什么8个节点变成红黑树 又为什么到了6个节点才恢复为链表?
-
缓存穿透,怎么解决?
-
负载均衡算法,实现;
-
轮询和随机的缺点;
-
分布式服务治理;
-
dns迭代和递归的区别;
-
算法题:最长回文串;
-
为什么连接的时候是三次握手,关闭的时候却是四次握手?
阿里二面
-
询问项目经历;
-
hashmap理解。
-
redis分布式锁的理解?
-
如果redis作为分布式锁的时候,主节点挂掉了,但是数据还没有同步到从节点,这种情况怎么办?
-
mysql两种存储引擎的区别
-
如果由大量的增删操作,那么应该选择哪个存储引擎,为什么?
-
谈谈对面向对象的理解,谈谈对多态的理解。
-
tcp四次挥手过程?为什么等待2MSL。
-
拥塞控制的算法有哪几种?慢开始前期是指数型增长还是线性增长?
-
分库分表是以什么维度来划分的?划分的算法是怎样的,会不会出现数据分配不均衡的情况。
-
myisam和innodb支持锁的粒度是怎样的?
-
解决缓存击穿的方式有哪几种?
-
加锁的时候什么时候选择本地锁,什么时候选择分布式锁?
-
排序算法你知道那些?快速排序平均时间复杂度和最差时间复杂度。partition过程中最差情况是什么样的,描述一下。
-
一个屋子有100栈灯,序号分别是1-100,有打开或关闭两种状态,然后有100个人,序号分别是1-100,然后每个人都会进到屋子里面,且每个人都会把自己序号倍数的等执行一次操作(打开或关闭),问最终会有几盏灯打开?
阿里三面
-
询问项目经历。
-
分布式锁如何设计?
-
网络io模型。搜索引擎。
-
java的虚引用是什么用的?
-
设计一个登录态系统。如何保证密码加传输。如果你想服务器请求非对称加密的公钥时,请求被拦截篡改你怎么办?
-
数据库主从复制时如何做的?但是如果突然挂掉了,如何保证挂掉那段时间的数据?
-
一个电商系统,有id,商品名称字段,问你架构怎么设计,会涉及到模糊查询商品。
-
双写过程会有分布事务问题,如何解决。如果采用最终一致性的思想,那么并发请求来了好几个发现数据不一致怎么办?
-
订单号不能重复,你怎么设计生成订单号?
03.面试宝典
今年JAVA岗位竞争确实激烈,导致现在激烈竞争的原因不外乎三方面:
- 1、疫情三年,大厂裁员,导致市场上Java程序员增加。
- 2、高薪也意味着高门槛,技术需求越来越高;
- 3、高端缺人,目前技术强、牛的Java程序员供不应求;
虽然行业红利看似在消失,但这绝不是最坏的时代,只是回归理性和稳定,我们除了要判断趋势,还要看到本质。提高我们自身的竞争力。
最后送大家一个卷王级别面试宝典包含Java基础知识,JVM,Mysql,并发,Spring,Mybatis,Redis,RocketMQ,Kafka,Zookeeper,Netty,Dubbo,ElasticSearch,Flink,Spring Boot,Spring Cloud,高并发项目,大数据系列,数据结构与算法,设计模式,网络与操作系统等20个技术栈的大厂面试题及详解文档。
JVM篇
多线程篇
Spring篇
Redis篇
由于篇幅有限,这里只展示部分内容,所有的资料大家可以关注我公众号:老王说技术,回复ms自动领取哦,最后预祝大家上岸成功!