logo

排行榜系统如何处理海量并发(massive concurrency)?请说明 collapse forwarding、Redis 单线程执行模型、原子更新以及 Lua 脚本的作用。

How does a leaderboard system handle massive concurrency? Explain collapse forwarding, Redis’s single-threaded execution model, atomic updates, and the role of Lua scripting.

题目类型: 技术面试题

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

难度: hard

分类: system-design, performance

标签: massive-concurrency, collapsed-forwarding, atomic, redis-single-thread, lua

参考答案摘要

TL;DR 高并发读请求可通过反向代理的 collapse forwarding 合并相同请求减少后端压力;Redis 通过单线程顺序执行命令确保 score 更新原子性,同时可用 Lua 脚本实现额外排名逻辑与差分更新。Redis 可并发接收网络请求,但命令执行仍是顺序的。 并发读优化:Collapse Forwarding 反向代理合并并发读请求,避免同一 key 被大量重复请求击穿缓存。 提...

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

← 返回面试题库

排行榜系统如何处理海量并发(massive concurrency)?请说明 collapse forwarding、Redis 单线程执行模型、原子更新以及 Lua 脚本的作用。

Hardsystem-design

想查看完整答案?

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

前往学习中心查看答案