如何估算一个网关或服务需要支撑的长连接数量及其内存开销?
围绕“如何估算一个网关或服务需要支撑的长连接数量及其内存开销”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出每连接内存占用与连接数相乘的估算方法和单机上限判断。
系统设计面试题第 1 页,显示第 1–50 题,共找到 86 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
围绕“如何估算一个网关或服务需要支撑的长连接数量及其内存开销”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出每连接内存占用与连接数相乘的估算方法和单机上限判断。
围绕“如何根据目标吞吐量估算 Kafka 主题的分区数”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须用单分区生产/消费吞吐除以目标吞吐得出分区下限,并说明分区过多对 broker 元数据和重平衡的代价。
围绕“系统设计面试中如何做容量估算:从日活推导 QPS、存储和带宽”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出从用户数到峰值 QPS、存储量、带宽的估算步骤和数量级判断。
围绕“写密集和读密集系统做容量估算时的核心差异是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明两类负载在存储增长、索引开销、副本写放大上的估算差异。
围绕“熔断触发后的降级返回值(fallback)应该如何设计,哪些场景不适合给默认值”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分可用兜底数据(缓存、静态值)和必须失败(支付、写操作)的场景。
围绕“熔断器的闭合、打开、半开三种状态如何流转,各状态对流量的处理方式是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清状态触发条件(错误率、慢调用比例、冷却时间)和半开试探逻辑。
围绕“线程池隔离和信号量隔离两种熔断隔离方式的开销和适用场景是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较上下文切换开销、超时脱离能力、适用调用频率,并给出选型判断。
围绕“熔断和重试为什么必须配合超时一起设计,盲目重试会造成什么后果”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明无超时重试导致的重试风暴和线程池耗尽,以及熔断对重试的抑制作用。
围绕“用功能开关(feature toggle)做手动降级时,开关系统本身需要满足哪些可靠性要求”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确开关下发通道的高可用、灰度生效、默认安全态(fail-safe)要求。
围绕“服务降级预案应该如何分级,大促场景下按什么顺序降级非核心功能”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出按业务优先级排序的降级层级和开关化预案思路。
围绕“读路径降级和写路径降级的难度为什么不同,写路径有哪些可行的降级手段”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确写路径涉及数据正确性所以不能简单丢弃,并给出写转异步、削峰排队等手段及其代价。
围绕“大 V 发帖这种一写多读的极致热点场景,关注关系的时间线应该如何设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较推、拉、推拉结合三种模式在写扩散和读扩散上的代价,并说明热点账号特殊处理。
围绕“如何发现和定位缓存或存储中的热点 key,发现后有哪些缓解手段”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出监控统计、代理采样等发现手段,以及本地缓存、key 打散、副本扩展三类缓解方案。
围绕“分片集群中单个分片过热导致整体吞吐受限时,有哪些不切分数据的应急手段”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出热点分片只读副本扩容、入口定向限流、请求合并等应急手段及其边界。
围绕“秒杀场景下单个商品的库存扣减热点如何解决,为什么不能直接依赖数据库行锁”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明行锁串行化的吞吐瓶颈,并给出缓存预扣+异步落库或库存分桶的方案及其一致性风险。
围绕“按时间范围分片的系统为什么会出现新数据写入热点,如何用桶(bucket)拆分解决”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确最新时间分片集中承接收流量的原因,以及按时间+随机桶复合分片的打散思路和查询代价。
围绕“Kafka 消费者组的重平衡会经历什么过程,如何减少再均衡造成的消费中断”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明触发重平衡的条件和 stop-the-world 问题,以及协作粘性分配如何降低影响。
围绕“Kafka 分区数固定时如何避免个别分区消息量远大于其他分区”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须从消息 key 设计、分区器定制、热点 key 打散三个角度给出缓解手段。
围绕“轮询、加权轮询、最少连接、一致性哈希这几种负载均衡算法分别适用于什么后端特征”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须结合后端有无状态、请求耗时方差、会话亲和需求给出算法选型。
围绕“用 DNS 轮询做负载均衡有哪些固有局限,为什么大型系统还要保留它”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确 TTL 缓存导致的故障摘除延迟和权重不可控,以及 DNS 在机房级调度和最终兜底中的价值。
围绕“负载均衡的健康检查应该如何设计,被动摘除和主动探测如何配合”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确探测频率、连续失败阈值、自动恢复的决策,以及主动探测可能放大的雪崩风险。
围绕“四层负载均衡和七层负载均衡的区别是什么,各自适合什么场景”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较两者在转发粒度、协议感知能力、性能开销上的差异并给出选型判断。
围绕“什么是区域感知的负载均衡(locality-aware routing),它在多机房部署中解决什么问题”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确就近路由降低跨机房延迟与带宽成本,以及故障时跨区溢出的策略权衡。
围绕“客户端负载均衡和服务端负载均衡的区别是什么,服务发现在其中扮演什么角色”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较两种模式的调用路径、注册中心依赖和单点/性能特征。
围绕“新上线或刚恢复的节点直接加入负载均衡池会发生什么,为什么需要慢启动”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明冷缓存、JIT 预热、连接池未建立导致的瞬时过载,以及权重渐进方案。
围绕“负载均衡中的会话粘性(sticky session)有哪些实现方式,为什么通常应优先改造为无状态”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 cookie 插入/源地址哈希等实现及其对扩缩容均衡性的破坏,从而论证无状态化优先。
围绕“当某个租户从小规格升级到独享资源时,如何做不停机的租户数据迁移”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出双写或增量同步+校验+短暂锁定切流的迁移流程,以及迁移失败的回滚考虑。
围绕“多租户共享资源时如何防止大租户挤占小租户的资源(noisy neighbor 问题)”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出按租户配额限流、资源池划分、关键租户独立部署三类手段及取舍。
围绕“多租户系统如何支持租户级差异化配置而不让代码被 if-else 分支淹没”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出租户配置表/配置中心+策略化加载的架构思路及其一致性要求。
围绕“多租户架构中请求如何路由到正确的租户数据,租户标识应该在请求的哪一层注入和校验”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明租户 ID 从认证凭证派生而非信任客户端传参,并在网关到数据访问层逐级透传校验。
围绕“被限流拒绝的请求应该如何响应,429 状态码和排队等待各适合什么场景”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确快速失败、延迟排队、返回剩余重试时间三种策略的适用边界。
围绕“固定阈值的限流在系统容量变化时有什么问题,如何实现自适应限流”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明静态阈值无法跟随容量扩缩容,并给出基于负载指标(CPU、RT)动态调整阈值的思路。
围绕“计数器、滑动窗口、漏桶、令牌桶四种限流算法的行为差异是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较突发流量容忍度、边界突刺问题、实现成本四个方面并给出选型。
围绕“限流应该按什么维度设置:用户、IP、接口还是租户,如何组合”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明不同维度防住的风险不同(刷单、爬虫、突发)并给出多级限流组合方式。
围绕“分布式环境下如何实现全局限流,集中式计数与本地配额各自的问题是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确集中式单点性能瓶颈与本地配额精度损失之间的权衡及混合方案。
围绕“限流应该做在网关层还是业务服务层,两层的限流目标有何不同”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确网关防外部突发、服务层防内部过载的分工及重复配置的成本。
围绕“分库分表后如何生成全局唯一 ID,各方案对存储和有序性的影响”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较雪花算法、号段模式、UUID 在趋势递增、时钟依赖、存储体积上的差异。
围绕“一致性哈希为什么需要虚拟节点,虚拟节点数量如何权衡”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确虚拟节点解决分布不均和节点增删抖动的问题,以及数量过多带来的路由表开销。
围绕“分片后跨分片的聚合查询和分页如何实现,各方案代价是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较广播查询、冗余汇总表、异步离线聚合三种方案的延迟与一致性代价。
围绕“跨分片分布式事务有哪些实现方案,为什么多数系统倾向于规避而非实现”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 2PC 的阻塞风险与本地消息表/最终一致性方案的思路及取舍理由。
围绕“如何在不做全量数据迁移的情况下扩容分片集群”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清双写+后台迁移+校验+切流的扩容流程或虚拟桶预分片思路。
围绕“选择分片键时应该考虑哪些因素,为什么分片键一旦选定很难更改”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须列出基数、写热点、查询模式三个判据,并说明改分片键需要全量数据迁移的原因。
围绕“权限判断结果缓存到网关后,管理员改角色时如何设置失效窗口和广播失效”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较短 TTL、版本号与事件失效在改权即时性上的取舍。
围绕“权限系统的数据范围如“本部门可见”如何在 SQL 层稳定生效,又不拖垮列表查询”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确谓词下推、组织路径物化与索引匹配。
围绕“多租户权限系统如何防止越权读取他租户数据,共享表和独立库何时切换”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出 tenant_id 强制注入、测试越权用例与 noisy neighbor 迁移条件。
围绕“权限系统里 RBAC 和 ABAC 的边界怎么划,避免把所有规则都塞进角色表”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须用组织角色与资源属性各举一个落地判断。
围绕“访问令牌较短、刷新令牌较长的权限体系里,用户被禁用后多久必须失效”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须权衡无状态校验、撤销名单与设备踢下线延迟。
围绕“预约下单未支付的十分钟锁定如何设计,超时释放与支付回调乱序怎么处理”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须定义 hold 状态、过期事件与回调幂等顺序。
围绕“预约系统如何防止同一资源在同一时段被并发订出,数据库约束应做到哪一层”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较区间排他约束、事务序列化与预占状态机。
围绕“周期性预约如每周二上午课程,跨时区和夏令时如何生成实例而不多一节课”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分规则存储、实例展开与例外取消。