本发明专利技术涉及高并发消息服务分发方法、装置、计算机设备及存储介质,该方法包括获取待发送的消息,以得到待处理消息;获取用户终端的状态;判断用户终端的状态是否是在线且连接稳定状态;若用户终端的状态是在线且连接稳定状态,则发送待处理消息至用户终端,以获取来自用户终端的回执;若用户终端的状态不是在线且连接稳定状态,则接入用户终端并进行握手;当用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执。本发明专利技术根据用户终端的状态进行待处理消息的发送,利用服务器与用户终端的双向消息通道获取来自用户终端对待处理消息的回执,实现提高消息分发效率,可实时分发消息,降低消息丢失率以及消息阻塞几率。
High concurrency message service distribution method, device, computer equipment and storage medium
【技术实现步骤摘要】
高并发消息服务分发方法、装置、计算机设备及存储介质
本专利技术涉及消息服务分发方法,更具体地说是指高并发消息服务分发方法、装置、计算机设备及存储介质。
技术介绍
随着互联网技术的快速发展和普及,越来越多的商家或企业通过互联网的平台进行创意等推广,利用互联网在网页上推广信息,吸引更多的人群了解和关注其产品服务等,一方面商家或企业能够通过点击率获得更多转换率,进而从中获利;另一方面,利用互联网推广信息,能够降低推广费用,为商家或企业节省推广成本。在广告的推广过程中,大多采用服务器分发消息技术将广告推广出去,服务器分发消息技术通常是通过拉取或者简单的消息推送进行消息分发。拉取的方式是由客户端主动访问服务器获取数据,这种方式速度较慢,时效性无法保证;推送的方式是由服务器主动向客户端推送消息,但是当前的推送技术通常没有一个好的服务器并发系统,消息经常会产生阻塞或者丢失从而导致不稳定。因此,有必要设计一种新的方法,实现提高消息分发效率,可实时分发消息,降低消息丢失率以及消息阻塞几率。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供高并发消息服务分发方法、装置、计算机设备及存储介质。为实现上述目的,本专利技术采用以下技术方案:高并发消息服务分发方法,包括:获取待发送的消息,以得到待处理消息;获取用户终端的状态;判断所述用户终端的状态是否是在线且连接稳定状态;若所述用户终端的状态是在线且连接稳定状态,则发送待处理消息至用户终端,以获取来自用户终端的回执;若所述用户终端的状态不是在线且连接稳定状态,则接入用户终端并进行握手;当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执。其进一步技术方案为:所述获取待发送的消息,以得到待处理消息,包括:获取来自处理列队动态调度任务分配的待发送的消息,以得到待处理消息。其进一步技术方案为:所述发送待处理消息至用户终端,以获取来自用户终端的回执,包括:获取用户终端所对应的消息通道;利用所述消息通道发送所述待处理消息至所述用户终端,以获取来自用户终端的回执,并采用消息协议完成一次握手回执。其进一步技术方案为:所述接入用户终端并进行握手,包括:获取目标地址,其中,所述目标地址供用户终端通过负载均衡的方式获取,以接入用户终端;对接入的用户终端进行消息握手。其进一步技术方案为:所述当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执,包括:将待处理消息缓存于映射中;当所述用户终端处于连接稳定状态时,声明所述用户终端的状态,并将缓存于映射中的待处理消息推送至用户终端,以获取来自用户终端的回执。其进一步技术方案为:所述发送待处理消息至用户终端,以获取来自用户终端的回执之后,还包括:当没有收到来自用户终端的回执时,将所述待处理消息暂存于数据库;当用户终端每次上线或有心跳时发送暂存于数据库内的待处理消息,以得到发送结果;判断所述发送结果是否是收到对应的回执;若所述发送结果是收到对应的回执,则进入结束步骤;若所述发送结果不是收到对应的回执,则判断暂存于数据库中的待处理消息是否已过期;若暂存于数据库中的待处理消息已过期,则停止发送暂存于数据库中的待处理消息。其进一步技术方案为:所述判断暂存于数据库中的待处理消息是否已过期之后,还包括:若暂存于数据库中的待处理消息未过期,则执行所述当用户终端每次上线或有心跳时发送暂存于数据库内的待处理消息,以得到发送结果。本专利技术还提供了高并发消息服务分发装置,包括:消息获取单元,用于获取待发送的消息,以得到待处理消息;状态获取单元,用于获取用户终端的状态;状态判断单元,用于判断所述用户终端的状态是否是在线且连接稳定状态;第一发送单元,用于若所述用户终端的状态是在线且连接稳定状态,则发送待处理消息至用户终端,以获取来自用户终端的回执;接入单元,用于若所述用户终端的状态不是在线且连接稳定状态,则接入用户终端并进行握手;第二发送单元,用于当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执。本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。本专利技术与现有技术相比的有益效果是:本专利技术通过从处理列队处获取待处理消息,并根据用户终端的状态进行待处理消息的发送,且利用服务器与用户终端的双向消息通道获取来自用户终端对待处理消息的回执,实现提高消息分发效率,可实时分发消息,降低消息丢失率以及消息阻塞几率。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的高并发消息服务分发方法的应用场景示意图;图2为本专利技术实施例提供的高并发消息服务分发方法的流程示意图;图3为本专利技术实施例提供的高并发消息服务分发方法的子流程示意图;图4为本专利技术实施例提供的高并发消息服务分发方法的子流程示意图;图5为本专利技术实施例提供的高并发消息服务分发方法的子流程示意图;图6为本专利技术另一实施例提供的高并发消息服务分发方法的流程示意图;图7为本专利技术实施例提供的高并发消息服务分发装置的示意性框图;图8为本专利技术实施例提供的高并发消息服务分发装置的第一发送单元的示意性框图;图9为本专利技术实施例提供的高并发消息服务分发装置的接入单元的示意性框图;图10为本专利技术实施例提供的高并发消息服务分发装置的第二发送单元的示意性框图;图11为本专利技术另一实施例提供的高并发消息服务分发装置的示意性框图;图12为本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例本文档来自技高网...
【技术保护点】
1.高并发消息服务分发方法,其特征在于,包括:/n获取待发送的消息,以得到待处理消息;/n获取用户终端的状态;/n判断所述用户终端的状态是否是在线且连接稳定状态;/n若所述用户终端的状态是在线且连接稳定状态,则发送待处理消息至用户终端,以获取来自用户终端的回执;/n若所述用户终端的状态不是在线且连接稳定状态,则接入用户终端并进行握手;/n当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执。/n
【技术特征摘要】
1.高并发消息服务分发方法,其特征在于,包括:
获取待发送的消息,以得到待处理消息;
获取用户终端的状态;
判断所述用户终端的状态是否是在线且连接稳定状态;
若所述用户终端的状态是在线且连接稳定状态,则发送待处理消息至用户终端,以获取来自用户终端的回执;
若所述用户终端的状态不是在线且连接稳定状态,则接入用户终端并进行握手;
当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执。
2.根据权利要求1所述的高并发消息服务分发方法,其特征在于,所述获取待发送的消息,以得到待处理消息,包括:
获取来自处理列队动态调度任务分配的待发送的消息,以得到待处理消息。
3.根据权利要求2所述的高并发消息服务分发方法,其特征在于,所述发送待处理消息至用户终端,以获取来自用户终端的回执,包括:
获取用户终端所对应的消息通道;
利用所述消息通道发送所述待处理消息至所述用户终端,以获取来自用户终端的回执,并采用消息协议完成一次握手回执。
4.根据权利要求1所述的高并发消息服务分发方法,其特征在于,所述接入用户终端并进行握手,包括:
获取目标地址,其中,所述目标地址供用户终端通过负载均衡的方式获取,以接入用户终端;
对接入的用户终端进行消息握手。
5.根据权利要求4所述的高并发消息服务分发方法,其特征在于,所述当所述用户终端处于连接稳定状态,推送待处理消息至用户终端,以获取来自用户终端的回执,包括:
将待处理消息缓存于映射中;
当所述用户终端处于连接稳定状态时,声明所述用户终端的状态,并将缓存于映射中的待处理消息推送至用户终端,以获取来自用户终端的回执。
6.根据权利要求1至5任一项所述的高并发消息服务分发方法,其特征在于,所述发送待处理消息至用...
【专利技术属性】
技术研发人员:罗伟东,李根,李晓航,
申请(专利权)人:深圳市和讯华谷信息技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。