System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 消息推送方法、装置、电子设备及存储介质制造方法及图纸_技高网

消息推送方法、装置、电子设备及存储介质制造方法及图纸

技术编号:41127704 阅读:4 留言:0更新日期:2024-04-30 17:56
本申请提供了一种消息推送方法、装置、电子设备及存储介质,其方法包括:针对目标用户启动推送服务时,获取所述目标用户的账号配置信息和流量配置信息;根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略;按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户。基于该方法,可以针对每个用户设计定制的消息通道,实现线程池的隔离,解决现有技术存在的由于单个用户推送异常而拖垮整个平台服务的问题。

【技术实现步骤摘要】

本申请涉及智能机器人,尤其涉及一种消息推送方法、装置、电子设备及存储介质


技术介绍

1、消息推送是指从服务平台将信息及时送达至相关订阅的用户终端,以此与用户持续友好的互动,达到提升用户活跃度和留存率的效果。服务平台大多有着庞大的用户数量,且不同的用户,付费成本也各不相同。然而,服务平台的资源有限,不同用户具有不同的流量和推送需求,消息内容和推送过程也存在差异,目前现有的消息推送方法难以应对用户的多样性,且存在由于单个用户推送异常而拖垮整个平台服务的问题。


技术实现思路

1、有鉴于此,本申请实施例提供了一种消息推送方法、装置、电子设备及存储介质,可以针对每个用户设计定制的消息通道,实现线程池的隔离,解决现有技术存在的由于单个用户推送异常而拖垮整个平台服务的问题。

2、本申请实施例的第一方面提供了一种消息推送方法,包括:针对目标用户启动推送服务时,获取所述目标用户的账号配置信息和流量配置信息;根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略;按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户。

3、在一种可能的实现方式中,所述根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略的步骤,包括:根据所述账号配置信息,设置所述渠道线程池中的核心数和任务数量阈值;根据所述流量配置信息,设置所述限流策略中的推送渠道以及消息推送速率

4、在一种可能的实现方式中,所述获取所述目标用户的账号配置信息和流量配置信息的步骤之前,还包括:从用户数据库中拉取所述目标用户的账号配置信息和流量配置信息,将所述目标用户的账号配置信息和流量配置信息存储到redis缓存中。

5、在一种可能的实现方式中,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户的步骤,包括:监测所述渠道线程池当前的任务数量是否达到任务数量阈值;若所述渠道线程池当前的任务数量达到任务数量阈值,则所述待推送消息提交失败,丢弃所述待推荐消息;若所述渠道线程池当前的任务数量未达到任务数量阈值,则所述待推送消息提交成功,向所述消息队列回复消息确认码。

6、在一种可能的实现方式中,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户的步骤之前,还包括:从用户数据库获取所述目标用户的推送记录表中的未推送成功记录,将未推送成功记录的消息作为待推送消息添加至所述消息队列中。

7、本申请实施例的第二方面提供了一种消息推送装置,包括:获取模块,用于针对目标用户启动推送服务时,获取所述目标用户的账号配置信息和流量配置信息;创建模块,用于根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略;推送模块,用于按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户。

8、在一种可能的实现方式中,所述消息推送装置还包括:第一设置模块,用于根据所述账号配置信息,设置所述渠道线程池中的核心数和任务数量阈值;第二设置模块,用于根据所述流量配置信息,设置所述限流策略中的推送渠道以及消息推送速率。

9、在一种可能的实现方式中,所述消息推送装置还包括:缓存模块,用于从用户数据库中拉取所述目标用户的账号配置信息和流量配置信息,将所述目标用户的账号配置信息和流量配置信息存储到redis缓存中。

10、本申请实施例的第三方面提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在电子设备上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面提供的消息推送方法的各步骤。

11、本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提供的消息推送方法的各步骤。

12、本申请实施例提供的一种消息推送方法、装置、电子设备及存储介质,具有以下有益效果:

13、本申请针对目标用户启动推送服务时,获取所述目标用户的账号配置信息和流量配置信息;根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略;按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户。基于该方法,可以针对每个用户设计定制的消息通道,实现线程池的隔离,解决现有技术存在的由于单个用户推送异常而拖垮整个平台服务的问题。

本文档来自技高网...

【技术保护点】

1.一种消息推送方法,其特征在于,包括:

2.根据权利要求1所述的消息推送方法,其特征在于,所述根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略的步骤,包括:

3.根据权利要求1所述的消息推送方法,其特征在于,所述获取所述目标用户的账号配置信息和流量配置信息的步骤之前,还包括:

4.根据权利要求1-3任意一项所述的消息推送方法,其特征在于,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户的步骤,包括:

5.根据权利要求4所述的消息推送方法,其特征在于,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户的步骤之前,还包括:

6.一种消息推送装置,其特征在于,包括:

7.根据权利要求6所述的消息推送装置,其特征在于,所述消息推送装置还包括:

8.根据权利要求6所述的消息推送装置,其特征在于,所述消息推送装置还包括:

9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。

10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。

...

【技术特征摘要】

1.一种消息推送方法,其特征在于,包括:

2.根据权利要求1所述的消息推送方法,其特征在于,所述根据所述账号配置信息和流量配置信息,创建所述目标用户的渠道线程池以及限流策略的步骤,包括:

3.根据权利要求1所述的消息推送方法,其特征在于,所述获取所述目标用户的账号配置信息和流量配置信息的步骤之前,还包括:

4.根据权利要求1-3任意一项所述的消息推送方法,其特征在于,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送消息提交至所述渠道线程池中,以通过所述渠道线程池将所述待推送消息推送给所述目标用户的步骤,包括:

5.根据权利要求4所述的消息推送方法,其特征在于,所述按照所述限流策略从消息队列中拉取待推送消息,并将所述待推送...

【专利技术属性】
技术研发人员:徐琪涵许锋刚
申请(专利权)人:深圳市优必选科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1