[发明专利]弹幕消息的动态分发方法、装置、设备和存储介质有效
申请号: | 201811086359.X | 申请日: | 2018-09-18 |
公开(公告)号: | CN109101340B | 公开(公告)日: | 2021-11-26 |
发明(设计)人: | 张磊;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 430070 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 弹幕 消息 动态 分发 方法 装置 设备 存储 介质 | ||
1.一种弹幕消息的动态分发方法,其特征在于,包括:
获取与各个次级分发对象对应的分发压力参数值,其中,分发压力参数包括当前CPU空闲率和当前剩余内存容量,所述分发压力参数还包括历史消息承载量或者当前剩余消息承载率;
其中,所述获取与各个次级分发对象对应的分发压力参数值包括:
获取与各个次级分发对象对应的序列化对象;
其中,所述获取与各个次级分发对象对应的序列化对象包括:
依据各个次级对象对应的分发压力参数值,将所述分发压力参数值封装至对象中,并对所述对象进行序列化操作,生成与各个次级分发对象对应的序列化对象;
针对任一个次级分发对象,当事件总线中的事件对象的数据类型与顶级分发对象中事件消息接收函数的函数输入参数的数据类型一致时,通过调用所述事件消息接收函数获得所述次级分发对象的所述事件对象,作为所述次级分发对象对应的序列化对象;
其中,所述事件对象为所述次级分发对象通过第一事件巴士对象调用事件消息投递函数发布至所述事件总线中;所述顶级分发对象在顶级分发类的构造函数中通过第二事件巴士对象调用注册函数预先注册至所述事件总线中;所述事件巴士对象是由第三方开源事件总线生成的对象;
对于任一个序列化对象,以所述序列化对象和预先构建的反馈对象类的类型为函数输入参数,调用对象反序列化函数,获得与所述序列化对象对应的当前次级分发对象的分发压力参数值;
针对每一个次级分发对象,依据所述次级分发对象的分发压力参数值和所述分发压力参数的参数权重值,确定所述次级分发对象的消息承压值;
依据各个所述次级分发对象对应的各个所述消息承压值确定目标次级分发对象,并将弹幕消息分发至所述目标次级分发对象,使得所述目标次级分发对象将所述弹幕消息分发至对应弹幕接收模块,所述弹幕消息是由弹幕服务器下发的;
其中,顶级分发对象以一个序列化对象和反馈对象类的类型为函数输入参数,调用Java语言中提供的JavaScript对象简谱JSON类中具有静态标识符的对象反序列化函数,获得一个序列化对象的反序列化结果;该对象反序列化函数的第一个函数输入参数表示待解析对象,第二个函数输入参数表示需要被解析成的类的类型,且函数中会自动调用反馈对象中的字段值存储函数set*和字段值读取函数get*,则上述反序列化结果是一个反馈对象类SecondResponse类型的反馈对象mSecondResponse,并且该反馈对象中已经填充了相应的分发压力参数值,便获得了作为输入参数的序列化对象对应的当前次级分发对象的分发压力参数值,对于每一个序列化对象均执行上述操作,则得到各个次级分发对象的分发压力参数值。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述以所述序列化对象和预先构建的反馈对象类的类型为函数输入参数,调用对象反序列化函数,获得与所述序列化对象对应的当前次级分发对象的分发压力参数值的结果异常,则将所述分发压力参数值设置为默认参数值,或者向所述当前次级分发对象反馈数据上报消息。
3.根据权利要求1所述的方法,其特征在于,在所述分发压力参数包括所述当前剩余消息承载率、所述当前CPU空闲率和所述当前剩余内存容量时,所述参数权重值包括承载率权重值、CPU权重值和内存权重值;
依据所述次级分发对象的分发压力参数值和分发压力参数的参数权重值,确定所述次级分发对象的消息承压值包括:
依据所述当前剩余消息承载率和所述承载率权重值、所述当前CPU空闲率和所述CPU权重值,以及所述当前剩余内存容量和所述内存权重值,确定乘积累加和,作为所述次级分发对象的消息承压值。
4.根据权利要求3所述的方法,其特征在于,当所述参数权重值为预先设定的固定数值时,所述承载率权重值、所述CPU权重值和所述内存权重值分别为第一预设权重值、第二预设权重值和第三预设权重值。
5.根据权利要求3所述的方法,其特征在于,当所述参数权重值为动态设定的数值时,所述CPU权重值和所述内存权重值依据所述弹幕消息的消息类型确定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811086359.X/1.html,转载请声明来源钻瓜专利网。