蚂蚁金服面经:

一面技术面,过。

紧接着发了机式链接

机式题两道算法,在leetcode简单难度的题的基础上提出了一些新要求。接近中等难度。不会写,寄!

1.数据库

mysql索引结构

B+树,B树的区别

为什么同等数据量下,B+树的高度更低?树的高度低的好处?

b树子节点是链表?双向链表?这里用链表的作用?

sql如何优化

abc三个字段建立联合索引,用到a,c,怎么写sql把b也用上(这里不能重建索引;如果建立索引用什么命令)

哪些情况适合做索引

表里有百万级数据,查第100万条到110万条数据,怎么优化sql(和索引无关)

四个隔离级别,每个级别的事务问题

DB事务的原理(我只提到了undolog,和事务point,不太了解)

2.redis

雪崩、穿透、击穿

IO多路复用原理

3.hashmap

为什么要引入红黑树

哈希碰撞

4.springboot

springboot启动类注解,每个注解的作用

springboot原理

所有spring.factories里面的所有配置都会加载吗

5.spring

spring怎么解决的循环依赖问题(虽然是高频面试题,但我还是第一次被问到这个)

三级缓存的作用

BeanFactory、FactoryBean的去区别;FactoryBean的作用(第一次被问这个问题,没准备 QAQ)

6.锁

java锁了解吗

synchronized和lock的区别 重量级/轻量级

锁的原理(我直接说AQS,奈何太菜,AQS的细节没有battle过面试官,应该先说CAS再说AQS)

synchronized的原理是AQS吗

分布式锁可以用什么实现?(数据库/ZOOKEEPER/Redis/Redisson)

Redission实现分布式锁的原理(只说到了setnex)

锁续期怎么实现(看门狗机制)

锁重入(/(ㄒoㄒ)/~~,实现细节忘了)

7.项目亮点(10分钟)

一个亮点说的不到10分钟,会问有没有其他亮点

总结:一面整体不难,问题涉及项目和技术栈。

覆盖面还是比较广的

技术问题会从八股文开始问,但是由浅入深。比如索引的问题,从mysql的索引结构是什么问到叶子节点的数据结构的作用。

需要继续打磨项目亮点

索引和锁是技术重点,值得投入更多时间研究,尤其是CAS和AQS,如果和面试官把AQS聊好了,面试官应该会刮目相看

算法一如既往的烂,继续坚持刷算法喽

全部评论
约二面了吗
点赞 回复 分享
发布于 2023-07-23 16:30 上海
楼主请问一下这个怎么答啊 abc三个字段建立联合索引,用到a,c,怎么写sql把b也用上(这里不能重建索引;如果建立索引用什么命令)
点赞 回复 分享
发布于 2023-07-12 17:24 广东
社招吗?
点赞 回复 分享
发布于 2023-07-12 16:25 广东

相关推荐

03-19 10:07
已编辑
广东药科大学 golang
Yki_:你倒是进一个面啊
点赞 评论 收藏
分享
小厂面经,也是我的处女面(30min)1.自我介绍2.spring boot的自动装配原理(好多类和接口的单词都忘了全称是啥了,就说了记得的单词,流程应该说对了吧)3.有用过redis吗?主要是用在实现什么功能(说了技术派用redis的zset来实现排行榜)5.有了解过Redisson吗?讲一下对于分布式锁的了解以及在什么场景下应用(说了秒杀场景)6.对mysql有了解吗?包括它的索引优化和创建(把想起来的全说了)7.了解设计模式吗?比如单例模式,为什么要使用单例模式,它的优点是什么(昨天刚看的设计模式)8.工厂模式有了解吗?主要的使用场景是?(也是昨天刚看的)9.场景题:有7个服务器,需要在早上十点定时的向数据库中的用户表中的用户发短信,如果做到发送的消息不重复,且如果发送失败了需要知道是到哪个用户失败了,这样下次就直接从这个用户开始(我答了用spring task来实现定时,用分布式锁来保证只有一份服务器可以发送消息,用消息队列来存储消息,然后用消息确认机制来保证错误信息的记录,以及在数据库或者业务层面完成消息消费的幂等性)10.场景题:如果在系统启动的时间就将数据库的所有用户相关的信息都读到一个hashmap中(这个没啥思路,没答好)27届的投了一个星期终于有一个面试了,大部分公司都只招26的
inari233:已oc,拒了
查看9道真题和解析
点赞 评论 收藏
分享
评论
4
52
分享

创作者周榜

更多
牛客网
牛客企业服务