欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2016104737393
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2025-04-21
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于时间轮盘和播放器心跳的活跃用户集维护系统,包括若干用户终端和一个直播平台服务器,其特征在于:每个用户终端内设置有播放器心跳记录模块,直播平台服务器内设置有缓存预处理模块、分布式实时计算模块和活跃用户集功能模块;

所述播放器心跳记录模块用于:实时记录用户观看直播时播放器的心跳信息;并将记录的心跳信息上报给直播平台服务器;所述播放器的心跳信息包括用户ID和按照特定规则生成的识别码,所述识别码的生成规则为:时间戳+用户终端设备API获取的终端设备ID+随机数;

所述缓存预处理模块用于:对各用户终端上报的心跳信息进行缓存和预处理;定时将缓存和预处理后的所有心跳信息以若干数据片的形式发送至分布式实时计算模块;

所述分布式实时计算模块包括若干个实时计算子模块,分布式实时计算模块用于将收到的每个数据片按照哈希策略分配给一个指定的实时计算子模块;每个实时计算子模块对数据片中的心跳信息所包含的识别码进行解析并验证,将验证通过的心跳信息所对应的用户ID添加到当前时间对应的活跃用户集分片中,将验证未通过的心跳信息直接丢弃并结束,所述活跃用户集分片是将活跃用户集按照指定的活跃计算时间段划分成的若干分片;

所述活跃用户集功能模块用于:以指定的活跃计算时间段为周期,每经过指定的活跃计算时间段后,时间轮盘中每个槽内的活跃用户集分片向队首前移一格,位于队首的槽内的活跃用户集分片被移出并销毁,位于队尾的槽为空;将当前时间对应的活跃用户集分片更新到位于队尾的槽内;将时间轮盘上的指针向队首前移一格;所述时间轮盘为一种数据结构,其主体是一个首尾相连的循环列表,该循环列表中包含有若干个称之为槽的单元,每个槽中填充有一个活跃用户集分片,且该循环列表还具有一个指向队尾的指针。

2.如权利要求1所述的基于时间轮盘和播放器心跳的活跃用户集维护系统,其特征在于:所述识别码为固定长度,且经加密处理。

3.一种应用权利要求1所述系统的基于时间轮盘和播放器心跳的活跃用户集维护方法,其特征在于,包括以下步骤:

A、每个用户终端的播放器心跳记录模块实时记录用户观看直播时播放器的心跳信息;

将记录的心跳信息上报给直播平台服务器;

B、直播平台服务器的缓存预处理模块对各个用户终端上报的心跳信息进行缓存和预处理;

C、缓存预处理模块定时将缓存和预处理后的所有心跳信息以若干数据片的形式发送至分布式实时计算模块;分布式实时计算模块将每个数据片按照哈希策略分配给一个指定的实时计算子模块;

D、每个实时计算子模块对数据片中的心跳信息所包含的识别码进行解析并验证,将验证通过的心跳信息所对应的用户ID添加到当前时间对应的活跃用户集分片中,将验证未通过的心跳信息直接丢弃并结束;

E、活跃用户集功能模块以活跃计算时间段为周期,每经过指定的活跃计算时间段后,时间轮盘中每个槽内的活跃用户集分片向队首前移一格,位于队首的槽内的活跃用户集分片被移出并销毁,位于队尾的槽为空;将当前时间对应的活跃用户集分片更新到位于队尾的槽内;将时间轮盘上的指针向队首前移一格。

4.如权利要求3所述的基于时间轮盘和播放器心跳的活跃用户集维护方法,其特征在于:步骤B中,所述缓存预处理模块进行缓存时,会丢弃不符合要求的心跳信息;所述不符合要求的心跳信息包括:用户ID为空或者用户ID不符合数据字段类型的心跳信息、时间戳格式错误的心跳信息、以及用户终端类型标识非法的心跳信息。

5.如权利要求3所述的基于时间轮盘和播放器心跳的活跃用户集维护方法,其特征在于:步骤C中,缓存预处理模块定时将缓存和预处理后的所有心跳信息以若干数据片的形式发送至分布式实时计算模块,具体包括以下操作:缓存预处理模块每隔1秒钟将当前缓存和预处理后的所有心跳信息发送至分布式实时计算模块,每次发送时将心跳信息组合成若干小于等于1M的数据片进行发送。

6.如权利要求3所述的基于时间轮盘和播放器心跳的活跃用户集维护方法,其特征在于:步骤C中,分布式实时计算模块将每个数据片按照哈希策略分配给一个指定的实时计算子模块,具体包括以下操作:分布式实时计算模块为每个数据片分配一个唯一的ID号,将该ID号按照实时计算子模块的个数取模,获得的余数则对应指定的实时计算子模块的ID号;

将数据片分配给对应ID号的实时计算子模块。

7.如权利要求3所述的基于时间轮盘和播放器心跳的活跃用户集维护方法,其特征在于:步骤D具体包括以下操作:每个实时计算子模块对数据片中每个心跳信息包含的识别码进行解密,然后解析识别码,取出时间戳和终端设备ID;分别校验时间戳是否在合理范围内、终端设备ID是否符合规范;若上述校验均通过,则将验证通过的心跳信息的用户ID添加到当前时间对应的一个活跃用户集分片中,否则,直接丢弃该识别码对应的心跳信息,结束。