4.23 淘天 复活赛一面

#软件开发2024笔面经#
阿里妈妈事业部 1h13min

自我介绍
介绍一下你的项目
开始深挖项目,收益匪浅。
照片是怎么存储的
安全框架你是怎么设计的,角色与权限是怎么划分的
新注册的角色怎么分配权限
评论表怎么设计,怎么设计的评论的评论
分页查询是怎么是实现的,用了哪些sql语句
如果数据量很大查询效率会降低吗
有什么提高效率的想法吗
订单超时是怎么实现的
有没有提高效率的方法

开始八股
用过哪些集合(ArrayList、HashMap等)
并发框架是指什么(synchronized、锁什么的)
ArrayList是线程安全的吗(不是,源码中没用到synchronized什么的,但是有modcount)
ArrayList会抛出线程不安全的异常吗。(应该不会)看了源码,modcount记录着集合的修改次数,也就每次add或者remove它的值都会加1,使用迭代器遍历集合的时候同时修改集合元素会抛出异常。
并发框架了解哪些(synchronized、reentrantlock,可重入读写锁,countdown等基于AQS的记不清名字了)
synchronized和基于AQS的有什么区别。(一个基于虚拟机,一个基于代码api)
AQS底层具体怎么实现的(基于一个抽象的双向队列,将任务请求排列成队列,有一个变量state,当state大于1时,任务队列可以执行任务,否则将被阻塞)
线程池了解吗,对于阻塞队列你知道什么。(有基于arraylist的,基于linkedlist的,基于prioritylist的,可以设置阻塞队列的大小,如果不设置,默认,可能会出现outofmemory异常)
索引和事务了解吗,讲一下。(索引可以提高查询数据的效率,基于b+树实现,可以实现范围查询等等)
可以多个字段建立索引吗(可以,比如(a,b,c),但是只能先查a再查b再查c索引才有效,如果自查b,c就用不了索引)
就是最左匹配原则对吧,那如果是范围查询,比如a>m,能用索引吗。(不行,因为只有a相等的情况下b才是有序的,a不相等b不是有序的)

撕算法
力扣349简单题,两个数组求交集

面试官很温柔,声音很好听,会一步步引导你,答不出来会说没关系,那我换个问题,面试体验最好的一次。

4.26 已挂
全部评论
反问 分页查询数据量大效率会降低吗。(分页查询如果是从一百万条数据中查十条,它是先查一百万条,再取10条,效率是会降低的。解决方法是通过索引id,有序的来查询) 业务是什么,能学到什么东西。(广告投放相关) 什么时候有结果(3天吧)
点赞
送花
回复
分享
发布于 04-23 17:43 上海
我一面遇到的面试官也人贼好,很耐心,可是我又傻又菜,挂了,给机会不中用啊
点赞
送花
回复
分享
发布于 04-29 17:21 上海
滴滴
校招火热招聘中
官网直投

相关推荐

3 13 评论
分享
牛客网
牛客企业服务