CN114710449B - 用于终端文件交互的流量控制方法、装置、计算机设备 - Google Patents
用于终端文件交互的流量控制方法、装置、计算机设备 Download PDFInfo
- Publication number
- CN114710449B CN114710449B CN202210339736.6A CN202210339736A CN114710449B CN 114710449 B CN114710449 B CN 114710449B CN 202210339736 A CN202210339736 A CN 202210339736A CN 114710449 B CN114710449 B CN 114710449B
- Authority
- CN
- China
- Prior art keywords
- target network
- network node
- file
- terminal
- target
- 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
- 230000003993 interaction Effects 0.000 title claims abstract description 124
- 238000000034 method Methods 0.000 title claims abstract description 87
- 230000005540 biological transmission Effects 0.000 claims abstract description 165
- 238000004590 computer program Methods 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 18
- 238000011084 recovery Methods 0.000 claims description 17
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/801—Real time traffic
-
- 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/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及大数据智能分析技术领域,具体公开了一种用于终端文件交互的流量控制方法、装置、计算机设备,所述方法包括:接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;根据所述下载请求,将读取到的文件流返回所述终端。本公开可以在复杂网络环境中,根据每个网络节点的流量控制规则进行终端与服务器之间文件交互流量控制,保障了报文交互类交易的正常运行。
Description
技术领域
本公开涉及大数据智能分析技术领域,特别是涉及一种用于终端文件交互的流量控制方法、装置、计算机设备。
背景技术
随着网络节点建设的加强,大大提升了数据交互的便捷性和灵活性。尤其在银行系统中,终端与服务器进行网络交互时,并非直接点对点交互,而是通过多个节点转发最终到达服务器,在传输过程中终端设备、网点、分行、省行、总行等等每个都是一个网络节点。
但是由于网络节点的多样性、复杂性、地区差异性,各省行、分行、网点的网络带宽存在极大差异。例如,银行系统中交易可以分为两大类:报文交互类、文件交互类,在网点运营过程中,文件交互类请求会占用大量网络资源,在部分网络条件差的网点,一个普通的文件上传就可能导致带宽被用尽,从而阻塞网络,导致报文交互类交易请求响应缓慢甚至阻塞,影响客户体验。
发明内容
基于此,有必要针对上述技术问题,提供一种用于终端文件交互的流量控制方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本公开提供了一种用于终端文件交互的流量控制方法。所述方法包括:
接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;
根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;
根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;
根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端。
在其中一个实施例中,所述根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度包括:
根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
在其中一个实施例中,所述将读取到的文件流返回所述终端包括:
将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;
在向所述终端发送所述返回报文之前,所述方法还包括:更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量。
在其中一个实施例中,所述方法还包括:
监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;
响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在其中一个实施例中,所述向所述终端发送所述返回报文之前还包括:
在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;
所述响应于断开与所述终端的网络连接,更新所述目标网络节点列表包括:
响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述量回收事件派发到消息队列;
读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;
从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在其中一个实施例中,所述方法还包括:
在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
第二方面,本公开还提供了一种用于终端文件交互的流量控制方法。所述方法包括:
向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值。
在其中一个实施例中,所述方法还包括:
获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度;
在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置;
向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
第三方面,本公开还提供了一种用于终端文件交互的流量控制装置。所述装置包括:
第一下载请求模块,用于接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;
流量阈值模块,用于根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;
单位传输长度模块,用于根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;
返回模块,用于根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端。
在其中一个实施例中,所述单位传输长度模块包括:
列表单元,用于根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
查表单元,用于在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
在其中一个实施例中,所述返回模块包括:
报文单元,用于将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;
所述装置还包括:
列表更新模块,用于更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量。
在其中一个实施例中,所述装置还包括监听模块,所述监听模块用于监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;
列表更新模块还用于响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在其中一个实施例中,所述装置还包括:
键值对模块,用于在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;
所述列表更新模块包括:
事件建立单元,用于响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述量回收事件派发到消息队列;
消息队列单元,用于读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;
流量回收单元,用于从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在其中一个实施例中,所述第一下载请求模块还用于在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
第四方面,本公开还提供了一种用于终端文件交互的流量控制装置。所述装置包括:
第二下载请求模块,用于向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
文件接收模块,用于在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值。
在其中一个实施例中,所述装置还包括:
传输进度模块,用于获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度;
下载起始位置更新模块,用于在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置;
所述第二下载请求模块还用于向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
第五方面,本公开还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述用于终端文件交互的流量控制方法的步骤。
第六方面,本公开还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述用于终端文件交互的流量控制方法的步骤。
第七方面,本公开还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述用于终端文件交互的流量控制方法的步骤。
上述用于终端文件交互的流量控制方法、装置、计算机设备、存储介质和计算机程序产品,至少包括以下有益效果:
本公开可以在复杂网络环境中,根据每个网络节点的流量控制规则进行终端与服务器之间文件交互流量控制,通过判断每个目标网络节点的负载状态进行后续的文件传输,并选取所有目标网络节点的单笔请求流量控制阈值的最小值作为单位传输长度,保障了报文交互类交易的正常运行,保障业务办理稳定;服务器可以根据每个网络节点的文件交互总体流量控制阈值进行流量控制,适配复杂环境下各个网络节点的带宽,为报文交互类交易留出足够带宽,减少了报文交互类交易请求响应缓慢甚至阻塞,在保障报文交互类交易正常运行基础上,加快了文件传输速度。
附图说明
为了更清楚地说明本公开实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中用于终端文件交互的流量控制方法的应用环境图;
图2为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图3为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图4为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图5为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图6为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图7为一个实施例中用于终端文件交互的流量控制方法的流程示意图;
图8为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图9为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图10为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图11为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图12为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图13为一个实施例中用于终端文件交互的流量控制装置的结构框图;
图14为一个实施例中计算机设备的内部结构框图;
图15为一个实施例中计算机设备的内部结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中在本公开的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本公开。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。例如若使用到第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
需要说明的是,以下实施例中的“连接”,如果被连接的对象之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。同时,在本说明书中,术语“和/或”包括相关所列项目的任何及所有组合。
本申请实施例提供的用于终端文件交互的流量控制方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102与服务器104之间存在多层级的网络节点106。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
本申请实施例提供的用于终端文件交互的流量控制方法可以应用于复杂网络系统的文件交互业务场景,例如在银行系统中,终端与服务器进行网络交互时,并非直接点对点交互,而是通过多个节点转发最终到达服务器,在传输过程中,终端、网点、分行、省行、总行等等每个都是一个网络节点,每个网络节点都有各自的带宽限制。
在本公开的一些实施例中,如图2所示,提供了一种用于终端文件交互的流量控制方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S10:接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点。
具体地,服务器接收终端发送的目标文件下载请求,下载请求的报文中可以包括设备路径信息、目标文件信息、下载起始位置信息。其中,设备路径可以是用于反映终端和服务器之间目标网络节点的编号。以银行设备终端为例,可以根据设备终端归属每级机构的机构号,拼接生成一串路径字符串,如设备004所属省行机构号为001,分行机构号为002,网点机构号为003,则该设备的设备路径为001.002.003.004。
步骤S20:根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值。
具体地,在确定目标网络节点后,根据目标网络节点对应的流量控制规则获取目标网络节点对应的文件交互总体流量控制阈值。其中,流量控制规则为预先配置的用于根据网络节点匹配对应的流量控制规则起止时间、每个网络节点的网络带宽、每个网络节点的文件交互总体流量控制阈值、每个网络节点的单笔请求流量控制阈值。一个网络节点可以配置有多条流量控制规则,此时网络节点可以根据特征参数执行对应的流量控制规则,例如特征参数为时间段,则根据当前时间所属的时间段匹配对应时间段的流量控制规则。根据确定的流量控制规则,可以获取当前流量控制规则设置的文件交互总体流量控制阈值、单笔请求流量控制阈值等。其中文件交互总体流量控制阈值为该网络节点允许用于文件交互的总带宽。
步骤S30:根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度。
具体地,在确定目标网络节点后,读取目标网络节点的负载状态,获取目标网络节点当前的负载流量。判断各个目标网络节点对应的负载流量与对应的文件交互总体流量控制阈值的大小。当某个目标网络节点的负载流量未超过该目标网络节点对应的文件交互总体流量控制阈值时,可以标记该目标网络节点负载状态为正常,反之则该目标网络节点负载状态为异常。只有所有的目标网络节点负载状态为正常的情况下,即各个目标网络节点的负载流量均未超过目标网络节点对应的文件交互总体流量控制阈值的情况下,认为可以进行文件传输,以所有目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度。在目标网络节点负载状态存在异常的情况下,则不进行文件传输,可以向终端返回流量负载异常,提醒稍后重试。需要注意的是,文件交互总体流量控制阈值的设定满足以下条件:在所有目标网络节点当前的负载流量加上单笔请求流量控制阈值的最小值后仍然不超过各自目标网络节点对应的文件交互总体流量控制阈值。
步骤S40:根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端。
具体地,从下载请求的报文中获取下载起始位置信息,根据下载起始位置信息从目标文件的下载起始位置读取单位传输长度的文件流,将读取到的文件流返回至终端。
上述用于终端文件交互的流量控制方法中,可以在复杂网络环境中,根据每个网络节点的流量控制规则进行终端与服务器之间文件交互流量控制,通过判断每个目标网络节点的负载状态进行后续的文件传输,并选取所有目标网络节点的单笔请求流量控制阈值的最小值作为单位传输长度,保障了报文交互类交易的正常运行,并且适配复杂环境下各个网络节点的带宽,并在保障报文交互类交易正常运行基础上,尽可能的加快了文件传输速度。
在本公开的一些实施例中,如图3所示,步骤S30包括:
步骤S32:根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值。
具体地,根据确定的目标网络节点生成目标网络节点列表。参考示例表一,目标网络节点列表用于建立目标网络节点和负载流量、文件交互总体流量控制阈值、单笔请求流量控制阈值的对应关系。
目标网络节点编号 | 负载流量 | 文件交互总体流量控制阈值 | 单笔请求流量控制阈值 |
目标网络节点1 | V1 | Q1 | P1 |
目标网络节点2 | V2 | Q2 | P2 |
目标网络节点n | Vn | Qn | Pn |
步骤S34:在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
具体地,在目标网络节点列表中各个目标网络节点的负载流量均未超过目标网络节点对应的文件交互总体流量控制阈值的情况下,查询目标网络节点列表中单笔请求流量控制阈值一列,选取单笔请求流量控制阈值的最小值,以该单笔请求流量控制阈值的最小值作为单位传输长度。
本实施例通过建立目标网络节点列表的方式,可以快速查询各个目标网络节点的负载状态,有助于快速判断负载流量和文件交互总体流量控制阈值的大小,还有助于快速查询定位所有目标网络节点的单笔请求流量控制阈值的最小值,便于管理目标网络节点,提高文件传输效率。
在本公开的一些实施例中,步骤S40包括:
将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文。
具体地,服务器将读取到单位传输长度的文件流写入返回报文,返回报文中还可以包括目标文件的总长度信息。
进一步地,在向所述终端发送所述返回报文之前,所述方法还包括:
更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量。
具体地,在发送返回报文之前,更新目标网络节点列表中所有目标网络节点的负载流量,将目标网络节点列表中所有的目标网络节点的负载流量增加单位传输长度的流量。
本实施例通过在返回报文传输之前及时更新目标网络节点列表中所有目标网络节点的负载流量,提高了目标网络节点列表的时效性,有助于及时把握目标网络节点的负载状态。
在本公开的一些实施例中,如图4所示,所述方法还包括:
步骤S50:监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接。
具体地,将读取到的单位传输长度的文件流以返回报文的方式返回至终端,同时监听返回报文的状态,在返回报文发送完成后及时断开服务器与终端的网络连接。
步骤S60:响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
具体地,在返回报文发送完成并断开与终端的连接后,及时更新目标网络节点列表中所有目标网络节点的负载流量,将负载流量减去单位传输长度的流量。
本实施例通过在单次文件传输完成后及时更新目标网络节点列表中所有目标网络节点的负载流量,将负载流量减去单位传输长度的流量,进行流量回收,提高了目标网络节点列表的时效性,同时在返回报文发送完成后及时断开服务器与终端的网络连接,减少不必要的流量占用。
在本公开的一些实施例中,在向所述终端发送所述返回报文之前还包括:
在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录。
具体地,在确定本次文件传输的单位传输长度后,在数据库中增加一条键值对记录,以设备路径信息为关键字,以单位传输长度为关键字对应取值。
进一步地,如图5所示,上述步骤S60包括:
步骤S62:响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述量回收事件派发到消息队列。
具体地,在断开服务器与终端的传输连接后,触发建立流量回收事件,并将流量回收事件派发到消息队列,以对流量回收事件进行统一管理。流量回收事件中至少包括此次文件传输的设备路径信息。
步骤S64:读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表。
具体地,按照顺序从消息队列中读取流量回收事件,根据流量回收事件对应的设备路径信息获取该设备路径信息对应的目标网络节点列表。
步骤S66:从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
具体地,根据流量回收事件对应的设备路径信息,在数据库中查找键值对记录,获取设备路径信息对应的单位传输长度,将根据所述设备路径信息获取对应的所述目标网络节点列表中的负载流量减去单位传输长度的流量。
本实施例通过建立设备路径信息和单位传输长度的键值对记录,便于快速根据设备路径获取文件传输的单位传输长度,避免了重复比较获取所有目标网络节点的单笔请求流量控制阈值的最小值;其次,通过消息队列的方式对流量回收事件进行统一管理,在流量回收时,可以快速定位目标网络节点列表以及单位传输长度,进行目标网络节点列表的快速更新。
在本公开的一些实施例中,所述方法还包括:
在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
具体地,如果当前次传输的文件流并不是完整的目标文件,终端会发送更新后的下载请求,直至终端判断目标文件的传输进度为完成。更新后的下载请求中包括更新后的下载起始位置信息,服务器接收到更新后的下载请求后,继续重复上述步骤S10至S40,直至目标文件传输完成。
本实施例通过单次传输单位传输长度的文件流,以及接收更新后的下载请求,从更新后的下载起始位置继续读取单位传输长度的文件流进行传输,直至目标文件全部传输完成,多次文件流的传输大大降低了对网络节点的流量负荷,保证了文件传输的稳定性。
在本公开的一些实施例中,如图6所示,提供了一种用于终端文件交互的流量控制方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤A10:向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值。
具体地,终端向服务器发送针对目标文件的下载请求,在发送的下载请求中包括以下信息:目标文件信息、设备路径信息、下载起始位置信息。便于服务器根据下载请求确定所述终端与服务器之间用于传输所述目标文件的目标网络节点,以及便于服务器根据目标网络节点确定目标网络节点对应的文件交互总体流量控制阈值、目标网络节点对应的单笔请求流量控制阈值。
步骤A20:在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值。
具体地,在服务器进行有效网络节点的流量状态验证后,即服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,终端接收服务器返回的文件流。其中,文件流为服务器从目标文件的下载起始位置读取到的单位传输长度的文件流,单位传输长度为目标网络节点对应的单笔请求流量控制阈值的最小值。
上述用于终端文件交互的流量控制方法中,终端可以通过接收单位传输长度的文件流来获取目标文件,大大减少了目标文件传输的流量负荷,提高了文件传输的稳定性。
在本公开的一些实施例中,如图7所示,所述方法还包括:
步骤A30:获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度。
具体地,终端获取目标文件的总长度,终端可以通过服务器返回的文件流信息中解析获得目标文件的总长度。同时,终端在接收返回的文件流时,对已接收的文件流进行累计获取已接收文件流的长度和。根据已接收的文件流的长度和与目标文件的总长度判断传输进度,已接收的文件流的长度和小于目标文件的总长度时,传输进度为未完成;已接收的文件流的长度和等于目标文件的总长度时,传输进度为完成。
步骤A40:在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置。
具体地,在判断传输未完成的情况下,计算获得更新后的下载起始位置。具体将最末次目标文件的下载起始位置与最末次返回的文件流的长度相加后得到更新后的下载起始位置。
步骤A50:向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
本实施例通过在接收返回的文件流之后判断目标文件的传输进度,在传输未完成的情况下,及时更新下载请求,从更新后的下载起始位置继续获取返回的文件流,保障了文件传输的稳定性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的用于终端文件交互的流量控制方法的用于终端文件交互的流量控制装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个用于终端文件交互的流量控制装置实施例中的具体限定可以参见上文中对于用于终端文件交互的流量控制方法的限定,在此不再赘述。
所述装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本公开实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
在本公开的一些实施例中,如图8所示,提供了一种用于终端文件交互的流量控制装置,所述装置可以为前述服务器,或者集成于所述服务器的模块、组件、器件、单元等。该装置Z00可以包括:
第一下载请求模块Z10,用于接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;
流量阈值模块Z20,用于根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;
单位传输长度模块Z30,用于根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;
返回模块Z40,用于根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端。
在本公开的一些实施例中,如图9所示,所述单位传输长度模块Z30包括:
列表单元Z32,用于根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
查表单元Z34,用于在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
在本公开的一些实施例中,如图10所示,所述返回模块包括:
报文单元,用于将读取到的所述文件流写入返回报文;
所述装置Z00还包括:
列表更新模块Z50,用于更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量;
在本公开的一些实施例中,所述装置还包括监听模块,所述监听模块用于监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;
所述列表更新模块还用于响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在本公开的一些实施例中,所述装置还包括:
键值对模块,用于在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;
如图11所示,所述列表更新模块Z50包括:
事件建立单元Z52,用于响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述量回收事件派发到消息队列;
消息队列单元Z54,用于读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;
流量回收单元Z56,用于从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
在本公开的一些实施例中,所述第一下载请求模块还用于在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
在本公开的一些实施例中,如图12所示,提供了一种用于终端文件交互的流量控制装置,所述装置可以为前述终端,或者集成于所述终端的模块、组件、器件、单元等。该装置X00可以包括:
第二下载请求模块X10,用于向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
文件接收模块X20,用于在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值。
在本公开的一些实施例中,如图13所示,所述装置X00还包括:
传输进度模块X30,用于获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度;
下载起始位置更新模块X40,用于在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置;
所述第二下载请求模块X10还用于向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
上述用于终端文件交互的流量控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。需要说明的是,本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
基于前述用于终端文件交互的流量控制方法的实施例描述,在本公开提供的另一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用于终端文件交互的流量控制方法。
基于前述用于终端文件交互的流量控制方法的实施例描述,在本公开提供的另一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图15所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种用于终端文件交互的流量控制方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
基于前述用于终端文件交互的流量控制方法的实施例描述,在本公开提供的另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
基于前述用于终端文件交互的流量控制方法的实施例描述,在本公开提供的另一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
在本说明书的描述中,参考术语“有些实施例”、“其他实施例”、“理想实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特征包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性描述不一定指的是相同的实施例或示例。
可以理解的是,本说明书中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同/相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。相关之处参见其他方法实施例的描述说明即可。
上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本公开的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开构思的前提下,还可以做出若干变形和改进,这些都属于本公开的保护范围。因此,本公开专利的保护范围应以所附权利要求为准。
Claims (13)
1.一种用于终端文件交互的流量控制方法,其特征在于,所述方法包括:
接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;
根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;
根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;
根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端;
所述将读取到的文件流返回所述终端包括:
将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;
在向所述终端发送所述返回报文之前,所述方法还包括:更新目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量;
所述方法还包括:
监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;
响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量;
所述向所述终端发送所述返回报文之前还包括:
在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;
所述响应于断开与所述终端的网络连接,更新所述目标网络节点列表包括:
响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述流量回收事件派发到消息队列;
读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;
从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度包括:
根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
4.一种用于终端文件交互的流量控制方法,其特征在于,所述方法包括:
向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收所述服务器返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值;
其中,所述接收所述服务器返回的文件流包括:所述服务器将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;在向所述终端发送所述返回报文之前,所述服务器更新根据所述目标网络节点生成的目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量;
所述服务器监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量;
所述接收所述服务器返回的文件流之前还包括:所述服务器在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;所述响应于断开与所述终端的网络连接,更新所述目标网络节点列表包括:响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述流量回收事件派发到消息队列;读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度;
在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置;
向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
6.一种用于终端文件交互的流量控制装置,其特征在于,所述装置包括:
第一下载请求模块,用于接收终端发起的目标文件下载请求,根据所述下载请求中的设备路径信息确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;
流量阈值模块,用于根据所述目标网络节点对应的流量控制规则获取所述目标网络节点对应的文件交互总体流量控制阈值;
单位传输长度模块,用于根据所述目标网络节点获取所述目标网络节点当前的负载流量,在各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,以所述目标网络节点对应的单笔请求流量控制阈值的最小值作为单位传输长度;
返回模块,用于根据所述下载请求,从所述目标文件的下载起始位置读取所述单位传输长度的文件流,将读取到的文件流返回所述终端;
其中,所述返回模块包括:
报文单元,用于将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;
所述装置还包括:
列表更新模块,用于更新目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量;
所述装置还包括监听模块,所述监听模块用于监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;
列表更新模块还用于响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量;
键值对模块,用于在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;
所述列表更新模块包括:
事件建立单元,用于响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述流量回收事件派发到消息队列;
消息队列单元,用于读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;
流量回收单元,用于从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
7.根据权利要求6所述的装置,其特征在于,所述单位传输长度模块包括:
列表单元,用于根据所述目标网络节点生成目标网络节点列表,所述目标网络节点列表包括所述目标网络节点、所述目标网络节点对应的负载流量、所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
查表单元,用于在所述目标网络节点列表中各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,查询所述目标网络节点列表中单笔请求流量控制阈值的最小值,以所述目标网络节点列表中单笔请求流量控制阈值的最小值作为单位传输长度。
8.根据权利要求6所述的装置,其特征在于,所述第一下载请求模块还用于在所述终端判断所述目标文件的传输进度为未完成的情况下,继续接收所述终端发起的更新后的下载请求,更新后的下载请求中包括更新后的下载起始位置信息。
9.一种用于终端文件交互的流量控制装置,其特征在于,所述装置包括:
第二下载请求模块,用于向服务器发送针对目标文件的下载请求,所述下载请求包括所述目标文件信息、设备路径信息、下载起始位置信息;所述下载请求用于指示服务器确定所述终端与服务器之间用于传输所述目标文件的目标网络节点;所述目标网络节点用于指示服务器获取所述目标网络节点对应的文件交互总体流量控制阈值、所述目标网络节点对应的单笔请求流量控制阈值;
文件接收模块,用于在所述服务器判断各个所述目标网络节点的负载流量均未超过所述目标网络节点对应的文件交互总体流量控制阈值的情况下,接收所述服务器返回的文件流;所述文件流为所述服务器从所述目标文件的下载起始位置读取到的单位传输长度的文件流,所述单位传输长度为所述目标网络节点对应的单笔请求流量控制阈值的最小值;
其中,所述接收所述服务器返回的文件流包括:所述服务器将读取到的所述文件流写入返回报文,并向所述终端发送所述返回报文;在向所述终端发送所述返回报文之前,所述服务器更新根据所述目标网络节点生成的目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量增加所述单位传输长度的流量;
所述服务器监听所述返回报文的状态,在所述返回报文发送完成状态下断开与所述终端的网络连接;响应于断开与所述终端的网络连接,更新所述目标网络节点列表,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量;
所述接收所述服务器返回的文件流之前还包括:所述服务器在数据库中新增以所述设备路径信息为关键字、以所述单位传输长度为所述关键字对应取值的键值对记录;所述响应于断开与所述终端的网络连接,更新所述目标网络节点列表包括:响应于断开与所述终端的网络连接,根据所述设备路径信息建立流量回收事件,将所述流量回收事件派发到消息队列;读取所述消息队列中的流量回收事件,根据所述设备路径信息获取对应的所述目标网络节点列表;从数据库中查询所述键值对记录,获取所述设备路径信息对应的单位传输长度,将所述目标网络节点列表中所有的目标网络节点的负载流量减去所述单位传输长度的流量。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
传输进度模块,用于获取所述目标文件的总长度,根据已接收的所述文件流的长度和与所述目标文件的总长度判断传输进度;
下载起始位置更新模块,用于在判断传输未完成的情况下,读取最末次所述下载请求中所述目标文件的下载起始位置信息,并获取最末次返回的所述文件流的长度,将最末次所述目标文件的下载起始位置与最末次返回的所述文件流的长度相加后得到更新后的下载起始位置;
所述第二下载请求模块还用于向服务器发送更新后的下载请求,直至判断所述目标文件的传输进度为完成状态;所述更新后的下载请求中的下载起始位置信息为更新后的下载起始位置信息。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210339736.6A CN114710449B (zh) | 2022-04-01 | 2022-04-01 | 用于终端文件交互的流量控制方法、装置、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210339736.6A CN114710449B (zh) | 2022-04-01 | 2022-04-01 | 用于终端文件交互的流量控制方法、装置、计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114710449A CN114710449A (zh) | 2022-07-05 |
CN114710449B true CN114710449B (zh) | 2024-04-30 |
Family
ID=82173044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210339736.6A Active CN114710449B (zh) | 2022-04-01 | 2022-04-01 | 用于终端文件交互的流量控制方法、装置、计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114710449B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587222A (zh) * | 2018-11-12 | 2019-04-05 | 厦门安胜网络科技有限公司 | 一种文件碎片化传输的方法、装置及存储介质 |
CN114125931A (zh) * | 2020-08-31 | 2022-03-01 | 华为技术有限公司 | 流量调节方法、装置和网络设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108432337B (zh) * | 2015-10-13 | 2021-05-07 | 华为技术有限公司 | 一种用于管理向用户设备分发多个文件的基站和方法 |
CN109862065B (zh) * | 2018-12-06 | 2021-09-14 | 北京字节跳动网络技术有限公司 | 文件下载方法、装置和电子设备 |
-
2022
- 2022-04-01 CN CN202210339736.6A patent/CN114710449B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587222A (zh) * | 2018-11-12 | 2019-04-05 | 厦门安胜网络科技有限公司 | 一种文件碎片化传输的方法、装置及存储介质 |
CN114125931A (zh) * | 2020-08-31 | 2022-03-01 | 华为技术有限公司 | 流量调节方法、装置和网络设备 |
Non-Patent Citations (1)
Title |
---|
基于文件分时索引的大规模流量实时IoT终端识别算法;徐彭娜等;《计算机系统应用》;20210228;第30卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114710449A (zh) | 2022-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101871383B1 (ko) | 계층적 데이터 구조의 노드 상에서 재귀적 이벤트 리스너를 사용하기 위한 방법 및 시스템 | |
CN111400334B (zh) | 数据处理方法、装置、存储介质及电子装置 | |
US20160277537A1 (en) | Method and device for the management of applications | |
CN111209120A (zh) | 微服务的数据同步方法、装置及计算机可读存储介质 | |
CN110049091A (zh) | 数据存储方法及装置、电子设备、存储介质 | |
CN114710449B (zh) | 用于终端文件交互的流量控制方法、装置、计算机设备 | |
CN117151045A (zh) | 基于区块链的报表加工方法、装置及计算机设备 | |
CN116594834A (zh) | 一种用于多协议服务器的运维数据处理方法及装置 | |
CN114070847A (zh) | 服务器的限流方法、装置、设备及存储介质 | |
CN115914404A (zh) | 集群流量管理方法、装置、计算机设备和存储介质 | |
CN113779412B (zh) | 一种基于区块链网络的消息触达方法、节点和系统 | |
CN115878625A (zh) | 数据处理方法和装置及电子设备 | |
CN115118612A (zh) | 资源配额管理方法、装置、计算机设备和存储介质 | |
CN110347751B (zh) | 管理cdn系统业务属性的方法及装置 | |
US11449549B2 (en) | Storing entries as ordered linked lists | |
CN116708245A (zh) | 一种接口控制方法、装置、计算机设备 | |
CN117390078B (zh) | 数据处理方法、装置、存储介质和计算机设备 | |
WO2024114340A1 (zh) | 多物流场景的数字孪生模型构建方法、装置、设备及介质 | |
CN116541145A (zh) | 数据调用方法、装置、计算机设备和计算机存储介质 | |
CN117076498A (zh) | 业务数据管理方法、装置、计算机设备和存储介质 | |
CN118035052A (zh) | 一种断点事件的处理方法、装置、计算机设备 | |
US10642844B2 (en) | Non-materialized tables with standing queries | |
CN117932186A (zh) | 页面实例管理方法、装置、计算机设备和存储介质 | |
CN115794807A (zh) | 数据更新方法、装置、设备、存储介质和计算机程序产品 | |
CN117648336A (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 |