这是 Beta 探索课程,内容结构、实验步骤和示例可能会继续调整。
热榜
设计高并发、实时更新的热榜系统
系统设计 热榜 高并发
系统演进路线
从点击排序到可治理的热榜平台
第 1 版
按点击排序
内容社区上线热榜,先按浏览量和点赞数排序。
内容表计数字段定时查询
能形成榜单,但会被旧内容和刷量长期占据。
第 2 版
热度公式
新内容上不来、标题党霸榜,需要引入时间衰减和多维权重。
点击评论分享时间衰减权重配置
榜单开始可解释,但公式需要能快速调整。
第 3 版
实时计算
热点事件几分钟内爆发,小时级定时任务已经太慢。
Redis ZSet流式窗口增量更新分类榜
实时性提升后,窗口边界和重复事件处理成为重点。
生产版
可治理榜单平台
刷榜、水军和低质内容影响社区生态。
异常检测人工运营榜单降权Feed 融合效果看板
生产热榜要同时追求新鲜、可信、可解释和可干预。
课程简介
系统总览
热门榜单系统总览
从事件采集到热度计算、实时榜单、防刷治理和展示排序。
采集
点击评论
点赞分享
内容事件
计算
热度公式
窗口聚合
实时更新
展示治理
Redis ZSet
多样性排序
防刷降权
热搜榜单看起来只是按热度排序,但真实系统要解决的问题很多:热度如何定义?新内容如何快速上榜又不过度刷屏?榜单如何实时更新?Redis ZSet 是否足够?刷榜和水军如何识别?榜单和个性化 Feed 如何结合?
这门课从一个全站热榜开始,逐步构建一套实时、可解释、可治理的热门排名系统。
课程会围绕一次社区热点事件展开:最初只是把浏览量最高的内容排在前面;很快旧内容霸榜、新内容没有机会;再后来热点爆发太快,离线任务跟不上;当刷榜和水军出现,榜单系统必须具备风控、运营干预和效果复盘能力。
学习路线
- 榜单系统概述:明确热榜、实时榜、分类榜、个性化榜的差异。
- 榜单基础:设计榜单数据结构、分页查询和排名算法。
- Redis ZSet:用有序集合承载实时排名,并处理批量更新。
- 热度计算:综合点击、评论、分享、时间衰减和多维权重。
- 实时计算:使用窗口聚合和流式计算降低榜单更新延迟。
- 防刷榜:识别异常行为、黑名单和权重调整。
- Feed 流排序:把全站热度和个性化信号结合到内容流。
- 完整系统:总结最终架构、关键决策和上线检查清单。
读完后,你应该能判断一个榜单系统是否只是“按计数排序”,还是具备热度公式、实时更新、防作弊和内容生态治理能力。