热榜

设计高并发、实时更新的热榜系统

系统设计 热榜 高并发

系统演进路线

从点击排序到可治理的热榜平台

第 1 版

按点击排序

内容社区上线热榜,先按浏览量和点赞数排序。

内容表计数字段定时查询

能形成榜单,但会被旧内容和刷量长期占据。

第 2 版

热度公式

新内容上不来、标题党霸榜,需要引入时间衰减和多维权重。

点击评论分享时间衰减权重配置

榜单开始可解释,但公式需要能快速调整。

第 3 版

实时计算

热点事件几分钟内爆发,小时级定时任务已经太慢。

Redis ZSet流式窗口增量更新分类榜

实时性提升后,窗口边界和重复事件处理成为重点。

生产版

可治理榜单平台

刷榜、水军和低质内容影响社区生态。

异常检测人工运营榜单降权Feed 融合效果看板

生产热榜要同时追求新鲜、可信、可解释和可干预。

课程简介

系统总览
热门榜单系统总览
从事件采集到热度计算、实时榜单、防刷治理和展示排序。
采集
点击评论
点赞分享
内容事件
计算
热度公式
窗口聚合
实时更新
展示治理
Redis ZSet
多样性排序
防刷降权

热搜榜单看起来只是按热度排序,但真实系统要解决的问题很多:热度如何定义?新内容如何快速上榜又不过度刷屏?榜单如何实时更新?Redis ZSet 是否足够?刷榜和水军如何识别?榜单和个性化 Feed 如何结合?

这门课从一个全站热榜开始,逐步构建一套实时、可解释、可治理的热门排名系统。

课程会围绕一次社区热点事件展开:最初只是把浏览量最高的内容排在前面;很快旧内容霸榜、新内容没有机会;再后来热点爆发太快,离线任务跟不上;当刷榜和水军出现,榜单系统必须具备风控、运营干预和效果复盘能力。

学习路线

  1. 榜单系统概述:明确热榜、实时榜、分类榜、个性化榜的差异。
  2. 榜单基础:设计榜单数据结构、分页查询和排名算法。
  3. Redis ZSet:用有序集合承载实时排名,并处理批量更新。
  4. 热度计算:综合点击、评论、分享、时间衰减和多维权重。
  5. 实时计算:使用窗口聚合和流式计算降低榜单更新延迟。
  6. 防刷榜:识别异常行为、黑名单和权重调整。
  7. Feed 流排序:把全站热度和个性化信号结合到内容流。
  8. 完整系统:总结最终架构、关键决策和上线检查清单。

读完后,你应该能判断一个榜单系统是否只是“按计数排序”,还是具备热度公式、实时更新、防作弊和内容生态治理能力。

章节