阿里云五轮面试面经(已oc)

一面 1.5h
手撕最长回文子串
场景题 设计数据库系统,聊了很久的数据库
无八股

二面 0.5h
偏hr面 项目负责,细节,对chatgpt看法,性格,骄傲的事等

三面 0.5h
纯八股 tcp相关 jvm相关 无任何场景衍生,纯八股

四面 1h
排序算法相关 归并 快排 堆的底层原理实现方法
操作系统文件读取  分布式设计
手撕lru
数据库设计 事务 死锁 

五面 0.5h 技术hr交叉面
死锁设计 数据库设计 
问简历上项目技术如何实现
研究生期间从事的研究是否有落地实现项目
一个乱序数组,不排序,怎么分成不确定数量的和相同的子数组,说想法
为什么想干这个行业
反问

全部评论
请问lz,hr面的那个乱序数组的题答案是什么呀
3 回复 分享
发布于 2023-05-17 22:44 上海
楼主这是实习吗 怎么这么多轮面试
2 回复 分享
发布于 2023-05-16 20:48 上海
聊了很久的数据库,感觉这个岗位对数据库要求很高,楼主什么岗位
1 回复 分享
发布于 2023-05-15 14:54 重庆
建议在面试前多了解公司业务场景,有后续了吗
点赞 回复 分享
发布于 2023-05-15 14:30 福建

相关推荐

1.自我介绍回答:个人感觉正常,个人优势在于 专研技术的同时 深耕业务,看了很多技术博客书籍 JAVA并发编程、深入浅出SSD2.让我挑一个重点项目说回答:我说的定时任务 介绍了重点1.数据分片(时间+桶二维)+冷热数据3.为啥不用时间伦算法回答:时间轮优势在于层级存储,问题是要实现数据分片,且分布式架构不好实现,我们自研框架优势在于 架构清楚,利于维护与定制化二次开发4.为啥不用xxl-job回答:xxl-job与业务代码耦合,上手需要时间,不利于组内维护,且不利于定制化开发5.介绍业务流程华为计算存储部门,主要负责服务器相关产品的硬件软件配套,由此我们需要清洗、测试大量的硬盘、内存数据。6.问我如何使用 异步调度任务框架需要别人接入我们的框架,创建好三张表(任务信息表、配置表、位置表),部署调度服务器,执行层服务器异步任务框架(============================================)7.问:我们架构,介绍下流程分为三层:调度层、执行层、治理层。 业务访通过调度层创建任务表,然后我们的执行层会抢占分布式锁,调用调度层占据一批任务然后执行追问:分布式锁锁的啥答:任务类型追问:一个任务类型一张表吗,不同的任务在不同的表答:是的8.追问:如何分表答:阿里规范、b+树 3层io9.如何做的慢sql优化答:写查询接口的时候有一个order by 优先级,粗心了,导致filesort,加了索引,索引覆盖10.如何做的优化压测发现qps上不去,以及连接池报超时异常,最大链接数刚开始默认8,后面优化5011.压测细节(感觉这里寄了)用的wrk 50个线程 200个并发 持续30s 观测到 qps 几百最大链接数刚开始默认8,后面优化50,使得qps 上升到2000+(语气感觉有点质疑)12.治理层干嘛清理执行超时任务+分表13.如何分表大小分表+滚表14.为啥不用大表mysql读写慢15.框架部署在别人的服务器上面,分表属于mdl操作,业务方会同意吗(致命问题)????当初遇到了这个问题,但是表太大 mysql读写造成影响,评审会和架构师一起让业务方妥协的,我们不删除表,只做新增16.问:清洗数据怎么来的?答:调用别人接口问:为啥不一把拿过来答:调用数据有限制。旧系统数据不准确,所以有了我们这个框架。定时任务框架(============================================)16.问我们架构分为三层:迁移层、触发层、执行层17.问我瓶颈在哪里答:任务创建18. 业务流程业务方创建定时器,激活定时器,迁移模块会自动生成2h热数据。同时每小时生成新的数据。18.假如有几百个业务方,如何定制化开发回调接口(记忆模糊,记不清指调度任务框架还是定时任务)?我们不会同意这种要求,责任覆盖面积太大,架构师和leader不会同意。推送系统:18.部署在哪里我们自己服务器19.那你们属于底层基础设施,也部署自己的消息推送系统吗?(感觉像质疑)是的(那必须)20.高优先、低优先如何理解高优先重大事故、低优一二级事故21.是通过topic还是partionpartion22.如何保证消息不丢失消息多副本机制,通过设置ack为all,等所有的消息都同步了以后,才应答生产者八股:23.nacos 是cp还是apap后被质疑(后面承认忘记了)24.如何实现服务发现和注册答:nacos注册中心会定期向实力发送心跳检测,超过一定时间,踢出。追问:消息发现呢答:忘记了25.synchized 和 reentranlock 区别reentranlock可以看作s锁的继承以及拓展,优势在于 公平锁、多条件、缺点:手动 try finally unlock26.线程池参数及线程创建过程1.最大连接数 2.核心链接数 3.排队队列 4.线程工厂 5.拒绝策略创建过程:核心未满先创建,满了放队列,队列满了创建最大连接数,超过最大,拒绝27.项目用的啥redis结构zset zrangebyscore score=定时时间戳28.追问 分布式锁原理啥setnx + lua lua保证解锁原子性29.redis哪些数据结构string、set、zset、hash(list忘了 我傻逼了)30.zset底层少数据ziplist 多数据跳表+hashtable31.redis culster了解吗哨兵模式,分leader 和从节点,从节点监听leader,leader死掉,推选 同步进度最高的节点为leader。完成了故障转移culster是如何实现分片的呢用的是 hash算法 crc16(数据)%1638432.算法题 *****************************************************简单的拿下 1.思路 找到断开的位置然后拼接两部分用时:20-30min 网吧硬盘太垃圾了 不好敲33.对面试官有啥问的我问:了解了公司是做b2b业务的,业务的瓶颈在哪里面试官:说在保证 国外接口调用不出问题我:参照这个场景我们就可以用 长连接+websocket+消息队列 解决调用问题我问:if进去了,核心挑战是啥面试官:保证事务一致,安全性要求很高,涉及转账,对代码要求很高34.aps原理是啥?(说到fifo的队列 面试官质疑了我一下)aps是线程同步框架,reentranlock的底层原理,核心原理是voliet的statue和fifo的队列,目的是为了资源控制和线程管理。面试总结感觉难度:难。细节追着杀。感觉:这家大厂成员来自于阿里,细节追着杀,项目部分 架构/重难点还好给了二面,谢谢面试官,祝您永远不死。
点赞 评论 收藏
分享
评论
10
38
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务