CN109474688B - 即时通信网络请求消息的发送方法、装置、设备和介质 - Google Patents
即时通信网络请求消息的发送方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN109474688B CN109474688B CN201811427577.5A CN201811427577A CN109474688B CN 109474688 B CN109474688 B CN 109474688B CN 201811427577 A CN201811427577 A CN 201811427577A CN 109474688 B CN109474688 B CN 109474688B
- Authority
- CN
- China
- Prior art keywords
- request message
- network request
- queue
- sending
- server
- 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.)
- Active
Links
Images
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
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了即时通信网络请求消息的发送方法、装置、设备和介质,该方法包括:将产生的网络请求消息添加至发送队列中;根据发送队列中网络请求消息的顺序,发送各网络请求消息;将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送,实现了有效的发送网络请求消息,提高用户体验的技术效果。
Description
技术领域
本发明实施例涉及数据通信技术,尤其涉及一种即时通信网络请求消息的发送方法、装置、设备和介质。
背景技术
现有应用软件中,存在很多需要提供即时通信聊天的功能,可以是两个用户一对一的单聊会话,也可以多个用户的群聊会话。在聊天的过程中,应用软件客户端会产生很多向服务器发送的网络请求,主要是发送聊天会话消息内容的网络请求,或者还可能是客户端需要服务器提供某种反馈响应,因此而发出的网络请求。
现有技术中,如果客户端发送某个消息时,因为网络故障等原因没有发送出去,或服务器没有及时反馈响应,则需要用户在客户端上选择重发,而且也会影响后续消息的发送,且用户无法确定消息异常的原因,导致用户体验不佳。
发明内容
本发明实施例提供一种即时通信网络请求消息的发送方法、装置、设备和介质,以实现有效发送网络请求消息,改善用户体验。
第一方面,本发明实施例提供了一种即时通信网络请求消息的发送方法,该方法包括:
将产生的网络请求消息添加至发送队列中;
扫描所述发送队列,按照所述发送队列中网络请求消息的顺序,陆续发送各所述网络请求消息;
将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从所述重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从所述重复队列中提取对应的网络请求消息进行重新发送;
将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从所述重试队列中删除对应的网络请求消息,如果识别到发送失败则从所述重试队列中提取对应的网络请求消息进行重新发送。
第二方面,本发明实施例还提供了一种即时通信网络请求消息的发送装置,该装置包括:
请求消息添加模块,用于将产生的网络请求消息添加至发送队列中;
发送请求消息模块,用于扫描所述发送队列,按照所述发送队列中网络请求消息的顺序,陆续发送各所述网络请求消息;
响应请求信息模块,用于将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从所述重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从所述重复队列中提取对应的网络请求消息进行重新发送;
判别请求信息模块,用于将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从所述重试队列中删除对应的网络请求消息,如果识别到发送失败则从所述重试队列中提取对应的网络请求消息进行重新发送。
第三方面,本公开实施例还提供一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开实施例中任一所述的即时通信网络请求消息的发送方法。
第四方面,本公开实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本公开实施例中任一所述的即时通信网络请求消息的发送方法。
本发明实施例的技术方案,通过将产生的网络请求消息添加至发送队列中;扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息;将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送,解决了现有技术中因网络故障或者服务器没有及时反馈,需要用户在客户端上重发消息,同时也影响后续消息的发送,并且用户也无法确定消息异常的原因,导致用户体验较差的技术问题,实现了及时有效的发送网络请求消息,提高用户体验的技术效果。
附图说明
为了更加清楚地说明本公开示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本公开所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
图1为本公开实施例所提供的一种即时通信网络请求消息的发送方法的流程示意图;
图2为本公开实施例所提供的一种即时通信网络请求消息的发送装置的结构示意图;
图3为本公开实施例所提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本公开实施例一所提供的一种即时通信网络请求消息的发送方法的流程示意图,本实施例可适用于对网络请求消息处理的情况,该方法可以由即时通信网络请求消息的发送装置来执行,该装置可以通过软件和/或硬件的形式实现,并具体配置于电子设备中,该电子设备可以是终端设备,如智能手机、平板电脑或PC端等。
如图1所述,所述方法包括:
S110、将产生的网络请求消息添加至发送队列中。
需要说明的是,在通过客户端聊天的过程中,客户端通常会向服务器发送多个网络请求消息,例如,发送每条聊天会话消息内容时都相当于发送了网络请求消息。其中,聊天会话消息内容可以是文字、文档、视频或者应用程序等信息。
在本发明实施例中,可以预先在客户端中设置至少一个任务队列,将不同类型的网络请求消息,存放到不同的任务队列中。可选的,若网络请求消息需要发送至服务器,则可以将网络请求消息添加到发送队列中。
具体的,可以根据网络请求消息产生的时间,将网络请求消息依次添加到发送队列中。其中,网络请求消息中,可以包括消息的内容等信息。为了确保发送队列中尽可能多的存储网络请求消息,可以获取网络请求消息的ID,并将其ID存放到发送队列中,并将消息实体内容另行存储,消息ID与消息实体内容关联。这样的好处在于,发送队列中可以存储尽可能多的网络请求消息。需要说明的是,在本实施例中所提及的各个队列中存放的网络请求消息,主要是指各个网络请求消息的ID。
还需要说明的是,可以在应用程序中设置发送队列的存储空间,或者发送队列中存储网络请求消息数量的最大阈值,可选的,最大阈值为10个,也就是说,发送队列中最多可以存储10个网络请求消息。同时,在应用软件中可以设置相应的监测装置,可以实时或者间隔性的监测发送队列中,存储的网络请求消息数量,以及确定发送队列中网络请求消息数量是否达到了最大阈值,即队列任务是否已满。
可选的,识别所述发送队列是否已满,如果已满,则将产生的网络请求消息添加至等待队列中,如果未满,则将产生的网络请求消息添加至所述发送队列中。
具体的,在将网络请求消息添加到发送队列中时,若监测装置确定发送队列中,网络请求消息的数量未达到最大阈值,即发送队列存储数量未满,则可以将网络请求消息添加到发送队列中。当然,在实际应用的过程中也存在发送队列中,网络请求消息的数量已达到了最大存储阈值,此时可以将网络请求消息按照时间顺序添加到等待队列中。其中,等待队列可以理解为等待网络请求消息发送的队列,并且等待队列的存储空间是无限的,若发送队列存储满了,可以将网络请求消息添加到等待队列中。
示例性的,发送队列中最多可以存储10个网络请求消息,当有网络请求消息需要添加到发送队列中时,可以先监测发送队列中存储的网络请求消息数量是否达到了10个。若当前发送队列中存储了8个网络请求消息,即发送队列没有存满,可以将网络请求消息添加到发送队列中,若发送队列已经存储了10个网络请求消息,即发送队列存储满了,则将网络请求消息添加到等待队列中;若等待队列中存放有网络请求消息,即使客户端产生新的网络请求消息,也可以不用监测发送队列的存储数量是否达到了最大阈值,直接将新产生的网络请求消息添加至等待队列中。
S120、扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息。
具体的,在扫描到发送队列中存在未发送网络请求消息时,则提取发送队列中的所有网络请求消息,可以根据网络请求消息产生时间的早晚,陆续的将网络请求消息进行封包、发送。通常可以将发送队列中的任务均打包传输给通信层,以便进行发送。
可选的,按照设定发送时间间隔扫描发送队列;在确定发送队列中存在网络请求消息时,将发送队列中的全部网络请求消息,按照顺序陆续发送。
需要说明的是,每一个任务队列可以维护一个计时器,在设定的时间内扫描任务队列,可选的,发送队列中有任务时,就可以对发送队列中的消息进行处理,保证任务队列为空。
其中,可以预先设置发送时间间隔,可选的,10S扫描一次发送队列,确定发送队列中是否存在网络请求消息。具体的时间间隔,工作人员可以根据实际情况设定,在此不做具体限定。
具体的,每10S扫描一次发送队列,若是发送队列中存在网络请求消息时,可以将发送队列中的全部网络请求消息,按照时间顺序,陆续的发送到服务器,进而保证任务队列为空。
可选的,在监测到所述发送队列为空时,从所述等待队列将网络请求消息转入所述发送队列中。
具体的,在对发送队列扫描的过程中,若是发送队列中的任务为空,即没有存储网络请求消息时,可以将等待队列中的网络请求消息按照时间顺序,依次存放到发送队列中,从而实现等待队列中的网络请求消息发送。
S130、将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送。
需要说明的是,网络请求消息中部分消息是需要服务器响应的,例如,聊天会话消息中要发送图片、文件、音频或者视频等大数据文件时,则需要服务器响应以确保数据发送成功。也有部分网络请求消息是不需要服务器响应,可选的,聊天会话消息仅包括文字等小数据量的会话消息不需要服务器响应是否数据上传成功。因为,大数据文件通常是需要服务器的业务层监测数据是否向指定空间上传成功的,接收方再从指定空间去下载。而小数据消息会转发给接收方,不存在数据上传指定空间的操作。
也就是说,可以将发送队列中的网络请求消息分为两类,一类是需要服务器响应,另一类是不需要服务器相应。可以将需要服务器响应且已经从发送队列中发出的网络请求消息,存放到重复队列中。接收到服务器响应可以是:接收到服务器数据层反馈的数据上传成功响应,例如,视频下载成功则为一种服务器的响应。
若网络请求消息是需要服务器响应的,即,需要服务器数据层反馈数据上传成功响应。可选的,网络请求消息为下载视频,在将网络请求消息发送后,如果服务器响应了该网络请求消息,则会在客户端接收到了视频下载成功的提示。其中,在将网络请求消息发送之后,还可以将网络请求消息存放到重复队列中,若服务器响应了该网络请求消息,则可以从重复队列中删除该网络请求消息,可选的,若客户端下载了与网络请求消息相对应的视频,则可以从重复队列中获取该网络请求消息并删除。
在实际应用的过程中,也有可能存在网络请求消息需要服务器响应,但是服务器没有响应的情况。可选的,在发送了网络请求消息之后,网络出现了故障,或者由于其它原因导致服务器没有响应该请求消息。此时,若监测装置监测到设定时间内服务器没有响应该网络请求消息,可选的,设定时间为40S,则可以认为网络请求消息发送失败,需要重新发送该网络请求消息。
具体的,若未监测到服务器响应了该网络请求消息,即没有接收到服务器对该网络请求消息反馈数据,可选的,客户端没有下载与网络请求消息相对应的视频,则可以将该网络请求消息从重复队列中提出,并优先重复发送该网络请求消息。
将需要服务器响应的网络请求消息从发送队列中发送后,并将其存储到重复队列中的好处在于,若服务器没有响应该网络请求消息,可以主动的再次对网络请求消息进行发送,不需要用户在客户端上选择重新发送,可以提高发送网络请求消息的效率以及提高用户体验的技术效果。
S140、将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送。
在上述技术方案的基础上,可以将不需要服务器响应且已经从发送队列中发出的网络请求消息,存放到重试队列中。识别到发送成功可以是,接收到服务器网络层反馈的回调消息,或者终端接收到发送成功的标识,还可以是接收到相应的程序代码,通过该程序代码可以确定是否发送成功等等,只要可以确定消息发送成功,任意方式都是可以采用的,具体的确定方式可以根据实际情况进行设定,在此不做限定。
若网络请求消息是不需要服务器响应的,可选的,向目标用户发送的会话消息为文字,在将网络请求消息发送后,可以将该网络请求消息添加到重试队列中,如果监测到网络请求消息已经发送成功,则可以从重试队列中查找到该网络请求消息并删除。
当然,也有可能出现网络状况不佳等情形,导致会话消息发送失败,此时可以从重试队列中提取出会话消息发送失败的网络请求消息,并重新优先发送该网络请求消息,从而实现网络请求消息的再次发送,进而提高用户体验。
具体的,若识别到重试队列中的网络请求消息发送成功,则可以将该网络请求消息删除,若重试队列中的网络请求消息发送失败,则可以从重试队列中,提取该网络请求消息发到发送队列的第一个位置,并重新发送该网络请求消息,直至发送成功。
在上述技术方案的基础上,所述方法还包括:扫描等待队列中的网络请求消息,将网络请求消息产生时间超出设定时间门限值的网络请求消息,从等待队列转入重试队列中。
其中,可以在客户端内设置消息的等待时间,即设定消息时间门限值,可选的,30S。若30S时间内,网络请求消息还在等待队列中,可能判定消息发送失败或者服务器没有响应,为此时可以将此些网络请求消息从等待队列中转入重试队列中,即需要再次发送的队列中,避免用户在客户端上再次发送该网络请求消息。
需要说明的是,上述各个队列的名称是根据各个队列的功能进行命名的,只是为了介绍本发明实施例的技术方案并不是对各个队列的具体限定,用户可以根据习惯设置不同队列的名称。
本发明实施例的技术方案,通过将产生的网络请求消息添加至发送队列中;扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息;将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送,解决了现有技术中因网络故障或者服务器没有及时反馈,需要用户在客户端上重发消息,同时也影响后续消息的发送,并且用户也无法确定消息异常的原因,导致用户体验较差的技术问题,实现了及时有效的发送网络请求消息,提高用户体验的技术效果。
实施例二
图2为本公开实施例二所提供的一种即时通信网络请求消息的发送装置的结构示意图。该装置可以配置于移动终端中或者配置于应用程序中。该装置包括:请求消息添加模块210、发送请求消息模块220、响应请求信息模块230以及判别请求信息模块240。
其中,请求消息添加模块210,用于将产生的网络请求消息添加至发送队列中;发送请求消息模块220,用于扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息;响应请求信息模块230,用于将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;判别请求信息模块240,用于将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送。
在上述技术方案的基础上,请求信息添加模块,还用于识别发送队列是否已满,如果已满,则将产生的网络请求消息添加至等待队列中,如果未满,则将产生的网络请求消息添加至发送队列中。
在上述各技术方案的基础上,发送队列的消息存储空间为设定数量,等待队列的消息存储空间为无限数量。
在上述各技术方案的基础上,方法还包括:
扫描等待队列中的网络请求消息,将消息产生时间超出设定时间门限值的网络请求消息,从等待队列转入重试队列中。
在上述各技术方案的基础上,发送请求消息模块还用于按照设定发送时间间隔扫描发送队列;在确定发送队列中存在网络请求消息时,将发送队列中的全部网络请求消息,按照顺序陆续发送。
在上述各技术方案的基础上,装置还包括:监测模块,用于
在监测到发送队列为空时,从等待队列将网络请求消息转入发送队列中。
在上述各技术方案的基础上,装置中的接收到服务器响应包括:接收到服务器数据层反馈的数据上传成功响应;识别到发送成功包括:接收到服务器网络层反馈的回调消息。
本发明实施例的技术方案,通过将产生的网络请求消息添加至发送队列中;扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息;将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送,解决了现有技术中因网络故障或者服务器没有及时反馈,需要用户在客户端上重发消息,同时也影响后续消息的发送,并且用户也无法确定消息异常的原因,导致用户体验较差的技术问题,实现了及时有效的发送网络请求消息,提高用户体验的技术效果。
本公开实施例所提供的即时通信网络请求消息的发送装置可执行本公开任意实施例所提供的即时通信网络请求消息的发送方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开实施例的保护范围。
图3为本公开实施例提供的一种电子设备的结构示意图。图3示出了适于用来实现本公开实施例实施方式的示例性电子设备300的框图。下面参考图3,其示出了适于用来实现本公开实施例的电子设备(例如终端设备或服务器)300的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图3所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储装置308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、ROM 302以及RAM303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
通常,以下装置可以连接至I/O接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置307;包括例如磁带、硬盘等的存储装置308;以及通信装置309。通信装置309可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置308被安装,或者从ROM302被安装。在该计算机程序被处理装置301执行时,执行本公开公开实施例的方法中限定的上述功能。
需要说明的是,本公开公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:将产生的网络请求消息添加至发送队列中;扫描发送队列,按照发送队列中网络请求消息的顺序,陆续发送各网络请求消息;将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从重复队列中提取对应的网络请求消息进行重新发送;将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从重试队列中删除对应的网络请求消息,如果识别到发送失败则从重试队列中提取对应的网络请求消息进行重新发送。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定,例如,发送请求消息模块还可以被描述为“发送消息模块”;响应请求信息模块还可以描述为“响应模块”等。
以上描述仅为本公开公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
注意,上述仅为本公开的较佳实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。
Claims (10)
1.一种即时通信网络请求消息的发送方法,其特征在于,包括:
将产生的网络请求消息添加至发送队列中;
扫描所述发送队列,按照所述发送队列中网络请求消息的顺序,陆续发送各所述网络请求消息;
将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从所述重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从所述重复队列中提取对应的网络请求消息进行重新发送;
将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从所述重试队列中删除对应的网络请求消息,如果识别到发送失败则从所述重试队列中提取对应的网络请求消息进行重新发送;
其中,所述网络请求消息包括基于大数据文件确定的请求消息和/或基于小数据量确定的请求消息,基于所述大数据文件确定的请求消息是需要服务器响应的网络请求消息,基于所述小数据量确定的请求消息是不需要服务器响应的。
2.根据权利要求1所述的方法,其特征在于,将产生的网络请求消息添加至发送队列中包括:
识别所述发送队列是否已满,如果已满,则将产生的网络请求消息添加至等待队列中,如果未满,则将产生的网络请求消息添加至所述发送队列中。
3.根据权利要求2所述的方法,其特征在于,所述发送队列的消息存储空间为设定数量,所述等待队列的消息存储空间为无限数量。
4.根据权利要求2所述的方法,其特征在于,还包括:
扫描所述等待队列中的网络请求消息,将网络请求消息产生时间超出设定时间门限值的网络请求消息,从所述等待队列转入所述重试队列中。
5.根据权利要求1-4任一所述的方法,其特征在于,扫描所述发送队列,按照所述发送队列中网络请求消息的顺序,陆续发送各所述网络请求消息包括:
按照设定发送时间间隔扫描所述发送队列;
在确定所述发送队列中存在网络请求消息时,将所述发送队列中的全部网络请求消息,按照顺序陆续发送。
6.根据权利要求2所述的方法,其特征在于,还包括:
在监测到所述发送队列为空时,从所述等待队列将网络请求消息转入所述发送队列中。
7.根据权利要求1所述的方法,其特征在于:
接收到服务器响应包括:接收到服务器数据层反馈的数据上传成功响应;
识别到发送成功包括:接收到服务器网络层反馈的回调消息。
8.一种即时通信网络请求消息的发送装置,其特征在于,包括:
请求消息添加模块,用于将产生的网络请求消息添加至发送队列中;
发送请求消息模块,用于扫描所述发送队列,按照所述发送队列中网络请求消息的顺序,陆续发送各所述网络请求消息;
响应请求信息模块,用于将发送后需要服务器响应的网络请求消息,添加至重复队列,如果接收到服务器响应则从所述重复队列中删除对应的网络请求消息,如果未接收到服务器响应则从所述重复队列中提取对应的网络请求消息进行重新发送;
判别请求信息模块,用于将发送后不需要服务器响应的网络请求消息,添加至重试队列,如果识别到发送成功则从所述重试队列中删除对应的网络请求消息,如果识别到发送失败则从所述重试队列中提取对应的网络请求消息进行重新发送;
其中,所述网络请求消息包括基于大数据文件确定的请求消息和/或基于小数据量确定的请求消息,基于所述大数据文件确定的请求消息是需要服务器响应的网络请求消息,基于所述小数据量确定的请求消息是不需要服务器响应的。
9.一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的即时通信网络请求消息的发送方法。
10.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的即时通信网络请求消息的发送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811427577.5A CN109474688B (zh) | 2018-11-27 | 2018-11-27 | 即时通信网络请求消息的发送方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811427577.5A CN109474688B (zh) | 2018-11-27 | 2018-11-27 | 即时通信网络请求消息的发送方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109474688A CN109474688A (zh) | 2019-03-15 |
CN109474688B true CN109474688B (zh) | 2021-05-14 |
Family
ID=65674460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811427577.5A Active CN109474688B (zh) | 2018-11-27 | 2018-11-27 | 即时通信网络请求消息的发送方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109474688B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110740103A (zh) * | 2019-09-02 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
US20210153159A1 (en) * | 2019-11-15 | 2021-05-20 | Qualcomm Incorporated | System memory flow management |
CN111479334B (zh) * | 2020-03-20 | 2023-08-11 | 深圳赛安特技术服务有限公司 | 一种网络请求重试方法、装置及终端设备 |
CN112291307A (zh) * | 2020-10-12 | 2021-01-29 | 北京思明启创科技有限公司 | 数据请求的处理方法、装置及电子设备 |
CN112631808B (zh) * | 2020-12-29 | 2024-06-14 | 上海众源网络有限公司 | 数据同步方法、装置、电子设备和存储介质 |
CN113794744A (zh) * | 2021-01-29 | 2021-12-14 | 北京京东拓先科技有限公司 | 消息的处理方法及相关设备 |
CN114915659B (zh) * | 2021-02-09 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 网络请求处理方法、装置、电子设备及存储介质 |
CN113452602B (zh) * | 2021-06-21 | 2023-03-24 | 网易(杭州)网络有限公司 | 消息传输方法、装置、电子设备和存储介质 |
CN113794622B (zh) * | 2021-08-17 | 2023-03-24 | 北京达佳互联信息技术有限公司 | 消息处理方法、装置、电子设备及存储介质 |
CN113938846B (zh) * | 2021-10-13 | 2022-12-09 | 福建天泉教育科技有限公司 | 一种消息延迟发送方法及终端 |
CN114449034B (zh) * | 2022-01-28 | 2024-06-25 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种服务调用系统及方法 |
CN114529301A (zh) * | 2022-02-21 | 2022-05-24 | 山东浪潮通软信息科技有限公司 | 一种凭证过账方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571418A (zh) * | 2003-07-16 | 2005-01-26 | 深圳市中兴通讯股份有限公司南京分公司 | 一种流控传输协议中数据传输实现方法及系统 |
CN1832475A (zh) * | 2005-03-08 | 2006-09-13 | 微软公司 | 通过请求-响应传输的可靠的请求-响应消息通信 |
CN101459694A (zh) * | 2008-12-31 | 2009-06-17 | 中国科学院计算技术研究所 | 针对分布式文件系统的高可用消息传输框架和方法 |
CN103326832A (zh) * | 2012-03-19 | 2013-09-25 | 华为技术有限公司 | 数据包发送方法、模式转换方法及装置 |
US9232010B1 (en) * | 2014-08-04 | 2016-01-05 | Here Global B.V. | Method and apparatus for context aware intelligent message handling |
CN106130693A (zh) * | 2016-07-08 | 2016-11-16 | 浙江工业大学 | 一种基于udp的可靠传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8296617B2 (en) * | 2009-02-25 | 2012-10-23 | Alcatel Lucent | Method and apparatus of HARQ process selection |
-
2018
- 2018-11-27 CN CN201811427577.5A patent/CN109474688B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571418A (zh) * | 2003-07-16 | 2005-01-26 | 深圳市中兴通讯股份有限公司南京分公司 | 一种流控传输协议中数据传输实现方法及系统 |
CN1832475A (zh) * | 2005-03-08 | 2006-09-13 | 微软公司 | 通过请求-响应传输的可靠的请求-响应消息通信 |
CN101459694A (zh) * | 2008-12-31 | 2009-06-17 | 中国科学院计算技术研究所 | 针对分布式文件系统的高可用消息传输框架和方法 |
CN103326832A (zh) * | 2012-03-19 | 2013-09-25 | 华为技术有限公司 | 数据包发送方法、模式转换方法及装置 |
US9232010B1 (en) * | 2014-08-04 | 2016-01-05 | Here Global B.V. | Method and apparatus for context aware intelligent message handling |
CN106130693A (zh) * | 2016-07-08 | 2016-11-16 | 浙江工业大学 | 一种基于udp的可靠传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109474688A (zh) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109474688B (zh) | 即时通信网络请求消息的发送方法、装置、设备和介质 | |
CN110795022B (zh) | 终端测试方法、系统及存储介质 | |
CN109710370B (zh) | 会话列表显示方法、装置和电子设备 | |
CN115004673B (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
CN111694674B (zh) | 消息分发处理方法、装置、设备及存储介质 | |
CN110166791B (zh) | 连接的建立方法、装置、设备及存储介质 | |
CN109510754B (zh) | 在线文档生成方法、装置、系统和电子设备 | |
CN114217707B (zh) | 分享方法、装置、电子设备和存储介质 | |
CN111432001B (zh) | 用于跳转场景的方法、装置、电子设备和计算机可读介质 | |
CN109446204B (zh) | 一种即时通信的数据存储方法、装置、电子设备和介质 | |
CN103491162A (zh) | 基于移动互联网的信息分享方法及系统 | |
CN113254105A (zh) | 资源处理方法和装置、存储介质和电子设备 | |
KR101290977B1 (ko) | 푸쉬 서버를 이용한 메시지 전송 방법 및 그 시스템 | |
CN112261651B (zh) | 终端的控制方法、装置、终端和存储介质 | |
CN106933449B (zh) | 图标处理方法和装置 | |
CN115600964A (zh) | 语音审批方法、装置及相关设备 | |
CN112203103B (zh) | 消息处理方法、装置、电子设备及计算机可读存储介质 | |
CN111444457B (zh) | 数据发布方法、装置、存储介质及电子设备 | |
CN111143740B (zh) | 信息处理方法、装置及电子设备 | |
CN111290873B (zh) | 故障处理方法和装置 | |
CN110888770B (zh) | 用于发送信息的方法和装置 | |
CN112346661A (zh) | 数据处理方法、装置和电子设备 | |
CN112860431A (zh) | 微服务节点的连接方法、系统、设备及存储介质 | |
US20240152504A1 (en) | Data interaction method, apparatus, and electronic device | |
CN114816783A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |