本发明涉及数据推送,尤其涉及一种千万级用户消息快速推送方法、装置及设备。
背景技术:
1、常规的消息推送技术通常包括电子邮件推送、短信推送和应用程序推送这几种。电子邮件推送是一种基于互联网的传统消息推送技术,它可以向一个或多个收件人发送消息;短信推送是一种基于移动通信网络的消息推送技术,它可以向移动设备发送简短的文本消息;应用程序推送是一种基于移动应用程序的消息推送技术,它可以向用户的移动设备发送通知消息。
2、然而,上述几种推送技术存在以下几个缺点:
3、(1)传输速度慢:传统的消息推送方式速度都比较慢,需要一定时间才能到达接收方;
4、(2)无法精准定位目标用户:传统的消息推送方式无法精准定位到目标用户,只能采用全覆盖推送,费时费力;
5、(3)灵活性差:传统的消息推送方式无法灵活地根据不同的需求和情况进行调整和优化,如消息推送形式都相同,无法给不同用户推送个性化消息。
技术实现思路
1、本发明提供了一种千万级用户消息快速推送方法、装置及设备,解决了现有消息推送技术存在传输速度慢、无法精准定位目标用户及灵活性差的缺陷的技术问题。
2、本发明第一方面提供一种千万级用户消息快速推送方法,包括:
3、获取目标推送任务对应的推送消息和用户属性关键词;
4、根据所述用户属性关键词确定目标用户推送列表;所述目标用户推送列表包括至少一个用户的标识及对应的个性化消息通知格式;
5、基于所述目标用户推送列表将所述推送消息转换为对应个性化消息通知格式的目标推送消息,并将所述目标推送消息存储至分布式消息队列;
6、采用多节点并行推送方式,配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户。
7、根据本发明第一方面的一种能够实现的方式,所述根据所述用户属性关键词确定目标用户推送列表,包括:
8、根据所述用户属性关键词从第一预置数据库中匹配相应的用户属性标签作为目标用户属性标签;所述第一预置数据库存储有用户属性关键词与用户属性标签的对应关系;
9、根据所述目标用户属性标签从第二预置数据库中匹配相应的用户推送列表作为目标用户推送列表;所述第二预置数据库存储有用户属性标签与目标用户推送列表的对应关系。
10、根据本发明第一方面的一种能够实现的方式,所述方法还包括:
11、获取用户阅读消息的历史记录;
12、根据所述历史记录确定对应用户的喜好矩阵;所述喜好矩阵内的值为用户对相应类消息的阅读次数;
13、根据所述喜好矩阵计算相应用户对各类消息的喜好程度,筛选喜好程度大于预置喜好程度阈值的消息类型作为目标消息类型;
14、根据所述目标消息类型确定对应用户所关联的用户属性标签;
15、将关联同一用户属性标签的用户的相关信息归入同一列表,以生成相应的用户推送列表;所述相关信息包括用户的标识及个性化消息通知格式。
16、根据本发明第一方面的一种能够实现的方式,所述个性化消息通知格式包括消息推送模式,所述基于所述目标用户推送列表将所述推送消息转换为对应个性化消息通知格式的目标推送消息,包括:
17、基于所述目标用户推送列表将所述推送消息转换为对应消息推送模式的目标推送消息;所述消息推送模式包括语音推送模式、动画推送模式和/或文字推送模式。
18、根据本发明第一方面的一种能够实现的方式,所述个性化消息通知格式包括消息发送位置,所述配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户,包括:
19、配合所述目标用户推送列表,将所述目标推送消息推送至对应用户的相应消息发送位置。
20、根据本发明第一方面的一种能够实现的方式,在配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户之前,所述方法还包括:
21、对各所述目标推送消息进行预处理;所述预处理包括:对各所述目标推送消息进行推送优先级配置,基于优先级队列模式对各所述目标推送消息进行处理;和/或,对各所述目标推送消息进行过滤操作。
22、根据本发明第一方面的一种能够实现的方式,所述个性化消息通知格式包括消息发送时间范围,所述目标用户推送列表还包括表中各用户的初始推送优先级,所述对各所述目标推送消息进行推送优先级配置,包括:
23、根据所述消息发送时间范围对各所述目标推送消息进行分组,并对得到的目标推送消息分组按照从早到晚的顺序进行排序,得到第一排序结果;
24、确定所述目标用户推送列表中的各用户在预置时间段内对目标已推送消息的累计阅读次数;所述目标已推送消息为与所述目标推送任务对应的推送消息所属消息类型相同的已推送信息;
25、根据所述累计阅读次数和所述初始推送优先级计算相应用户的目标推送优先级;
26、按照目标推送优先级由大到小的顺序对各所述目标推送消息分组内的各目标推送消息进行排序,得到第二排序结果;
27、基于所述第一排序结果和所述第二排序结果确定各所述目标推送消息的排序优先级;
28、以确定的排序优先级作为推送优先级对各所述目标推送消息进行推送优先级配置。
29、本发明第二方面提供一种千万级用户消息快速推送装置,包括:
30、第一获取模块,用于获取目标推送任务对应的推送消息和用户属性关键词;
31、第一确定模块,用于根据所述用户属性关键词确定目标用户推送列表;所述目标用户推送列表包括至少一个用户的标识及对应的个性化消息通知格式;
32、转换处理模块,用于基于所述目标用户推送列表将所述推送消息转换为对应个性化消息通知格式的目标推送消息,并将所述目标推送消息存储至分布式消息队列;
33、推送模块,用于采用多节点并行推送方式,配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户。
34、根据本发明第二方面的一种能够实现的方式,所述确定模块包括:
35、第一匹配单元,用于根据所述用户属性关键词从第一预置数据库中匹配相应的用户属性标签作为目标用户属性标签;所述第一预置数据库存储有用户属性关键词与用户属性标签的对应关系;
36、第二匹配单元,用于根据所述目标用户属性标签从第二预置数据库中匹配相应的用户推送列表作为目标用户推送列表;所述第二预置数据库存储有用户属性标签与目标用户推送列表的对应关系。
37、根据本发明第二方面的一种能够实现的方式,所述装置还包括:
38、第二获取模块,用于获取用户阅读消息的历史记录;
39、第二确定模块,用于根据所述历史记录确定对应用户的喜好矩阵;所述喜好矩阵内的值为用户对相应类消息的阅读次数;
40、筛选模块,用于根据所述喜好矩阵计算相应用户对各类消息的喜好程度,筛选喜好程度大于预置喜好程度阈值的消息类型作为目标消息类型;
41、第三确定模块,用于根据所述目标消息类型确定对应用户所关联的用户属性标签;
42、生成模块,用于将关联同一用户属性标签的用户的相关信息归入同一列表,以生成相应的用户推送列表;所述相关信息包括用户的标识及个性化消息通知格式。
43、根据本发明第二方面的一种能够实现的方式,所述个性化消息通知格式包括消息推送模式,所述转换处理模块包括:
44、转换单元,用于基于所述目标用户推送列表将所述推送消息转换为对应消息推送模式的目标推送消息;所述消息推送模式包括语音推送模式、动画推送模式和/或文字推送模式。
45、根据本发明第二方面的一种能够实现的方式,所述个性化消息通知格式包括消息发送位置,所述推送模块包括:
46、推送单元,用于配合所述目标用户推送列表,将所述目标推送消息推送至对应用户的相应消息发送位置。
47、根据本发明第二方面的一种能够实现的方式,在配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户之前,所述装置还包括:
48、预处理模块,用于对各所述目标推送消息进行预处理;所述预处理包括:对各所述目标推送消息进行推送优先级配置,基于优先级队列模式对各所述目标推送消息进行处理;和/或,对各所述目标推送消息进行过滤操作。
49、根据本发明第二方面的一种能够实现的方式,所述个性化消息通知格式包括消息发送时间范围,所述目标用户推送列表还包括表中各用户的初始推送优先级,所述预处理模块对各所述目标推送消息进行推送优先级配置时,具体用于:
50、根据所述消息发送时间范围对各所述目标推送消息进行分组,并对得到的目标推送消息分组按照从早到晚的顺序进行排序,得到第一排序结果;
51、确定所述目标用户推送列表中的各用户在预置时间段内对目标已推送消息的累计阅读次数;所述目标已推送消息为与所述目标推送任务对应的推送消息所属消息类型相同的已推送信息;
52、根据所述累计阅读次数和所述初始推送优先级计算相应用户的目标推送优先级;
53、按照目标推送优先级由大到小的顺序对各所述目标推送消息分组内的各目标推送消息进行排序,得到第二排序结果;
54、基于所述第一排序结果和所述第二排序结果确定各所述目标推送消息的排序优先级;
55、以确定的排序优先级作为推送优先级对各所述目标推送消息进行推送优先级配置。
56、本发明第三方面提供了一种千万级用户消息快速推送装置,包括:
57、存储器,用于存储指令;其中,所述指令用于实现如上任意一项能够实现的方式所述的千万级用户消息快速推送方法;
58、处理器,用于执行所述存储器中的指令。
59、本发明第四方面一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任意一项能够实现的方式所述的千万级用户消息快速推送方法。
60、从以上技术方案可以看出,本发明具有以下优点:
61、本发明获取目标推送任务对应的推送消息和用户属性关键词;根据所述用户属性关键词确定目标用户推送列表;所述目标用户推送列表包括至少一个用户的标识及对应的个性化消息通知格式;基于所述目标用户推送列表将所述推送消息转换为对应个性化消息通知格式的目标推送消息,并将所述目标推送消息存储至分布式消息队列;采用多节点并行推送方式,配合所述目标用户推送列表将每条所述目标推送消息推送至对应的用户;本发明基于目标用户推送列表进行消息推送,可以精准定位目标用户;本发明采用基于消息队列的异步推送方式,可以将消息发送到消息队列中后立即返回,多个推送节点并行消费和推送,大大提高了消息推送的传输速度;本发明可以将目标推送任务对应的推送消息转换为对应个性化消息通知格式的目标推送消息推送至对应的用户,有效提高了推送的灵活性。