阿里国际社招 p6面试 (凉凉)ai面经总结

三、核心技术场景考察及候选人表现

(一)考察场景

高并发秒杀场景:1 万人同时抢购 100 个库存的商品,要求保证用户体验、系统稳定性与扩展性

(二)候选人方案及面试官质疑

  1. 候选人核心方案:前端先获取 token(通过 Lua 脚本实现锁机制),再凭 token 下单;后续考虑通过 MQ 异步处理、库存分片等方式优化
  2. 面试官核心质疑点

  • 超卖与少卖风险:Lua 脚本仅解决锁竞争问题,下单环节的复杂逻辑(风控等)可能导致下单失败,已分发 token 会造成少卖;锁机制无法完全避免超卖
  • 系统扩展性不足:面对 1000 万人抢 1 万个商品的场景,数据库难以承载高并发读写,token 机制与数据库扛压能力不匹配
  • 异步方案的用户体验问题:MQ 异步处理无法让用户实时知晓抢购结果,影响体验
  • 库存分片逻辑模糊:未明确分片规则(如 1 万个库存分 10 个片的具体逻辑)、分片后库存总量管理方案
  • 系统稳定性评估缺失:未提出具体的 QPS 承载能力评估方法,仅依赖询问其他系统团队,未体现架构师的风险预判能力
  • 优惠规则的并发处理:优惠场景存在多写多读需求,比库存问题更严峻,候选人未给出有效管控方案
  • 库存与实际仓储模型适配:不同仓库存分配需前置条件,候选人方案可能破坏底层模型设计

(三)候选人短板

  1. 高并发场景实战经验不足,方案缺乏落地性与完整性,未考虑复杂业务逻辑对核心流程的影响
  2. 系统架构设计的扩展性、稳定性思维欠缺,未建立全链路压测、风险评估的架构意识
  3. 对库存分片、分布式数据一致性等关键技术点的理解不深入,逻辑不够清晰
  4. 未兼顾技术方案与用户体验、底层业务模型的适配性

四、其他面试沟通内容

  1. 岗位相关信息:面试官所在领域为商品技术,核心特点是领域复杂度高(需支持各行业商品的统一模型设计)、并发量高,要求候选人具备高并发场景的认知与眼界
  2. 候选人离职原因:xxxxxxx

五、面试结论与评估

(一)整体评估

候选人具备基础的技术能力与业务认知,项目经历与岗位有一定匹配度,但在高并发场景的方案设计、系统架构的扩展性与稳定性把控、关键技术点的深度理解上存在明显短板,未达到 P6/P6 + 岗位对复杂场景架构设计能力的核心要求。

(二)核心判断依据

  1. 优势:基础架构设计经验、电商核心场景认知、项目落地能力
  2. 劣势:高并发方案设计不足、扩展性与稳定性思维欠缺、关键技术点理解不深入、缺乏风险评估意识
  3. 岗位匹配度:基本符合业务领域匹配要求,但核心技术能力(高并发处理)未达标

(三)后续建议

若考虑进一步沟通,可补充考察候选人对高并发技术方案的学习能力与改进思路;若严格按照岗位要求,候选人当前能力暂无法胜任 P6/P6 + 级别的架构设计相关工作。

全部评论
楼主现在又开始找工作了吗,前几年看到你的裁员贴子关注你的
点赞 回复 分享
发布于 02-13 17:08 广东
p6这个级别难度大些也正常
点赞 回复 分享
发布于 01-07 09:04 安徽
未达标吗 那有点遗憾了
点赞 回复 分享
发布于 01-05 11:17 北京
录音➕豆包ai总结的
点赞 回复 分享
发布于 01-04 22:10 广东

相关推荐

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的队列,目的是为了资源控制和线程管理。面试总结感觉难度:难。细节追着杀。感觉:这家大厂成员来自于阿里,细节追着杀,项目部分 架构/重难点还好给了二面,谢谢面试官,祝您永远不死。
点赞 评论 收藏
分享
评论
8
17
分享

创作者周榜

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