快手一面实习面经
内容
全程追问拷打项目…
介绍项目中的表字段设计方式。 查询量很大的时候,怎么办?分库分表怎么分呢? 你的熔断和降级是怎么做的?(Sentinel) 你是如何测接口的性能的,测试了哪些接口,怎么看判断性能变化?(压测工具等,看 QPS,RT,慢调用等指标) 你认为你的项目里面的性能瓶颈在哪里 限流算法有什么?令牌桶知道吗?(大概描述了一些) 如何动态的进行限流呢?(没答上) 布隆过滤器的实现原理,以及它为什么有概率失效,如何解决失效(哈希冲突,增大位图或者哈希函数设计) 场景题:
快手热门主播实时排行榜的实现。
主播大流量的情况怎么做?(防止缓存穿透?但是面试官说说考察限流措施
手撕代码:
最长回文子串
感受:
第一个大厂的面试,但是回答的不太好,面到快结束基本是想逃的程度…
一面竟然无八股,面试官很专业,问题比较灵活,有很多结合实际场景的考察。
面经解答(提示词+回答)
高并发场景下的数据库扩展策略
请详细说明:当系统查询量非常大时,如何通过分库分表来提升数据库性能?包括分库分表的常见策略(如按用户 ID 哈希、按时间范围等)、如何选择分片键、可能遇到的问题(如跨分片查询、分布式事务)以及对应的解决方案。最好结合电商或社交类业务场景举例说明。
基于 Sentinel 的熔断与降级机制
请解释在微服务架构中,如何使用 Alibaba Sentinel 实现熔断和降级?包括熔断的触发条件(如慢调用比例、异常比例)、降级策略(如返回默认值、fallback 方法)、配置方式(注解或规则 API),以及实际项目中如何设计合理的降级逻辑以保障核心链路可用性。
接口性能测试方法与指标分析
请系统介绍如何对后端接口进行性能测试?包括常用的压测工具(如 JMeter、wrk、Gatling)、测试流程(准备数据、设置并发、监控指标)、关键性能指标(QPS、RT、错误率、慢调用比例)的含义与阈值判断标准,以及如何通过对比压测结果分析性能优化前后的变化。
限流算法原理与令牌桶详解
请对比介绍常见的限流算法(如计数器、滑动窗口、漏桶、令牌桶),重点解释令牌桶算法的工作原理、优势(支持突发流量)、实现方式(单机 vs 分布式),并说明在 Java 或 Go 中如何用代码实现一个简单的令牌桶限流器。
后话
根据评论区猜测作者所做的项目可能是黑马商城 下面是相关的链接:
来源
作者:拼个 offer 可以吗 链接:https://www.nowcoder.com/discuss/734381625185693696?sourceSSR=users 来源:牛客网