阿里国际一面(已挂)
电话面(50分钟)
第一场面试比较紧张;
感觉他不太想招人,一直在聊天,问我研究生的课题聊个得有20分钟
围绕项目问了一点,redis穿透、击穿怎么解决。秒杀会击穿嘛?
后来问我师兄他说秒杀业务是单独的逻辑,很少会涉及key过期这种情况
秒杀过程防止缓存击穿:1. 提前预热缓存数据,根据秒杀周期设置过期时间,所以一般会避免秒杀过程中出现过期的情况 2. 如果真的不存在,通过分布式锁,获得锁的线程去访问数据库,并将数据放入缓存中,然后逻辑过期
秒杀业务:
1. 不设置过期时间,提前预热缓存+秒杀结束下架(单独的逻辑代码) 2. 把缓存过期时间设置的比秒杀时间长,让它秒杀结束后自动清楚 都行。但是后者得考虑更多情况,比如秒杀时间延长怎么办等等,增加很多处理的逻辑。反正要从机制上保证秒杀期间不会出现自动过期,如果发生商品信息变化,手动推送(真实的业务场景比较复杂)
数据库有什么优化吗?有没有特殊处理?
最后算法:两个栈实现一个队列(描述算法流程)
第二天就挂了
第一场面试比较紧张;
感觉他不太想招人,一直在聊天,问我研究生的课题聊个得有20分钟
围绕项目问了一点,redis穿透、击穿怎么解决。秒杀会击穿嘛?
后来问我师兄他说秒杀业务是单独的逻辑,很少会涉及key过期这种情况
秒杀过程防止缓存击穿:1. 提前预热缓存数据,根据秒杀周期设置过期时间,所以一般会避免秒杀过程中出现过期的情况 2. 如果真的不存在,通过分布式锁,获得锁的线程去访问数据库,并将数据放入缓存中,然后逻辑过期
秒杀业务:
1. 不设置过期时间,提前预热缓存+秒杀结束下架(单独的逻辑代码) 2. 把缓存过期时间设置的比秒杀时间长,让它秒杀结束后自动清楚 都行。但是后者得考虑更多情况,比如秒杀时间延长怎么办等等,增加很多处理的逻辑。反正要从机制上保证秒杀期间不会出现自动过期,如果发生商品信息变化,手动推送(真实的业务场景比较复杂)
数据库有什么优化吗?有没有特殊处理?
最后算法:两个栈实现一个队列(描述算法流程)
第二天就挂了
全部评论
阿里国际纯在恶心人,4月的时候二面一个半小时,第二天挂,今天又一次二面40min,秒挂。kpi面试官***
兄弟开发岗嘛
什么部门哇
阿里国际哪个部门呀
佬,这个也是谷粒商城吗
佬,用的是什么项目呀
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享