[发明专利]一种消息推送方法、装置、电子设备及介质有效
申请号: | 201910312499.2 | 申请日: | 2019-04-18 |
公开(公告)号: | CN110113393B | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 姜凡 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | H04L67/55 | 分类号: | H04L67/55;H04L67/60 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 李欣;项京 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 消息 推送 方法 装置 电子设备 介质 | ||
1.一种消息推送方法,其特征在于,所述方法包括:
判断待推送消息对应的待推送终端总数是否大于预设阈值,若是,则对所述待推送消息对应的待推送终端进行分组;
根据所述待推送终端的分组数,生成存储位的集合,其中,所述集合中行数与所述待推送终端的分组数相同,或所述集合中列数与所述待推送终端的分组数相同,所述存储位用于记录待推送终端的推送状态的推送标志;
针对每一所述待推送终端,均执行下述步骤:
利用预设的哈希函数,计算所述待推送终端的身份标识ID的哈希值,根据所述待推送终端的ID的哈希值,确定所述待推送终端的ID映射的存储位,并从确定的存储位中获取待推送终端的推送标志;
根据所获取的推送标志,确定所述待推送终端是否未被推送所述待推送消息,若是,则向所述待推送终端推送所述待推送消息,以及更新所述待推送终端的ID映射的存储位记录的推送标志。
2.根据权利要求1所述的方法,其特征在于,所述存储位的集合为位图bitmap的集合,其中,所述bitmap中包括用于记录待推送终端的推送状态的推送标志的存储位,且所述bitmap的集合中的bitmap总个数与所述待推送终端的分组数相同;
所述对所述待推送消息对应的待推送终端进行分组的步骤,包括:
根据所述待推送消息对应的待推送终端总数和单个bitmap中实际存储位数,确定所述待推送终端的分组数;根据所述待推送终端的分组数,对待推送消息对应的待推送终端进行分组;
所述根据所述待推送终端的分组数,生成存储位的集合的步骤,包括:
确定所述待推送终端的分组数为bitmap的总个数;
根据所述单个bitmap中实际存储位数和期望误差率,确定单个bitmap的期望存储位数,所述期望误差率为允许bitmap中记录的推送标志出现错误的概率;
根据所述单个bitmap的期望存储位数和所述bitmap的总个数,生成存储位的集合。
3.根据权利要求2所述的方法,其特征在于,所述利用预设的哈希函数,计算所述待推送终端的身份标识ID的哈希值,根据所述待推送终端的ID的哈希值,确定所述待推送终端的ID映射的存储位,并从确定的存储位中获取待推送终端的推送标志的步骤,包括:
利用预设的第一哈希函数,计算所述待推送终端的身份标识ID的第一哈希值;根据所述待推送终端的ID的第一哈希值和所述待推送终端的分组数,确定待推送终端的ID映射的目标bitmap;
利用预设的第二哈希函数,计算所述待推送终端的ID的第二哈希值;根据所述待推送终端的ID的第二哈希值和所述单个bitmap的期望存储位数,确定在所述目标bitmap中,待推送终端的ID映射的目标存储位;
从所述目标存储位中读取待推送终端的推送标志。
4.根据权利要求3所述的方法,其特征在于,所述存储位记录的初始推送状态均为未推送;
所述根据所获取的推送标志,确定所述待推送终端是否未被推送所述待推送消息的步骤,包括:
若所获取的待推送终端的推送标志不全为已推送,则确定所述待推送终端未被推送所述待推送消息。
5.根据权利要求4所述的方法,其特征在于,所述向所述待推送终端推送所述待推送消息,以及更新所述待推送终端的ID映射的存储位记录的推送标志的步骤,包括:
向待推送终端推送所述待推送消息,并判断向待推送终端推送的所述待推送消息是否推送成功;
若向待推送终端推送的所述待推送消息推送成功,则将所述待推送终端的ID映射的目标存储位记录的推送标志更新为已推送。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910312499.2/1.html,转载请声明来源钻瓜专利网。