消息发送方法、系统、装置、设备及可读存储介质制造方法及图纸

技术编号:28682363 阅读:12 留言:0更新日期:2021-06-02 03:00
本申请是关于一种消息发送方法、系统、装置、设备及可读存储介质,属于数据传输领域。所述方法包括:获取目标消息的消息发送状态,消息发送状态用于指示目标消息从消息队列发送至消息处理服务器的状态;根据消息发送状态在阻塞队列中对目标消息对应的目标标志位进行状态修改,阻塞队列中包括与消息对应的依次排列的标志位,消息为待通过消息队列进行发送的内容;响应于目标标志位用于指示目标消息已发送,根据阻塞队列目标标志位所处的队列位置,对目标标志位进行对应处理。通过阻塞队列记录消息队列中消息的发送状态,来保证消息队列中的消息能够成功发送至消息处理服务器,避免在消息在发送的过程中丢失,提高了消息发送的可靠性。

【技术实现步骤摘要】
消息发送方法、系统、装置、设备及可读存储介质
本申请涉及数据传输领域,特别涉及一种消息发送方法、系统、装置、设备及可读存储介质。
技术介绍
消息队列是位于消息的生产端与消费端之间的中间件,可以实现消息的接收、存储与发送。生产端将消息投递至消息队列中,由消息队列将消息发送至对应的消费端,再由消息队列将确认字符(AcknowledgeCharacter,简称ACK)发送至生产端,生产端在接收到ACK之后,继续发送下一条消息。在海量时序数据传输的场景下,为提高数据传输的效率,消息队列常采用异步传输方式,即生产端无需接收到ACK之后再进行下一条消息的发送,而是直接将生产的消息发送至消息队列,不再关注消息是否能被生产端成功接收。以异步传输方式进行消息传输,虽然传输效率高,但是由于没有可靠的传输确认机制,存储在消息队列里的消息可能存在丢失的风险,消息传输的可靠性较低。
技术实现思路
本申请提供了一种消息发送方法、系统、装置、设备及可读存储介质,能够提高消息传输的可靠性。所述技术方案如下:一方面,提供了一种消息发送方法,所述方法包括:获取目标消息的消息发送状态,所述消息发送状态用于指示所述目标消息从消息队列发送至消息处理服务器的状态;根据所述消息发送状态在阻塞队列中对所述目标消息对应的目标标志位进行状态修改,所述阻塞队列中包括与消息对应的依次排列的标志位,所述消息为待通过所述消息队列进行发送的内容;响应于所述目标标志位用于指示所述目标消息已发送,根据所述阻塞队列中所述目标标志位所处的队列位置,对所述目标标志位进行对应处理。另一方面,提供了一种消息发送系统,所述系统包括:阻塞队列,用于获取目标消息的消息发送状态;根据所述消息发送状态在阻塞队列中对所述目标消息对应的目标标志位进行状态修改;响应于所述目标标志位用于指示所述目标消息已发送,根据所述阻塞队列中所述目标标志位所处的队列位置,对所述目标标志位进行对应处理;消息队列,用于将所述目标消息发送至消息处理服务器;根据所述目标消息的发送结果生成确认字符;向所述阻塞队列发送所述目标消息对应的所述确认字符;消息处理服务器,用于对所述目标消息进行对应处理。另一方面,提供了一种消息发送装置,所述装置包括:获取模块,用于获取目标消息的消息发送状态,所述消息发送状态用于指示所述目标消息从消息队列发送至消息处理服务器的状态;修改模块,用于根据所述消息发送状态在阻塞队列中对所述目标消息对应的目标标志位进行状态修改,所述阻塞队列中包括与消息对应的依次排列的标志位,所述消息为待通过所述消息队列进行发送的内容;处理模块,用于响应于所述目标标志位用于指示所述目标消息已发送,根据所述阻塞队列中所述目标标志位所处的队列位置,对所述目标标志位进行对应处理。另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中任一所述的消息发送方法。另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的消息发送方法。另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的消息发送方法。本申请实施例提供的技术方案带来的有益效果至少包括:通过阻塞队列对消息队列中的对应的消息发送状态进行记录,当消息队列中的目标消息被成功发送至消息处理服务器后,阻塞队列对应修改与目标消息对应的目标标志位的状态,并根据目标标志位在阻塞队列中所处的队列位置,对目标标志位进行对应处理。通过设置阻塞队列来保证消息队列中的消息能够成功发送至消息处理服务器,避免了消息在发送过程中丢失,提高了消息发送的可靠性。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请一个示例性实施例提供的实施环境示意图;图2是本申请一个示例性实施例提供的消息发送方法的流程图;图3是本申请一个示例性实施例提供的消息队列与阻塞队列之间的交互关系示意图;图4是本申请另一个示例性实施例提供的消息发送方法的流程图;图5是本申请另一个示例性实施例提供的消息发送方法的流程图;图6是本申请一个示例性实施例提供的阻塞队列中标志位对应的处理逻辑示意图;图7是本申请一个示例性实施例提供的消息发送系统的结构框图;图8是本申请一个示例性实施例提供的消息发送装置的结构框图;图9是本申请一个示例性实施例提供的服务器的结构框图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。首先,对本申请实施例的实施环境进行说明。请参考图1,该实施环境中包括消息生产端110、消息队列120、阻塞队列130和消息消费端140。消息生产端110是消息的发送端。消息生成端110可以是用户操作的终端,其生成待处理的数据,并将数据封装成消息,再将消息投递至消息队列120。上述终端可以是智能手机、平板电脑、便携式电脑、台式电脑等。该消息生产端110也可以是中间服务器,接收来自终端的消息并对其进行存储,当消息需要被处理时,中间服务器将消息发送至消息队列120中。消息队列120位于消息生产端110与消息消费端140之间,负责接收来自消息生产端110的消息,并将消息投递至对应的消息消费端140,可实现消息的接收、缓存与发送。消息队列120可以在物理服务器中、云服务器中或服务器中的一个模块实现。消息消费端140是消息的处理端。消息队列120在接收到消息生产端110发送的消息后,对消息进行存储,由消息消费端140对消息队列120中的消息进行轮询,当查询到对应满足处理条件的消息后,由消息队列120将消息发送至对应的消息消费端140。示意性的,该消息消费端140为消息处理服务器。该消息处理服务器可以是一台物理服务器、多台服务器组成的服务器群组或云服务器。以账号注册为例,用户在网页上进行某个网站的账号注册,其中需要进行手机验证码验证,由于验证码的接收实时要求性并不高,即使是1至2秒的响应时间在用户看来也是即时的。终端将账号注册请求发送至消息队列,消息队列在接收到请求消息后立即给终端返回一个响应信息本文档来自技高网...

