一、直播业务高并发痛点
直播间瞬时流量极高,在线人数、点赞、热度实时变更,数据库完全扛不住,必须全量基于Redis实现实时统计。
二、核心功能实现方案
1. 直播间在线人数(HyperLogLog)
HyperLogLog 极小内存实现海量UV统计,误差率极低,适合直播间在线人数、访客统计。
Key:live:online:{roomId}
2. 点赞统计(Set + String)
Set存储点赞用户ID,防重复点赞
String存储总点赞数,实时累加
3. 直播间热度排行(ZSet)
综合在线人数、点赞、礼物、评论计算热度值,ZSet实时排序,实现直播间热度榜单。
三、过期与数据落地方案
直播间关闭后自动过期清理临时数据
定时任务将热度、点赞数据异步落地数据库
避免Redis内存长期占用无效数据