CN108234599A - 一种消息重发方法及系统 - Google Patents
一种消息重发方法及系统 Download PDFInfo
- Publication number
- CN108234599A CN108234599A CN201711277736.3A CN201711277736A CN108234599A CN 108234599 A CN108234599 A CN 108234599A CN 201711277736 A CN201711277736 A CN 201711277736A CN 108234599 A CN108234599 A CN 108234599A
- Authority
- CN
- China
- Prior art keywords
- message
- retransmitted
- transmit queue
- sending times
- failure
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种消息重发方法及系统,方法包括:设置任一待重发消息对应的重发时间间隔,重发时间间隔随着历史重发次数的增大而增大;当达到重发时间间隔时,将任一待重发消息进行重发操作;获取重发操作对应的操作状态,当操作状态为失败时,更新历史重发次数,当历史重发次数小于重发次数阈值且重发队列中待重发消息的数量小于数量阈值,将任一待重发消息加入重发队列中;重复执行上述步骤,直至操作状态为成功或历史重发次数达到重发次数阈值或重发队列中待重发消息的数量达到数量阈值。该方法及系统能够避免无效的重发操作,有效提高了重发效率,在确保消息准确送达的同时,降低了系统的运行压力,有利于提高系统的整体性能。
Description
技术领域
本发明涉及数据传输技术领域,更具体地,涉及一种消息重发方法及系统。
背景技术
在数据传输领域,以消息通知作为交互模式的应用系统越来越多。在消息传输时,由于双方系统或传输链路的故障,导致消息在传输过程中丢失而不能及时、可靠地送达。针对这一问题,形成了各种不同的消息重发机制,用于重新发送未成功送达的消息。
然而,现有的重发机制实现比较复杂,需要将失败消息保存起来,然后再定时进行遍历重发,其并没有对发送失败的消息进行及时处理;同时对于重发失败的消息,现有的重发机制并没有采取有效措施确保重发消息的准确送达,导致往往需要进行多次重发,进而导致服务器积累了大量未发出的消息,一定程度上影响了服务器的性能,致使消息的整体重发效率低下,重发的资源成本和时间成本较高。
有鉴于此,亟待提供一种能够提供消息重发效率的消息重发方法及系统。
发明内容
本发明为了克服现有技术中消息重发机制的消息重发效率低下的问题,提供一种消息重发方法及系统。
一方面,本发明提供一种消息重发方法,包括:
S1,对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
S2,当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
S3,获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中;
S4,重复执行所述步骤S1至S3,直至所述操作状态为成功或所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值。
优选地,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量小于所述数量阈值时,将发送失败的消息加入所述重发队列中。
优选地,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量达到所述数量阈值时,将所述发送失败的消息存入缓存系统。
优选地,所述步骤S3还包括:当所述操作状态为成功时,从所述重发队列中删除所述任一待重发消息。
优选地,所述步骤S3还包括:当所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值,将所述任一待重发消息存入所述缓存系统。
优选地,定时从所述缓存系统中取出缓存消息,将所述缓存消息进行重新发送。
优选地,获取所述缓存消息的发送状态,当所述缓存消息的发送状态为失败时,将所述缓存消息重新加入所述缓存系统中。
一方面,本发明提供一种消息重发系统,包括:
设置模块,用于对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
重发模块,用于当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
失败处理模块,用于获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中。
一方面,本发明提供一种计算机程序产品,,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行所述消息重发方法。
一方面,本发明提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行所述消息重发方法。
本发明提供的一种消息重发方法及系统,当消息发送失败时,能够将发送失败的消息加入消息队列中进行及时处理,通过设置重发队列中存储的待重发消息的数量阈值,能够有效控制重发队列中存储的数据量,避免数据量过大对重发效率的影响,同时针对每条待重发消息设置对应的重发时间间隔和重发次数阈值,且重发时间间隔随着历史重发次数的增大而增大,从而避免了无效的重发操作,有效提高了重发效率,在确保消息准确送达的同时,降低了系统的运行压力,有利于提高系统的整体性能。
附图说明
图1为本发明实施例的一种消息重发方法的整体流程示意图;
图2为本发明实施例的一种消息重发系统的整体结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明实施例的一种消息重发方法的整体流程示意图,如图1所示,本发明提供一种消息重发方法,包括:
S1,对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
S2,当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
S3,获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中;
S4,重复执行所述步骤S1至S3,直至所述操作状态为成功或所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值。
具体地,现有的重发机制通常将失败消息保存起来,然后再定时进行遍历重发,其并没有对发送失败的消息进行及时处理。本实施例中,通过建立额外的重发队列,能够将发送失败的消息加入重发队列中进行及时处理。对于重发队列中的待重发消息,执行重发的具体过程如下:
将发送失败的消息加入重发队列形成待重发消息,针对每条待重发消息,设置每条待重发消息的重发时间间隔,其中重发时间间隔用于表明下次重发的时间,将当前时间加上重发时间间隔即可确定下次重发的时间;重发时间间隔并不是固定不变的,随着历史重发次数的增大,重发时间间隔也增大。即,对于每条待重发消息而言,下一次进行重发的时间间隔比上一次进行重发的时间间隔更大,进而可以有效避免无效的重发。其中历史重发次数用于表明当前针对该条待重发消息已经重发的次数,在发送失败的消息第一次加入重发队列形成待重发消息时,该待重发消息的历史重发次数为0,即表明该条待重发消息为等待重发的状态。
进一步地,在上述技术方案的基础上,对于重发队列中的任一待重发消息,当经过对应的重发时间间隔后,即达到下次重发的时间点时,将待重发消息从重发队列中取出,并执行重发操作。
进一步地,检测上述重发操作对应的操作状态,即确定重发操作是否成功,当重发操作不成功时,即对应的操作状态为失败,此时更新历史重发次数,将历史重发次数加1。此外,对于重发队列中的每条待重发消息,预先设置了每条待重发消息的重发次数阈值,即确定每条待重发消息最多允许重发的次数,同时对于重发队列,预先设置了重发队列存储的待重发消息的数量阈值。故而,在上述待重发消息对应的操作状态为失败的情况下,将更新的历史重发次数与重发次数阈值进行比对,同时计算当前待重发队列中待重发消息的数量,并将当前待重发队列中待重发消息的数量与数量阈值进行比对,当且仅当更新后的历史重发次数小于重发次数阈值,且重发队列中待重发消息的数量小于数量阈值时,将待重发消息重新加入重发队列中。
进一步地,在上述待重发消息重新加入重发队列的同时,还将重新设置该条待重发消息对应的重发时间间隔,即重复执行上述方法步骤,具体方法步骤此处不再赘述。在重复执行上述方法步骤的过程中,若该条待重发消息的重发操作对应的操作状态为成功时,则不再重复执行上述方法步骤;同时若该条消息对应的历史重发次数达到重发次数阈值时,也不再重复执行上述方法步骤;此外,当重发队列中待重发消息的数量达到数量阈值时,同样也不再重复执行上述方法步骤。
此外,上述重发时间间隔和重发次数阈值以及待重发队列中存储的待重发消息的数量阈值可以根据实际需求进行设置,此处不做具体限定。
本发明提供的一种消息重发方法,当消息发送失败时,能够将发送失败的消息加入消息队列中进行及时处理,通过设置重发队列中存储的待重发消息的数量阈值,能够有效控制重发队列中存储的数据量,避免数据量过大对重发效率的影响,同时针对每条待重发消息设置对应的重发时间间隔和重发次数阈值,且重发时间间隔随着历史重发次数的增大而增大,从而避免了无效的重发操作,有效提高了重发效率,在确保消息准确送达的同时,降低了系统的运行压力,有利于提高系统的整体性能。
基于上述任一实施例,提供一种消息重发方法,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量小于所述数量阈值时,将发送失败的消息加入所述重发队列中。
具体地,本实施例中,为了确保发送失败的消息能够得到及时地处理,创建了重发队列,将发送失败的消息加入重发队列中进行集中处理。同时,为了避免重发队列中存储的数据量过大,对应设置了重发队列中存储的待重发消息的数量阈值,当重发队列中待重发消息的数量小于数量阈值时,若此时系统存在发送失败的消息,则可以将发送失败的消息加入重发队列中。由此,在对发送失败的消息进行及时处理的同时,还能够有效控制重发队列中存储的数据量,进而提高整体的消息重发效率。
本发明提供的一种消息重发方法,在重发队列中待重发消息的数量小于数量阈值时,将发送失败的消息加入重发队列中,由此,在对发送失败的消息进行及时处理的同时,还能够有效控制重发队列中存储的数据量,进而提高整体的消息重发效率。
基于上述任一实施例,提供一种消息重发方法,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量达到所述数量阈值时,将所述发送失败的消息存入缓存系统。
具体地,在将发送失败的消息加入重发队列的过程中,当重发队列中待发送消息的数量达到数量阈值时,为了确保消息的整体重发效率,重发队列不再接受发送失败的消息,此时为了确保发送失败的消息能够得到及时处理,将发送失败的消息加入缓存系统中,以便于系统后续从缓存系统中查询并获取发送失败的消息,并对发送失败的消息继续执行重发操作。
本发明提供的一种消息重发方法,当重发队列中待重发消息的数量达到数量阈值时,将发送失败的消息存入缓存系统,以便于系统后续从缓存系统中查询并获取发送失败的消息,并对发送失败的消息继续执行重发操作,有效提高了消息的整体重发效率。
基于上述任一实施例,提供一种消息重发方法,所述步骤S3还包括:当所述操作状态为成功时,从所述重发队列中删除所述任一待重发消息。
具体地,对于重发队列中的任一待重发消息,当满足重发时间间隔后,即达到下次重发的时间时,将待重发消息进行重发操作,同时检测重发操作对应的操作状态,即确定消息是否重发成功。当操作状态为成功,即消息重发成功时,将重发队列中对应的待重发消息进行删除,由此重发队列中待重发消息的数量减1,进而可以将另一发送失败的消息加入重发队列中,使得发送失败的消息能够得到及时处理。
本发明提供的一种消息重发方法,在对重发队列中的待重发消息进行重发操作时,同步记录重发操作对应的操作状态,当对应的操作状态为成功时,从重发队列中将对应的待重发消息进行删除,从而使得发送失败的消息能够加入重发队列中,进而使得发送失败的消息能够得到及时地处理。
基于上述任一实施例,提供一种消息重发方法,所述步骤S3还包括:当所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值,将所述任一待重发消息存入所述缓存系统。
具体地,对于重发队列中的任一待重发消息,当对同一待重发消息执行重发操作的历史重发次数达到重发次数阈值时,则表明此时该条待重发消息对应的重发次数已经用完,若该条待重发消息最后一次进行重发操作的操作状态依然为失败时,则将该条待重发消息存入缓存系统中,以便于系统后续从缓存系统中查询并获取该条待重发消息,并对该条待重发消息继续执行重发操作。此外,当对于重发队列中的任一待重发消息,在进行重发操作后,若重发操作对应的操作状态为失败,则还需考量当前重发队列中存储的待重发消息的数量,若当前重发队列中待重发消息的数量达到数量阈值,则重发队列不再接收该条待重发消息,故而将该条待重发消息存入缓存系统中,以便于系统后续从缓存系统中查询并获取该条待重发消息,并对该条待重发消息继续执行重发操作。
本发明提供的一种消息重发方法,对于重发队列中的任一待重发消息,当待重发消息进行重发操作对应的操作状态为失败时,若此时对应的历史重发次数达到重发次数阈值或重发队列中待重发消息的数量达到数量阈值,则将任一待重发消息存入缓存系统,避免了无效的重发操作,同时便于系统后续从缓存系统中查询并获取待重发消息,并对待重发消息继续执行重发操作,有效提高了消息的整体重发效率。
基于上述任一实施例,提供一种消息重发方法,定时从所述缓存系统中取出缓存消息,将所述缓存消息进行重新发送。
具体地,对于缓存系统中存储的缓存消息,利用redis定时器,每隔一段时间,定时从缓存系统中取出缓存消息,将发送失败的缓存消息重新进行发送。定时器对应的具体时间间隔可以根据实际需求进行设置,此处不做具体限定。此外,当缓存系统中存储的缓存消息过多时,可以分批取出缓存消息进行重发,具体地分批取出方式可以根据实际需求进行设置,此处不做具体限定。
本发明提供的一种消息重发方法,定时从缓存系统中取出缓存消息,将缓存消息进行重新发送,能够对重发队列中无法处理的失败消息进行集中处理,进一步确保了消息的准确送达,提高了消息重发的整体效率。
基于上述任一实施例,提供一种消息重发方法,获取所述缓存消息的发送状态,当所述缓存消息的发送状态为失败时,将所述缓存消息重新加入所述缓存系统中。
具体地,在上述技术方案的基础上,在对缓存系统中的缓存消息进行重新发送时,同步记录每条缓存消息的发送状态,当某一缓存消息的发送状态为失败时,即发送不成功,则将该缓存消息重新加入缓存系统中,以通过缓存系统对该缓存消息重新进行发送。
此外,当某一缓存消息的发送状态为成功时,即发送成功,则将该缓存消息从缓存系统中进行删除,从而释放部分缓存空间,有利于提高缓存系统的存储效率。
本发明提供的一种消息重发方法,在对缓存系统中的缓存消息进行重新发送时,若缓存消息发送不成功,则将缓存消息重新加入缓存系统,以通过缓存系统对该缓存消息重新进行发送,进一步确保了消息的准确送达,提高了消息重发的整体效率。
图2为本发明实施例的一种消息重发系统的整体结构示意图,如图2所示,本发明提供一种消息重发系统,包括:
设置模块1,用于对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
重发模块2,用于当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
失败处理模块3,用于获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中。
具体地,在实际应用中,本实施例的消息重发系统用于执行上述任一实施例的消息重发方法,利用本实施例的消息重发系统执行消息重发的具体过程如下:
将发送失败的消息加入重发队列形成待重发消息,在此基础上,由设置模块1针对每条待重发消息,设置每条待重发消息的重发时间间隔,其中重发时间间隔用于表明下次重发的时间,将当前时间加上重发时间间隔即可确定下次重发的时间;重发时间间隔并不是固定不变的,随着历史重发次数的增大,重发时间间隔也增大。即,对于每条待重发消息而言,下一次进行重发的时间间隔比上一次进行重发的时间间隔更大,进而可以有效避免无效的重发。其中历史重发次数用于表明当前针对该条待重发消息已经重发的次数,在发送失败的消息第一次加入重发队列形成待重发消息时,该待重发消息的历史重发次数为0,即表明该条待重发消息为等待重发的状态。
进一步地,对于重发队列中的任一待重发消息,当经过对应的重发时间间隔后,即达到下次重发的时间点时,由重发模块2将待重发消息从重发队列中取出,并执行重发操作。
进一步地,利用失败处理模块3检测上述重发操作对应的操作状态,即确定重发操作是否成功,当重发操作不成功时,即对应的操作状态为失败,此时更新历史重发次数,将历史重发次数加1。此外,对于重发队列中的每条待重发消息,利用设置模块1预先设置了每条待重发消息的重发次数阈值,即确定每条待重发消息最多允许重发的次数,同时对于重发队列,利用设置模块1预先设置了重发队列存储的待重发消息的数量阈值。故而,在上述待重发消息对应的操作状态为失败的情况下,利用失败处理模块3将更新的历史重发次数与重发次数阈值进行比对,同时计算当前待重发队列中待重发消息的数量,并将当前待重发队列中待重发消息的数量与数量阈值进行比对,当且仅当更新后的历史重发次数小于重发次数阈值,且重发队列中待重发消息的数量小于数量阈值时,将待重发消息重新加入重发队列中。
进一步地,在上述待重发消息重新加入重发队列的同时,还将重新设置该条待重发消息对应的重发时间间隔,进而由设置模块1、重发模块2和失败处理模块3重复执行上述方法步骤,此处不再一一赘述。在重复执行上述方法步骤的过程中,若该条待重发消息的重发操作对应的操作状态为成功时,则不再重复执行上述方法步骤;同时若该条消息对应的历史重发次数达到重发次数阈值时,也不再重复执行上述方法步骤;此外,当重发队列中待重发消息的数量达到数量阈值时,同样也不再重复执行上述方法步骤。
此外,上述重发时间间隔和重发次数阈值以及待重发队列中存储的待重发消息的数量阈值可以根据实际需求进行设置,此处不做具体限定。
本发明提供的一种消息重发系统,当消息发送失败时,能够将发送失败的消息加入消息队列中进行及时处理,通过设置重发队列中存储的待重发消息的数量阈值,能够有效控制重发队列中存储的数据量,避免数据量过大对重发效率的影响,同时针对每条待重发消息设置对应的重发时间间隔和重发次数阈值,且重发时间间隔随着历史重发次数的增大而增大,从而避免了无效的重发操作,有效提高了重发效率,在确保消息准确送达的同时,降低了系统的运行压力,有利于提高系统的整体性能。
基于上述任一实施例,提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:对于重发队列中的任一待重发消息,设置任一待重发消息对应的重发时间间隔,重发时间间隔随着历史重发次数的增大而增大;当达到重发时间间隔时,将任一待重发消息进行重发操作;获取重发操作对应的操作状态,当操作状态为失败时,更新历史重发次数,当历史重发次数小于重发次数阈值且重发队列中待重发消息的数量小于数量阈值,将任一待重发消息加入重发队列中;重复执行上述步骤,直至所述操作状态为成功或所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值。
基于上述任一实施例,提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:对于重发队列中的任一待重发消息,设置任一待重发消息对应的重发时间间隔,重发时间间隔随着历史重发次数的增大而增大;当达到重发时间间隔时,将任一待重发消息进行重发操作;获取重发操作对应的操作状态,当操作状态为失败时,更新历史重发次数,当历史重发次数小于重发次数阈值且重发队列中待重发消息的数量小于数量阈值,将任一待重发消息加入重发队列中;重复执行上述步骤,直至所述操作状态为成功或所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种消息重发方法,其特征在于,包括:
S1,对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
S2,当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
S3,获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中;
S4,重复执行所述步骤S1至S3,直至所述操作状态为成功或所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量小于所述数量阈值时,将发送失败的消息加入所述重发队列中。
3.根据权利要求1所述的方法,其特征在于,所述步骤S1之前还包括:当所述重发队列中待重发消息的数量达到所述数量阈值时,将所述发送失败的消息存入缓存系统。
4.根据权利要求1所述的方法,其特征在于,所述步骤S3还包括:当所述操作状态为成功时,从所述重发队列中删除所述任一待重发消息。
5.根据权利要求3所述的方法,其特征在于,所述步骤S3还包括:当所述历史重发次数达到所述重发次数阈值或所述重发队列中待重发消息的数量达到所述数量阈值,将所述任一待重发消息存入所述缓存系统。
6.根据权利要求3或5所述的方法,其特征在于,定时从所述缓存系统中取出缓存消息,将所述缓存消息进行重新发送。
7.根据权利要求6所述的方法,其特征在于,获取所述缓存消息的发送状态,当所述缓存消息的发送状态为失败时,将所述缓存消息重新加入所述缓存系统中。
8.一种消息重发系统,其特征在于,包括:
设置模块,用于对于重发队列中的任一待重发消息,设置所述任一待重发消息对应的重发时间间隔,所述重发时间间隔随着历史重发次数的增大而增大;
重发模块,用于当达到所述重发时间间隔时,将所述任一待重发消息进行重发操作;
失败处理模块,用于获取所述重发操作对应的操作状态,当所述操作状态为失败时,更新所述历史重发次数,当所述历史重发次数小于重发次数阈值且所述重发队列中待重发消息的数量小于数量阈值时,将所述任一待重发消息加入所述重发队列中。
9.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如权利要求1至7任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711277736.3A CN108234599A (zh) | 2017-12-06 | 2017-12-06 | 一种消息重发方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711277736.3A CN108234599A (zh) | 2017-12-06 | 2017-12-06 | 一种消息重发方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108234599A true CN108234599A (zh) | 2018-06-29 |
Family
ID=62653333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711277736.3A Withdrawn CN108234599A (zh) | 2017-12-06 | 2017-12-06 | 一种消息重发方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108234599A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109245867A (zh) * | 2018-08-14 | 2019-01-18 | 深圳壹账通智能科技有限公司 | 一种消息发送方法、计算机可读存储介质及终端设备 |
CN109697113A (zh) * | 2018-12-29 | 2019-04-30 | 广州华多网络科技有限公司 | 请求重试的方法、装置、设备及可读存储介质 |
CN110225109A (zh) * | 2019-06-05 | 2019-09-10 | 浙江汇信科技有限公司 | 一种多队列的数据传输方法 |
CN110460534A (zh) * | 2019-07-26 | 2019-11-15 | 腾讯云计算(北京)有限责任公司 | 一种请求消息上报方法、装置、设备及存储介质 |
CN110738755A (zh) * | 2019-10-28 | 2020-01-31 | 江西博能上饶客车有限公司 | 车载终端数据传输方法、系统、移动终端及存储介质 |
CN110865581A (zh) * | 2019-11-27 | 2020-03-06 | 中国电子科技集团公司第四十八研究所 | 一种基于nb-iot的燃气监测系统及监测方法 |
CN111082901A (zh) * | 2019-11-21 | 2020-04-28 | 深圳前海环融联易信息科技服务有限公司 | 一种智能消息发送方法、装置、计算机设备及存储介质 |
CN111404643A (zh) * | 2020-03-10 | 2020-07-10 | 山东汇贸电子口岸有限公司 | 一种基于消息队列的数据收发处理方法 |
CN111835467A (zh) * | 2020-07-28 | 2020-10-27 | 中国平安财产保险股份有限公司 | 消息发送方法、装置、计算机设备和存储介质 |
CN112468386A (zh) * | 2020-11-17 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种重复消息的处理方法及终端 |
CN112565418A (zh) * | 2020-12-04 | 2021-03-26 | 平安科技(深圳)有限公司 | 服务集群的消息重发方法、装置、计算机设备及存储介质 |
CN114244479A (zh) * | 2021-12-20 | 2022-03-25 | 北京奕斯伟计算技术有限公司 | 数据传输方法、数据传输装置、电子设备及存储介质 |
CN115225976A (zh) * | 2022-06-16 | 2022-10-21 | 海南乾唐视联信息技术有限公司 | 一种数据重传方法、装置、终端设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277175A (zh) * | 2007-03-30 | 2008-10-01 | 国际商业机器公司 | 改进会话启动协议服务器性能的方法和装置 |
CN101997661A (zh) * | 2009-08-14 | 2011-03-30 | 华为技术有限公司 | 数据包发送方法、数据包获取方法及装置 |
CN104301203A (zh) * | 2014-09-10 | 2015-01-21 | 腾讯科技(深圳)有限公司 | 一种消息推送方法和设备 |
US20160105530A1 (en) * | 2013-08-28 | 2016-04-14 | Hola Networks Ltd. | System and Method for Improving Internet Communication by Using Intermediate Nodes |
CN106911680A (zh) * | 2017-02-16 | 2017-06-30 | 杭州迪普科技股份有限公司 | 一种策略下发方法及装置 |
CN107070613A (zh) * | 2017-03-22 | 2017-08-18 | 公安部交通管理科学研究所 | 分布式网络环境下数据可靠传输方法 |
-
2017
- 2017-12-06 CN CN201711277736.3A patent/CN108234599A/zh not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277175A (zh) * | 2007-03-30 | 2008-10-01 | 国际商业机器公司 | 改进会话启动协议服务器性能的方法和装置 |
CN101997661A (zh) * | 2009-08-14 | 2011-03-30 | 华为技术有限公司 | 数据包发送方法、数据包获取方法及装置 |
US20160105530A1 (en) * | 2013-08-28 | 2016-04-14 | Hola Networks Ltd. | System and Method for Improving Internet Communication by Using Intermediate Nodes |
CN104301203A (zh) * | 2014-09-10 | 2015-01-21 | 腾讯科技(深圳)有限公司 | 一种消息推送方法和设备 |
CN106911680A (zh) * | 2017-02-16 | 2017-06-30 | 杭州迪普科技股份有限公司 | 一种策略下发方法及装置 |
CN107070613A (zh) * | 2017-03-22 | 2017-08-18 | 公安部交通管理科学研究所 | 分布式网络环境下数据可靠传输方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109245867A (zh) * | 2018-08-14 | 2019-01-18 | 深圳壹账通智能科技有限公司 | 一种消息发送方法、计算机可读存储介质及终端设备 |
CN109245867B (zh) * | 2018-08-14 | 2022-09-27 | 深圳壹账通智能科技有限公司 | 一种消息发送方法、计算机可读存储介质及终端设备 |
CN109697113A (zh) * | 2018-12-29 | 2019-04-30 | 广州华多网络科技有限公司 | 请求重试的方法、装置、设备及可读存储介质 |
CN109697113B (zh) * | 2018-12-29 | 2021-06-01 | 广州方硅信息技术有限公司 | 请求重试的方法、装置、设备及可读存储介质 |
CN110225109A (zh) * | 2019-06-05 | 2019-09-10 | 浙江汇信科技有限公司 | 一种多队列的数据传输方法 |
CN110460534A (zh) * | 2019-07-26 | 2019-11-15 | 腾讯云计算(北京)有限责任公司 | 一种请求消息上报方法、装置、设备及存储介质 |
CN110460534B (zh) * | 2019-07-26 | 2024-05-14 | 腾讯云计算(北京)有限责任公司 | 一种请求消息上报方法、装置、设备及存储介质 |
CN110738755A (zh) * | 2019-10-28 | 2020-01-31 | 江西博能上饶客车有限公司 | 车载终端数据传输方法、系统、移动终端及存储介质 |
CN111082901B (zh) * | 2019-11-21 | 2022-05-13 | 深圳前海环融联易信息科技服务有限公司 | 一种智能消息发送方法、装置、计算机设备及存储介质 |
CN111082901A (zh) * | 2019-11-21 | 2020-04-28 | 深圳前海环融联易信息科技服务有限公司 | 一种智能消息发送方法、装置、计算机设备及存储介质 |
CN110865581A (zh) * | 2019-11-27 | 2020-03-06 | 中国电子科技集团公司第四十八研究所 | 一种基于nb-iot的燃气监测系统及监测方法 |
CN111404643A (zh) * | 2020-03-10 | 2020-07-10 | 山东汇贸电子口岸有限公司 | 一种基于消息队列的数据收发处理方法 |
CN111835467A (zh) * | 2020-07-28 | 2020-10-27 | 中国平安财产保险股份有限公司 | 消息发送方法、装置、计算机设备和存储介质 |
CN112468386A (zh) * | 2020-11-17 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种重复消息的处理方法及终端 |
CN112565418A (zh) * | 2020-12-04 | 2021-03-26 | 平安科技(深圳)有限公司 | 服务集群的消息重发方法、装置、计算机设备及存储介质 |
CN112565418B (zh) * | 2020-12-04 | 2022-11-15 | 平安科技(深圳)有限公司 | 服务集群的消息重发方法、装置、计算机设备及存储介质 |
CN114244479A (zh) * | 2021-12-20 | 2022-03-25 | 北京奕斯伟计算技术有限公司 | 数据传输方法、数据传输装置、电子设备及存储介质 |
CN115225976A (zh) * | 2022-06-16 | 2022-10-21 | 海南乾唐视联信息技术有限公司 | 一种数据重传方法、装置、终端设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108234599A (zh) | 一种消息重发方法及系统 | |
KR101785483B1 (ko) | 서비스 에이전트로서 작용하는 방법, 모뎀 및 단말기 | |
CN106909467B (zh) | 一种基于微服务架构的分布式事务处理方法 | |
US9246976B2 (en) | Method and apparatus for controlling HTTP sockets | |
CN104579601B (zh) | 一种重传请求处理方法和装置 | |
CN106921515A (zh) | 业务操作数据处理方法、装置、电子设备、服务器及系统 | |
CN104184546B (zh) | 一种移动通信网络中减少报文重传的方法及系统 | |
CN105933369A (zh) | 一种消息转发方法及设备 | |
CN109462631A (zh) | 数据处理方法、装置、存储介质及电子装置 | |
CN109218369A (zh) | 远程过程调用请求控制方法及装置 | |
CN107231400A (zh) | 一种数据的同步方法和装置 | |
CN106059956A (zh) | 一种用于网络设备会话的时间队列处理方法以及装置 | |
CN112367146B (zh) | 边缘侧消息的投递方法、装置和电子设备 | |
CN104243473B (zh) | 一种数据传输的方法以及装置 | |
CN112910740A (zh) | 一种状态上报方法、装置、设备和计算机可读存储介质 | |
CN110266446B (zh) | 一种基于sack模式调整乱序时长的方法和装置 | |
CN109495546A (zh) | 数据处理方法、系统及服务器 | |
CN114422573B (zh) | 报文发送方法及装置、存储介质及电子装置 | |
CN109905209A (zh) | 一种设置网络乱序值的方法和装置 | |
CN104754760B (zh) | 一种分组业务重建方法和终端 | |
CN108259393B (zh) | 一种流数据处理中乱序纠正方法及系统 | |
CN109617957A (zh) | 一种基于cdn网络的文件上传方法、装置、服务器 | |
CN107979542A (zh) | 网络拥塞确定方法及本端网元 | |
CN102769604B (zh) | 操作数据处理方法及装置 | |
CN109688085B (zh) | 传输控制协议代理方法、存储介质及服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180629 |
|
WW01 | Invention patent application withdrawn after publication |