【技术保护点】
1.一种消息发送方法,其特征在于,所述方法包括:/n获取目标消息的消息发送状态,所述消息发送状态用于指示所述目标消息从消息队列发送至消息处理服务器的状态;/n根据所述消息发送状态在阻塞队列中对所述目标消息对应的目标标志位进行状态修改,所述阻塞队列中包括与消息对应的依次排列的标志位,所述消息为待通过所述消息队列进行发送的内容;/n响应于所述目标标志位用于指示所述目标消息已发送,根据所述阻塞队列中所述目标标志位所处的队列位置,对所述目标标志位进行对应处理。/n

【技术特征摘要】
1.一种消息发送方法,其特征在于,所述方法包括:
获取目标消息的消息发送状态,所述消息发送状态用于指示所述目标消息从消息队列发送至消息处理服务器的状态;
根据所述消息发送状态在阻塞队列中对所述目标消息对应的目标标志位进行状态修改,所述阻塞队列中包括与消息对应的依次排列的标志位,所述消息为待通过所述消息队列进行发送的内容;
响应于所述目标标志位用于指示所述目标消息已发送,根据所述阻塞队列中所述目标标志位所处的队列位置,对所述目标标志位进行对应处理。


2.根据权利要求1所述的方法,其特征在于,所述根据所述阻塞队列所述目标标志位所处的队列位置,对所述目标标志位进行对应处理,包括:
响应于所述目标标志位位于所述阻塞队列的队头位置,从所述阻塞队列移除所述目标标志位;
更新剩余的所述标志位在所述阻塞队列中的所述队列位置。


3.根据权利要求2所述的方法,其特征在于,所述目标标志位对应有删除标志位,当所述目标标志位位于所述阻塞队列的非队头位置时,所述删除标志位对应为不可删除状态;
所述响应于所述目标标志位位于所述阻塞队列的队头位置,从所述阻塞队列移除所述目标标志位,包括:
判断所述目标标志位是否位于所述阻塞队列的所述队头位置;
响应于所述目标标志位位于所述阻塞队列的所述队头位置,将所述目标标志位对应的所述删除标志位设置为可删除状态;
响应于所述删除标志位对应为可删除状态,从所述阻塞队列移除所述目标标志位。


4.根据权利要求1至3任一所述的方法,其特征在于,所述根据所述阻塞队列所述目标标志位所处的队列位置,对所述目标标志位进行对应处理,包括:
响应于所述目标标志位位于所述阻塞队列的所述非队头位置,等待所述目标标志位所处的所述队列位置之前的标志位被移除;
响应于所述目标标志位移动至所述队头位置,从所述阻塞队列移除所述目标标志位。


5.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括:
响应于所述目标标志位用于指示所述目标消息等待完成发送,指示所述消息队列发送所述目标消息。


6.根据权利要求5所述的方法,其特征在于,所述指示所述消息队列发送所述目标消息,包括:
响应于所述目标消息发送失败,指示所述消息队列重...

【专利技术属性】
技术研发人员:任佳霖赵宏陈小梦宁德刚胡欣球余海峰
申请(专利权)人:远景智能国际私人投资有限公司上海远景科创智能科技有限公司
类型:发明
国别省市:新加坡;SG

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

1