如何把一次通知请求拆成多渠道消息(fan-out),并保证每个渠道能独立扩缩容?
How do you fan-out a single notification request into multi-channel messages and allow each channel to scale independently?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: System Design
标签: fanout, topics, scaling
参考答案摘要
答案 入口层把“通知请求”转成多个 channel-specific message :每个渠道一条消息,写入对应 topic(如 email-topic / sms-topic / push-topic)。 每个 Channel Processor 只消费自己的 topic,做到独立扩容与限流。 消息体包含 requestId/messageId、渠道、收件人、渲染后的内容、优先级、重试次数等。...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。