在分布式计数器里,Push Model 与 Pull Model(消息队列缓冲)有什么区别?各自的优缺点是什么?
What is the difference between push and pull models (using a message queue) in a distributed counter, and what are their trade-offs?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: system-design, messaging
标签: message-queue, push-model, pull-model, buffering, dlq, fault-tolerance, exactly-once
参考答案摘要
TL;DR Push Model 是每次计数变更都直接写数据库,实时但在超高写入下可能压垮 DB; Pull Model 通过消息队列缓冲变更,异步批量写 DB,提高吞吐与跨机房带宽效率,但会导致计数 非实时/不准确 ,并且难以做到 exactly-once 。 Push Model(直接写 DB) 机制 :每次 increment/decrement 都更新数据库。 优点 :实现简单,实时性能好...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。