为什么不推荐用关系型数据库构建互联网规模的分布式计数器?高并发写、复制拓扑与一致性要求会带来哪些问题?
Why is a relational database not recommended for an internet-scale distributed counter, and what issues arise from high-concurrency writes, replication topologies, and consistency constraints?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: hard
分类: system-design, distributed-systems
标签: relational-db, locks, replication, leader-follower, leader-leader, write-congestion, spof
参考答案摘要
TL;DR 关系型数据库在互联网规模计数器中会遭遇 写锁冲突、leader 写入拥塞、复制延迟与跨机房幂等难题 。计数器是高并发写、对事务要求低但对可用性要求高的场景,关系型数据库的事务与磁盘写入开销反而成为瓶颈,因此不推荐作为核心计数存储。 主要问题 锁导致写瓶颈 :强一致实现常依赖锁(mutex/read-write lock),高并发写会严重冲突。 批量写入方案不可靠 :本地缓存聚合再批写会...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。