logo

通道处理器(Email/SMS/Push/In-app)如何设计重试?为什么要指数退避(exponential backoff)+ DLQ?

How should channel processors implement retries, and why use exponential backoff and a Dead Letter Queue (DLQ)?

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: medium

分类: System Design

标签: retries, backoff, dlq

参考答案摘要

答案 通道失败通常是暂时性(限流、抖动、供应商短故障),直接频繁重试会加重拥塞。 指数退避 :重试间隔逐步拉长(如 1m、5m、10m),并加 jitter 防同步风暴。 最大重试次数 :超过阈值后不再阻塞主流程。 DLQ :把“多次失败”的消息隔离出来,方便人工排查/回放。 同时要区分可重试错误(5xx、timeout)与不可重试错误(邮箱格式错误、无效 token)。

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

通道处理器(Email/SMS/Push/In-app)如何设计重试?为什么要指数退避(exponential backoff)+ DLQ?

Mediumsystem-designnotification-servicekafkarabbitmqsqsredisemailsmspushdlqobservabilitysecurity

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案