CN113301101A - 分布式文件***的数据传输方法以及装置 - Google Patents
分布式文件***的数据传输方法以及装置 Download PDFInfo
- Publication number
- CN113301101A CN113301101A CN202110136104.5A CN202110136104A CN113301101A CN 113301101 A CN113301101 A CN 113301101A CN 202110136104 A CN202110136104 A CN 202110136104A CN 113301101 A CN113301101 A CN 113301101A
- Authority
- CN
- China
- Prior art keywords
- data
- node
- file
- handle
- long connection
- 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.)
- Granted
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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书实施例提供分布式文件***的数据传输方法以及装置,其中,应用于数据传出节点的分布式文件***的数据传输方法包括:获取需要传输到数据接收节点的数据;针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;锁定所述长连接;将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;解锁所述长连接。
Description
技术领域
本说明书实施例涉及计算机技术领域,特别涉及分布式文件***的数据传输方法。本说明书一个或者多个实施例同时涉及分布式文件***的数据传输装置,计算设备,以及计算机可读存储介质。
背景技术
分布式文件***是建立在网络之上的软件***,包括多个通过网络连接的节点。这些节点协同工作,并对外隐藏内部的拓补结构,向外部提供类似于一般软件***的功能。分布式文件***对外提供文件***的服务,内部将数据存储在多个节点上,外界获取数据时,分布式文件***可能会从多个节点中获取数据,并将其组成完整的数据返回给用户。在一些场景下,分布式文件***需要将数据从一个节点传输到另一个节点。例如,当外界获取数据时,可以从多个节点获取数据,再向外界返回其组成完整的数据。再例如,一个节点需要关闭时,该节点独有的数据需要传输到其他节点以保证数据的完整性。又例如,一节点的存储空间不足的情况下,为了避免发生故障,可以将这个节点的部分数据传输到其他节点,以减少该节点的负载压力。
可见,分布式文件***中存在大量的节点间数据传输,对分布式文件***性能具有较大影响。因此,如何进行数据传输能够减少分布式文件***的负载,避免数据传输延迟,是迫切需要解决的重要问题。
发明内容
有鉴于此,本说明书实施例提供了分布式文件***的数据传输方法。本说明书一个或者多个实施例同时涉及分布式文件***的数据传输装置,计算设备,以及计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种分布式文件***的数据传输方法,应用于数据传出节点,所述方法包括:获取需要传输到数据接收节点的数据;针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;锁定所述长连接;将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;解锁所述长连接。
可选地,所述数据传出节点设置有句柄池,所述句柄池,用于缓存文件的文件句柄;所述获取需要传输到数据接收节点的数据包括:针对所述数据,判断所述句柄池中是否存在对应文件的文件句柄;如果存在,从所述句柄池中获取对应文件的文件句柄;如果不存在,打开对应文件的文件句柄,将对应文件的文件句柄放入所述句柄池;利用对应文件的文件句柄获取所述数据。
可选地,还包括:记录所述句柄池中的文件句柄的最新使用时间;在至少一个文件句柄的最新使用时间距当前时间的时间间隔达到预设关闭时间间隔范围的情况下,关闭所述至少一个文件句柄。
可选地,还包括:在所述句柄池中的文件句柄的数量达到预设关闭数量范围的情况下,从所述句柄池中选择至少一个文件句柄,关闭所述至少一个文件句柄。
可选地,在针对所述数据构造一个数据包之前,还包括:判断所述数据传出节点与所述数据接收节点之间是否已经建立了长连接;如果否,则在所述数据传出节点与所述数据接收节点之间建立至少一条长连接。
可选地,所述获取需要传输到数据接收节点的数据包括:获取需要传输到数据接收节点的实际数据;获取所述实际数据的校验数据。所述针对所述数据构造一个数据包包括:根据所述实际数据以及所述校验数据的长度之和,确定所述数据包的头部信息中的长度信息;利用所述实际数据、所述校验数据、所述长度信息,构造出一个数据包。
根据本说明书实施例的第二方面,提供了一种分布式文件***的数据传输装置,配置于数据传出节点,所述装置包括:数据获取模块,被配置为获取需要传输到数据接收节点的数据。数据包构造模块,被配置为针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息。连接锁定模块,被配置为锁定所述长连接。数据发送模块,被配置为将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据。连接解锁模块,被配置为解锁所述长连接。
根据本说明书实施例的第三方面,提供了一种分布式文件***的数据传输方法,应用于数据接收节点,所述方法包括:通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的一个数据包、且在针对所述数据包锁定所述长连接的情况下发出的;根据所述长度信息,通过所述长连接接收对应长度的数据。
根据本说明书实施例的第四方面,提供了一种分布式文件***的数据传输装置,配置于数据接收节点,所述装置包括:头部接收模块,被配置为通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,其中,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的一个数据包、且在针对所述数据包锁定所述长连接的情况下发出的。数据接收模块,被配置为根据所述长度信息,通过所述长连接接收对应长度的数据。
根据本说明书实施例的第五方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:获取需要传输到数据接收节点的数据;针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;锁定所述长连接;将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;解锁所述长连接。
根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现本说明书任意实施例所述应用于数据传出节点的分布式文件***的数据传输方法的步骤。
根据本说明书实施例的第七方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:通过数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的一个数据包、且在针对所述数据包锁定所述长连接的情况下发出的;根据所述长度信息,通过所述长连接接收对应长度的数据。
根据本说明书实施例的第八方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现本说明书实施例所述应用于数据接收节点的分布式文件***的数据传输方法的步骤。
本说明书一个实施例提供了分布式文件***的数据传输方法,由于数据传出节点与数据接收节点之间建立了长连接,不会随任务改变而销毁,因此不必耗费时间频繁建立连接。而且数据传出节点针对本次需要传输到数据接收节点的全部数据构造一个数据包,从而不必拆分数据来构造头部信息占了较大比例的多个数据包,有效提高传输效率,减少对***资源以及网络资源的占用。由于数据包的头部信息中包括数据的长度信息,数据接收节点可以根据长度信息完整接收本次传输的数据,且数据传出节点在发数据包之前,锁定本次传输使用的长连接,能够有效防止长连接在传输过程中被其他任务占用导致数据包不连续,因此,能够保证数据传输的成功完成。可见,根据本说明书实施例提供的分布式文件***的数据传输方法,节点间的数据传输耗费传播时间少,传输效率高,对***资源以及网络资源占用少,能够有效减少***的负载以及避免数据传输延迟。
附图说明
图1是本说明书一个实施例提供的应用于数据传出节点的分布式文件***的数据传输方法;
图2是本说明书一个实施例提供的读取本地磁盘文件的处理过程流程图;
图3是本说明书一个实施例提供的应用于数据传出节点的分布式文件***的数据传输方法的处理过程流程图;
图4是本说明书一个实施例提供的配置于数据传出节点的分布式文件***的数据传输装置的结构示意图;
图5是本说明书另一个实施例提供的配置于数据传出节点的分布式文件***的数据传输装置的结构示意图;
图6是本说明书一个实施例提供的应用于数据接收节点的分布式文件***的数据传输方法;
图7是本说明书一个实施例提供的应用于数据传出节点的分布式文件***的数据传输方法的处理过程流程图;
图8是本说明书一个实施例提供的配置于数据接收节点的分布式文件***的数据传输装置的结构示意图;
图9是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含至少一个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
分布式***(Distributed system):分布式***是建立在网络之上的软件***,由多个通过网络连接的节点组成,这些节点协同工作,并对外隐藏内部的拓补结构,向外部提供类似于一般软件***的功能。正是因为软件的特性,所以分布式***具有高度的内聚性和透明性。
文件***(File System):文件***对外提供存储数据的服务,外界将数据以文件的形式存储在文件***中,并给每个文件命名,之后通过文件名的访问文件***中的数据。
分布式文件***(Distributed File System):分布式文件***是分布式***的一种。分布式文件***对外提供文件***的服务,但内部将数据存储在多个节点上,外界获取数据时,分布式文件***可能会从多个节点中获取数据,并将其组成完整的数据返回给用户。
节点(Node):构成分布式***的基本单元。一个分布式***可能由众多节点构成。节点承担了管理计算与存储资源的职责。典型的分布式***中一个节点代表一台运行了相应分布式软件的计算机服务器。
传播时间(Travel Time):一个节点传输一条信息到另一个节点,因数据需要在网络中传输,另一个节点并不是立即开始收到数据,而是会延迟一段时间才开始收到,这个延迟的时间称为传播时间,传播时间一般等于两个节点间网络通讯的延迟。
TCP连接(TCP Connection):一种可靠的传输协议,两个节点建立TCP连接,然后就可以通过该连接传输任意的计算机数据,它可以确保接收数据的节点收到的数据内容、顺序和传出节点发送的完全一致。为了能够在两个节点间在建立TCP连接,两个节点需要彼此传输一些通知信息,这些通知信息的传输至少会耗费三个传播时间。
校验数据(Checksum Data):用于检查实际传输数据是否正确而需要的额外数据,该数据比实际数据小得多,但如果实际数据损坏,可以通过校验数据得知损坏的事实,从而提醒使用者不要使用这些数据。
数据校验(Checksum Task):使用校验数据校验实际数据,确定实际数据没有损坏。
文件句柄(Handle):当一台计算机需要打开本地的一个文件时,其需要一个文件句柄,这个文件句柄就对应这次打开的这个文件,一般来说,一台计算机打开和关闭一个文件句柄,是需要资源开销的,并且,一台计算机同时打开的文件句柄数量是有限的。
本地(Local):指在这台节点内部的元素,节点需要访问本地的资源,不需要通过网络联络其他节点。
本地磁盘(Local Disk):指安装在当前节点的存储设备,例如安装在当前节点的硬盘,其主要特性是它在当前节点内部,当前节点访问本地磁盘的数据不需要通过网络访问其他节点。
在本说明书中,提供了分布式文件***的数据传输方法,本说明书同时涉及分布式文件***的数据传输装置,计算设备,以及计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本说明书一个实施例提供的应用于数据传出节点的分布式文件***的数据传输方法的流程图。包括步骤102至步骤110。
步骤102:获取需要传输到数据接收节点的数据。
步骤104:针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息。
步骤106:锁定所述长连接。
例如,当一个节点需要传数据给另一个节点时,可以先搜索是否已经与对方节点建立长连接,如果没有,则建立一条,并将该连接缓存起来以便下次查找。传输数据时,可以先锁定这条长连接,防止其他线程同时使用这条长连接传出数据造成数据污染。可以理解的是,一条长连接是可以同时传出和传入数据的。
锁定的具体实现方式不限。例如,可以给每条长连接设置一个互斥锁,当需要使用一条长连接传出数据时,数据传出节点可以先判断该长连接的互斥锁是否处于解锁状态,如果是,则获取这条长连接的互斥锁,获取到之后传输数据,传输完毕后释放互斥锁。
步骤108:将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据。
步骤110:解锁所述长连接。
由于本说明书实施例提供的分布式文件***的数据传输方法中,数据传出节点与数据接收节点之间建立了长连接,不会随任务改变而销毁,因此不必耗费时间频繁建立连接。而且数据传出节点针对本次需要传输到数据接收节点的全部数据构造一个数据包,从而不必拆分数据来构造头部信息占了较大比例的多个数据包,有效提高传输效率,减少对***资源以及网络资源的占用。由于数据包的头部信息中包括数据的长度信息,数据接收节点可以根据长度信息完整接收本次传输的数据,且数据传出节点在发数据包之前,锁定本次传输使用的长连接,能够有效防止长连接在传输过程中被其他任务占用导致数据包不连续,因此,能够保证数据传输的成功完成。可见,根据本说明书实施例提供的分布式文件***的数据传输方法,节点间的数据传输耗费传播时间少,传输效率高,对***资源以及网络资源占用少,能够有效减少***的负载以及避免数据传输延迟。
可以理解的是,数据传出节点在构造数据包时,需要读取本地存储的数据,本地数据存储在文件中,因此,数据传出节点需要得到对应文件的文件句柄,然后通过该文件句柄去读取文件中的内容。为了避免每次读取任务都需要打开和关闭对应文件的文件句柄,进一步减少***开销,本说明书一个或多个实施例中,可以在数据传出节点设置句柄池以缓存文件句柄,从而当多个读取任务涉及到同一个文件的数据时,可以通过复用句柄池中的文件句柄来减少对文件句柄的打开和关闭次数,减少打开和关闭文件句柄的***开销。具体地,例如,所述获取需要传输到数据接收节点的数据可以包括:针对所述数据,判断所述句柄池中是否存在对应文件的文件句柄;如果存在,从所述句柄池中获取对应文件的文件句柄;如果不存在,打开对应文件的文件句柄,将对应文件的文件句柄放入所述句柄池;利用对应文件的文件句柄获取所述数据。其中,所述句柄池的具体实现方式不限,例如,可以采用LRU算法,Caffine算法等。
根据上述实施例,当需要得到一个文件的文件句柄时,可以先从句柄池中寻找,如果句柄池中缓存了该文件的文件句柄,则可以从中读取出对应文件句柄快速获取数据,如果句柄池中没有,则可以打开该文件的文件句柄,并将其放入句柄池中。为了使结合句柄池读取本地磁盘文件的过程更加易于理解,下面结合图2所示的读取本地磁盘文件的处理过程进行详细说明。例如:读取本地磁盘文件的处理过程可以包括:步骤202-步骤212。
步骤202:判断句柄池中是否已有该文件对应的文件句柄。
步骤204:如果是,则从句柄池获取所需文件的文件句柄。
步骤206:使用该文件句柄读取文件的数据。
步骤208:如果否,则打开一个对应该文件的文件句柄。
步骤210:将该文件句柄放入句柄池,进入步骤206.
步骤212:在数据读取结束时,文件句柄在句柄池中,可能被再次使用,因此并不关闭该文件句柄,结束该读取本地磁盘文件的过程。
可见,数据传出节点读取任务结束并不关闭该文件句柄,而是使其在句柄池中等待复用。如果同时有多个传输任务都需要读取同一个文件,由于文件句柄是可以复用的,句柄池提供的对应该文件的文件句柄是同一个文件句柄,这样也不用同时打开多个对应同一文件的文件句柄,有效减少了***的开销。
为了避免文件句柄数超过节点可支持的最大数量,本说明书一个或多个实施例中,可以将句柄池中一定时间没有用到的文件句柄关闭。具体地,例如,所述方法还可以包括:记录所述句柄池中的文件句柄的最新使用时间;在至少一个文件句柄的最新使用时间距当前时间的时间间隔达到预设关闭时间间隔范围的情况下,关闭所述至少一个文件句柄。又例如,还可以在所述句柄池中的文件句柄的数量达到预设关闭数量范围的情况下,从所述句柄池中选择至少一个文件句柄,关闭所述至少一个文件句柄。可见,该实施例中可以将句柄池中一定时间没有用到的文件句柄关闭,和/或者,根据句柄池的容量限制,在达到预设关闭数量范围的情况下,为了容纳新文件句柄放入句柄池,可以根据一些预设的策略选择至少一个文件句柄将其关闭,从而避免文件句柄数超过节点可支持的最大数。
本说明书一个或多个实施例中,为了保证在发送数据包之前已经存在可用长连接,在针对所述数据构造一个数据包之前,还包括:判断所述数据传出节点与所述数据接收节点之间是否已经建立了长连接;如果否,则在所述数据传出节点与所述数据接收节点之间建立至少一条长连接。可以理解的是,本说明书实施例中传输数据的任两个节点之间,可以维护一条持久的TCP长连接,也可以维护多条持久的TCP长连接,只要是持久的TCP长连接,不会因为一次传输结束就销毁即可。
需要说明的是,本说明书实施例提供的方法中,传输到数据接收节点的数据至少包括实际使用的实际数据。为了保证对方接收的数据正确有效,传输到数据接收节点的数据还可以进一步包括校验数据,以校验实际数据是否正确。其中,校验数据的生成方法不限。具体地,例如,所述获取需要传输到数据接收节点的数据可以包括:获取需要传输到数据接收节点的实际数据;获取所述实际数据的校验数据。所述针对所述数据构造一个数据包包括:根据所述实际数据以及所述校验数据的长度之和,确定所述数据包的头部信息中的长度信息;利用所述实际数据、所述校验数据、所述长度信息,构造出一个数据包。在该实施例中,数据接收节点可以利用校验数据进行数据校验工作,确认数据包没有损坏后,确定本次传输所需的所有数据包都完整收到。
下述结合附图3,对结合了上述多个实施例的分布式文件***的数据传输方法进行进一步说明。其中,图3示出了本说明书一个实施例提供的一种分布式文件***的数据传输方法的处理过程流程图,具体步骤包括步骤302至步骤332。
步骤302:记录所述句柄池中的文件句柄的最新使用时间。
步骤304:在至少一个文件句柄的最新使用时间距当前时间的时间间隔达到预设关闭时间间隔范围的情况下,关闭所述至少一个文件句柄。
步骤306:在所述句柄池中的文件句柄的数量达到预设关闭数量范围的情况下,从所述句柄池中选择至少一个文件句柄。
步骤308:关闭所述至少一个文件句柄。
步骤310:根据需要传输到数据接收节点的数据,判断所述句柄池中是否存在对应文件的文件句柄。
步骤312:如果存在,从所述句柄池中获取对应文件的文件句柄。
步骤314:如果不存在,打开对应文件的文件句柄,将对应文件的文件句柄放入所述句柄池。
步骤316:利用对应文件的文件句柄获取实际数据。
步骤318:获取所述实际数据的校验数据。
步骤320:根据所述实际数据以及所述校验数据的长度之和,确定所述数据包的头部信息中的长度信息。
步骤322:利用所述实际数据、所述校验数据、所述长度信息,构造出一个数据包。
步骤324:判断所述数据传出节点与所述数据接收节点之间是否已经建立了长连接。
步骤326:如果否,则在所述数据传出节点与所述数据接收节点之间建立至少一条长连接。
步骤328:锁定一条长连接。
步骤330:将所述数据包通过锁定的长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据。
步骤332:解锁所述长连接。
下面,以节点A为数据传出节点,节点B为数据接收节点为例,结合上述流程对数据传输过程进行示意性说明:
假设节点A和节点B间建立了一条长期的TCP连接。该长连接可以自节点A和节点B首次进行数据传输时建立,之后两节点的数据传输均通过该条TCP连接进行,可以不必额外建立新的TCP连接,当然如果有其他需要,也可以建立新的TCP连接,本说明书实施例提供的方法对此并不进行限制。
对于节点A来说,数据传输之前,节点A将所需实际数据及校验数据都准备好,并构造好头部信息。可以理解的是,头部信息中可以包括数据长度信息以及本次传输的一些身份指示信息。身份指示信息,可以用于帮助节点B确定本次任务传输的数据身份,例如所属业务、所属文件名称等。准备传输数据时,节点A先锁定该TCP连接。锁定后,这条TCP连接将不可以被其他任务占用。然后,节点A通过该TCP连接一次性地将头部数据、实际数据、校验数据全部写入TCP传输的缓冲区,然后,节点A解锁这条TCP连接,使得其可以被其他任务使用。
其中,节点A在构造数据包时,也即准备校验数据和准备实际数据时,需要读取本地存储的数据。本地数据存储在文件中,因此,需要得到对应文件的文件句柄,然后通过该文件句柄去读取文件中的内容。为了避免每次读取任务都需要打开和关闭对应文件的文件句柄,节点A上设置了一个句柄池,当需要得到一个文件的文件句柄时,节点A可以先从句柄池中寻找,如果句柄池中没有,则打开一个新的文件句柄,并将其放入句柄池中。读取任务结束后,并不立即关闭该文件句柄,因为该文件句柄还在句柄池中。如果同时有多个传输任务都需要读取同一个文件,由于文件句柄是可以复用的,句柄池提供的对应该文件的文件句柄是同一个文件句柄,这样也不用同时打开多个对应同一文件的文件句柄。为了避免文件句柄数超过一个节点可支持的最大数量,句柄池会将一定时间没有用到的文件句柄关闭。句柄池还有容量限制,如果容量已达最大值,还有新文件句柄放入句柄池,句柄池会根据自身的策略选择一个文件句柄关闭它。
对于节点B来说,节点B则可以重复不断地在这条TCP连接上接收数据。节点B首先可以接收到一个头部信息,然后根据头部信息中的数据长度,在这条TCP连接上接收对应长度的数据,然后根据头部信息中的身份指示信息将这些数据交给相应处理模块执行处理,这样,节点B可以继续在这条TCP连接上接收下一个头部信息,继续接收数据。
可见,通过结合了上述多个实施例的分布式文件***的数据传输方法,分布式***任意两个需要数据传输的节点间维护了一条持久的TCP连接,从而不会因为传输任务的增加而需要***维护更多的TCP连接,避免了频繁建立连接所带来的每次传输都需要的三个传播时间的延迟,减少了数据传输的延迟,可以理解的是,对于很少量的数据传输任务而言,延迟的影响会对***有明显的影响。而且,本方案对于两个节点间需要传输的数据,只构造一个头部信息,减少了数据传输量。另外,数据传出节点还设置有句柄池缓存句柄,从而减少文件句柄的打开和关闭次数,减少打开和关闭句柄的***开销。
与上述方法实施例相对应,本说明书还提供了配置于数据传出节点的分布式文件***的数据传输装置实施例。图4示出了本说明书一个实施例提供的配置于数据传出节点的分布式文件***的数据传输装置的结构示意图。如图4所示,该装置包括:数据获取模块402、数据包构造模块404、连接锁定模块406、数据发送模块408及连接解锁模块410。
该数据获取模块402,可以被配置为获取需要传输到数据接收节点的数据。
该数据包构造模块404,可以被配置为针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息。
该连接锁定模块406,可以被配置为锁定所述长连接。
该数据发送模块408,可以被配置为将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据。
该连接解锁模块410,可以被配置为解锁所述长连接。
由于本说明书实施例提供的分布式文件***的数据传输装置中,数据传出节点与数据接收节点之间建立了长连接,不会随任务改变而销毁,因此不必耗费时间频繁建立连接。而且数据传出节点针对本次需要传输到数据接收节点的全部数据构造一个数据包,从而不必拆分数据来构造头部信息占了较大比例的多个数据包,有效提高传输效率,减少对***资源以及网络资源的占用。由于数据包的头部信息中包括数据的长度信息,数据接收节点可以根据长度信息完整接收本次传输的数据,且数据传出节点在发数据包之前,锁定本次传输使用的长连接,能够有效防止长连接在传输过程中被其他任务占用导致数据包不连续,因此,能够保证数据传输的成功完成。可见,根据本说明书实施例提供的分布式文件***的数据传输装置,节点间的数据传输耗费传播时间少,传输效率高,对***资源以及网络资源占用少,能够有效减少***的负载以及避免数据传输延迟。
图5示出了本说明书另一个实施例提供的配置于数据传出节点的分布式文件***的数据传输装置的结构示意图。在该实施例中,所述数据传出节点可以设置有句柄池,所述句柄池,可以用于缓存文件的文件句柄。如图5所示,该装置的数据获取模块402可以包括:句柄判断子模块4022、句柄获取子模块4024、句柄打开子模块4026及数据获取子模块4028。
该句柄判断子模块4022,可以被配置为针对所述数据,判断所述句柄池中是否存在对应文件的文件句柄。
该句柄获取子模块4024,可以被配置为如果所述句柄判断子模块4022判定存在,从所述句柄池中获取对应文件的文件句柄。
该句柄打开子模块4026,可以被配置为如果所述句柄判断子模块4022判定不存在,打开对应文件的文件句柄,将对应文件的文件句柄放入所述句柄池。
该数据获取子模块4028,可以被配置为数据利用对应文件的文件句柄获取所述数据。
在该实施例中,通过在数据传出节点设置句柄池以缓存文件句柄,从而当多个读取任务涉及到同一个文件的数据时,可以通过复用句柄池中的文件句柄来减少对文件句柄的打开和关闭次数,减少打开和关闭文件句柄的***开销。
为了避免文件句柄数超过节点可支持的最大数量,本说明书一个或多个实施例中,可以将句柄池中一定时间没有用到的文件句柄关闭。具体地,例如,如图5所示,该装置还可以包括:时间记录模块412及句柄关闭模块414。
该时间记录模块412,可以被配置为记录所述句柄池中的文件句柄的最新使用时间。
该句柄关闭模块414,可以被配置为在至少一个文件句柄的最新使用时间距当前时间的时间间隔达到预设关闭时间间隔范围的情况下,关闭所述至少一个文件句柄。
又例如,所述句柄关闭模块414,可以被配置为在所述句柄池中的文件句柄的数量达到预设关闭数量范围的情况下,从所述句柄池中选择至少一个文件句柄,关闭所述至少一个文件句柄。
本说明书一个或多个实施例中,为了保证在发送数据包之前已经存在可用长连接,如图5所示,所述装置还可以包括:连接判断模块416及连接建立模块418。
该连接判断模块416,可以被配置为判断所述数据传出节点与所述数据接收节点之间是否已经建立了长连接。
该连接建立模块418,可以被配置为如果所述连接判断模块416判定为否,则在所述数据传出节点与所述数据接收节点之间建立至少一条长连接。
需要说明的是,传输到数据接收节点的数据至少包括实际使用的实际数据。为了保证对方接收的数据正确有效,传输到数据接收节点的数据还可以进一步包括校验数据,以校验实际数据是否正确。具体地,如图5所示,所述装置的数据获取模块402可以包括:实际数据获取子模块4021及校验数据获取子模块4023。
该实际数据获取子模块4021,可以被配置为获取需要传输到数据接收节点的实际数据。
该校验数据获取子模块4023,可以被配置为获取所述实际数据的校验数据。
相应地,在该实施例中,所述数据包构造模块404可以包括:长度确定子模块4042及数据包构造子模块4044。
该长度确定子模块4042,可以被配置为根据所述实际数据以及所述校验数据的长度之和,确定所述数据包的头部信息中的长度信息。
该数据包构造子模块4044,可以被配置为利用所述实际数据、所述校验数据、所述长度信息,构造出一个数据包。
在该实施例中,数据接收节点可以利用校验数据进行数据校验工作,确认数据包没有损坏后,确定本次传输所需的所有数据包都完整收到。
上述为本实施例的配置于数据传出节点的分布式文件***的数据传输装置的示意性方案。需要说明的是,该配置于数据传出节点的分布式文件***的数据传输装置的技术方案与上述的应用于数据传出节点的分布式文件***的数据传输方法的技术方案属于同一构思,分布式文件***的数据传输装置的技术方案未详细描述的细节内容,均可以参见上述分布式文件***的数据传输方法的技术方案的描述。
图6示出了根据本说明书一个实施例提供的应用于数据接收节点的分布式文件***的数据传输方法的流程图。包括步骤602至步骤604。
步骤602:通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息。
其中,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的。
步骤604:根据所述长度信息,通过所述长连接接收对应长度的数据。
为了有效提高数据接收节点的接收效率,本说明书一个或多个实施例中,所述数据接收节点可以通过单线程从所述长连接接收数据,所述方法还包括:在所述单线程完成本次传输的数据的接收,且将所述本次传输的数据提交给处理模块以便所述处理模块执行对应处理之后,继续从所述长连接接收数据。
由于本说明书实施例提供的分布式文件***的数据传输方法中,数据传出节点与数据接收节点之间建立了长连接,不会随任务改变而销毁,因此不必耗费时间频繁建立连接。而且数据传出节点针对本次需要传输到数据接收节点的全部数据构造一个数据包,从而不必拆分数据来构造头部信息占了较大比例的多个数据包,有效提高传输效率,减少对***资源以及网络资源的占用。由于数据包的头部信息中包括数据的长度信息,数据接收节点可以根据长度信息完整接收本次传输的数据,且数据传出节点在发数据包之前,锁定本次传输使用的长连接,能够有效防止长连接在传输过程中被其他任务占用导致数据包不连续,因此,能够保证数据传输的成功完成。可见,根据本说明书实施例提供的分布式文件***的数据传输方法,节点间的数据传输耗费传播时间少,传输效率高,对***资源以及网络资源占用少,能够有效减少***的负载以及避免数据传输延迟。
下述结合附图7,对结合了上述多个实施例的应用于数据接收节点的分布式文件***的数据传输方法进行进一步说明。其中,图7示出了本说明书一个实施例提供的应用于数据接收节点的分布式文件***的数据传输方法的处理过程流程图,该流程由数据接收节点的一个单线程来执行。具体步骤包括步骤702至步骤718。
步骤702:判断TCP长连接中会否存在待接收的数据。
步骤704:等待TCP长连接中有待接收的数据。
步骤706:如果是,通过该TCP长连接接收头部信息。
步骤708:根据所述头部信息中的长度信息接收实际数据以及校验数据。
步骤710:利用校验数据对实际数据进行校验。
步骤712:根据校验结果判断所述实际数据是否正确。
步骤714:如果正确,根据头部信息中的身份指示信息,将实际数据交给对应处理模块,以便处理模块执行处理。
步骤716:如果不正确,要求数据传出节点重新传输数据。
步骤718:判断分布式文件***是否关闭。
如果否,重新回到步骤702以便继续接收数据。
与上述方法实施例相对应,本说明书还提供了配置于数据接收节点的分布式文件***的数据传输装置实施例。图8示出了本说明书一个实施例提供的配置于数据接收节点的分布式文件***的数据传输装置的结构示意图。如图8所示,该装置包括:头部接收模块802及数据接收模块804。
该头部接收模块802,可以被配置为通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息。
其中,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的一个数据包、且在针对所述数据包锁定所述长连接的情况下发出的。
该数据接收模块804,可以被配置为根据所述长度信息,通过所述长连接接收对应长度的数据。
可见,根据本说明书实施例提供的分布式文件***的数据传输装置,节点间的数据传输耗费传播时间少,传输效率高,对***资源以及网络资源占用少,能够有效减少***的负载以及避免数据传输延迟。
上述为本实施例的配置于数据接收节点的分布式文件***的数据传输装置的示意性方案。需要说明的是,该配置于数据接收节点的分布式文件***的数据传输装置的技术方案与上述的应用于数据接收节点的分布式文件***的数据传输方法的技术方案属于同一构思,分布式文件***的数据传输装置的技术方案未详细描述的细节内容,均可以参见上述分布式文件***的数据传输方法的技术方案的描述。
图9示出了根据本说明书一个实施例提供的一种计算设备900的结构框图。该计算设备900的部件包括但不限于存储器910和处理器920。处理器920与存储器910通过总线930相连接,数据库950用于保存数据。
计算设备900还包括接入设备940,接入设备940使得计算设备900能够经由至少一个网络960通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备940可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的至少一个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备900的上述部件以及图9中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图9所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备900可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备900还可以是移动式或静止式的服务器。
一方面,处理器920用于执行如下计算机可执行指令:
在数据传出节点上,获取需要传输到数据接收节点的数据;
针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;
锁定所述长连接;
将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;
解锁所述长连接。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的应用于数据传出节点的分布式文件***的数据传输方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述应用于数据传出节点的分布式文件***的数据传输方法的技术方案的描述。
另一方面,处理器920用于执行如下计算机可执行指令:
在数据接收节点上,通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的;
根据所述长度信息,通过所述长连接接收对应长度的数据。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的应用于数据接收节点的分布式文件***的数据传输方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述应用于数据接收节点的分布式文件***的数据传输方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
在数据传出节点上,获取需要传输到数据接收节点的数据;
针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;
锁定所述长连接;
将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;
解锁所述长连接。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的应用于数据传出节点的分布式文件***的数据传输方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述应用于数据传出节点的分布式文件***的数据传输方法的技术方案的描述。
本说明书一实施例还提供另一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
在数据接收节点上,通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的;
根据所述长度信息,通过所述长连接接收对应长度的数据。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的应用于数据接收节点的分布式文件***的数据传输方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述应用于数据接收节点的分布式文件***的数据传输方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (13)
1.一种分布式文件***的数据传输方法,应用于数据传出节点,所述方法包括:
获取需要传输到数据接收节点的数据;
针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;
锁定所述长连接;
将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;
解锁所述长连接。
2.根据权利要求1所述的方法,所述数据传出节点设置有句柄池,所述句柄池,用于缓存文件的文件句柄;所述获取需要传输到数据接收节点的数据包括:
针对所述数据,判断所述句柄池中是否存在对应文件的文件句柄;
如果存在,从所述句柄池中获取对应文件的文件句柄;
如果不存在,打开对应文件的文件句柄,将对应文件的文件句柄放入所述句柄池;
利用对应文件的文件句柄获取所述数据。
3.根据权利要求2所述的方法,还包括:
记录所述句柄池中的文件句柄的最新使用时间;
在至少一个文件句柄的最新使用时间距当前时间的时间间隔达到预设关闭时间间隔范围的情况下,关闭所述至少一个文件句柄。
4.根据权利要求2所述的方法,还包括:
在所述句柄池中的文件句柄的数量达到预设关闭数量范围的情况下,从所述句柄池中选择至少一个文件句柄,关闭所述至少一个文件句柄。
5.根据权利要求1所述的方法,在针对所述数据构造一个数据包之前,还包括:
判断所述数据传出节点与所述数据接收节点之间是否已经建立了长连接;
如果否,则在所述数据传出节点与所述数据接收节点之间建立至少一条长连接。
6.根据权利要求1所述的方法,所述获取需要传输到数据接收节点的数据包括:
获取需要传输到数据接收节点的实际数据;
获取所述实际数据的校验数据;
所述针对所述数据构造一个数据包包括:
根据所述实际数据以及所述校验数据的长度之和,确定所述数据包的头部信息中的长度信息;
利用所述实际数据、所述校验数据、所述长度信息,构造出一个数据包。
7.一种分布式文件***的数据传输装置,配置于数据传出节点,所述装置包括:
数据获取模块,被配置为获取需要传输到数据接收节点的数据;
数据包构造模块,被配置为针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;
连接锁定模块,被配置为锁定所述长连接;
数据发送模块,被配置为将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;
连接解锁模块,被配置为解锁所述长连接。
8.一种分布式文件***的数据传输方法,应用于数据接收节点,所述方法包括:
通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的;
根据所述长度信息,通过所述长连接接收对应长度的数据。
9.一种分布式文件***的数据传输装置,配置于数据接收节点,所述装置包括:
头部接收模块,被配置为通过所述数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,其中,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的;
数据接收模块,被配置为根据所述长度信息,通过所述长连接接收对应长度的数据。
10.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:
获取需要传输到数据接收节点的数据;
针对所述数据构造一个数据包,所述数据包的头部信息中包括所述数据的长度信息;
锁定所述长连接;
将所述数据包通过所述长连接发送给所述数据接收节点,以便所述数据接收节点根据所述头部信息中的长度信息,接收所述数据;
解锁所述长连接。
11.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求1至7任意一项所述分布式文件***的数据传输方法的步骤。
12.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:
通过数据接收节点与数据传出节点之间的长连接,获取所述数据传出节点发出的数据包的头部信息,所述数据包的头部信息中包括数据的长度信息,所述数据包是在所述数据传出节点获取需要传输到数据接收节点的数据,针对所述数据构造出的、且在针对所述数据包锁定所述长连接的情况下发出的;
根据所述长度信息,通过所述长连接接收对应长度的数据。
13.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求12所述分布式文件***的数据传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110136104.5A CN113301101B (zh) | 2021-02-01 | 2021-02-01 | 分布式文件***的数据传输方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110136104.5A CN113301101B (zh) | 2021-02-01 | 2021-02-01 | 分布式文件***的数据传输方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113301101A true CN113301101A (zh) | 2021-08-24 |
CN113301101B CN113301101B (zh) | 2022-08-16 |
Family
ID=77318866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110136104.5A Active CN113301101B (zh) | 2021-02-01 | 2021-02-01 | 分布式文件***的数据传输方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113301101B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040019679A1 (en) * | 2002-07-24 | 2004-01-29 | Sandhya E | First thread lock management for distributed data systems |
CN103905435A (zh) * | 2014-03-14 | 2014-07-02 | 北京六间房科技有限公司 | 一种前端页面与后端服务器通信方法 |
CN104050193A (zh) * | 2013-03-15 | 2014-09-17 | ***股份有限公司 | 生成报文的方法和实现该方法的数据处理*** |
CN105893447A (zh) * | 2015-12-28 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 文件同步方法、装置及*** |
US20170272498A1 (en) * | 2016-03-21 | 2017-09-21 | Le Holdings (Beijing) Co., Ltd. | Streaming media file distribution method and system |
CN107241436A (zh) * | 2017-07-18 | 2017-10-10 | 山东亚华电子股份有限公司 | 一种tcp网络高速粘包传输及存储的方法 |
CN109600275A (zh) * | 2018-12-03 | 2019-04-09 | 郑州云海信息技术有限公司 | 监控数据获取方法、装置、设备及计算机可读存储介质 |
CN110147386A (zh) * | 2019-04-16 | 2019-08-20 | 平安科技(深圳)有限公司 | 数据的缓存方法、装置、计算机设备 |
CN110597640A (zh) * | 2019-08-29 | 2019-12-20 | 深圳市优必选科技股份有限公司 | 进程间的数据传输方法、装置、终端及计算机存储介质 |
-
2021
- 2021-02-01 CN CN202110136104.5A patent/CN113301101B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040019679A1 (en) * | 2002-07-24 | 2004-01-29 | Sandhya E | First thread lock management for distributed data systems |
CN104050193A (zh) * | 2013-03-15 | 2014-09-17 | ***股份有限公司 | 生成报文的方法和实现该方法的数据处理*** |
CN103905435A (zh) * | 2014-03-14 | 2014-07-02 | 北京六间房科技有限公司 | 一种前端页面与后端服务器通信方法 |
CN105893447A (zh) * | 2015-12-28 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 文件同步方法、装置及*** |
US20170272498A1 (en) * | 2016-03-21 | 2017-09-21 | Le Holdings (Beijing) Co., Ltd. | Streaming media file distribution method and system |
CN107241436A (zh) * | 2017-07-18 | 2017-10-10 | 山东亚华电子股份有限公司 | 一种tcp网络高速粘包传输及存储的方法 |
CN109600275A (zh) * | 2018-12-03 | 2019-04-09 | 郑州云海信息技术有限公司 | 监控数据获取方法、装置、设备及计算机可读存储介质 |
CN110147386A (zh) * | 2019-04-16 | 2019-08-20 | 平安科技(深圳)有限公司 | 数据的缓存方法、装置、计算机设备 |
CN110597640A (zh) * | 2019-08-29 | 2019-12-20 | 深圳市优必选科技股份有限公司 | 进程间的数据传输方法、装置、终端及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113301101B (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112968967B (zh) | 区块同步方法及装置 | |
US10990704B2 (en) | Management of cryptographic transactions | |
Shmatikov et al. | Efficient finite-state analysis for large security protocols | |
CN110191428B (zh) | 一种基于智能云平台的数据分配方法 | |
CN105340240A (zh) | 用于共享文件存储的方法和*** | |
CN105933380A (zh) | 一种数据传输的方法、装置及终端 | |
CN109246769A (zh) | 一种pdu会话建立方法及装置 | |
CN110912990B (zh) | 一种共识周期的更新方法及相关设备 | |
CN117857223B (zh) | 基于fttr主从管理的黑白名单实现方法、装置、设备及介质 | |
US20110241825A1 (en) | Identification information management system, method of generating and managing identification information, terminal, and generation and management programs | |
CN113301101B (zh) | 分布式文件***的数据传输方法以及装置 | |
CN113157450B (zh) | 在区块链***中执行区块的方法及装置 | |
CN114238703A (zh) | 事件流程编排方法、装置及应用 | |
EP3939236B1 (en) | Node and cluster management on distributed self-governed ecosystem | |
WO2023193671A1 (zh) | 数据传输方法以及*** | |
CN112612855A (zh) | 高可用数据库日志接收队列、同步方法及装置 | |
CN110324436B (zh) | 一种传输层代理的代理方法及装置 | |
CN114615355B (zh) | 报文处理方法以及报文解析模块 | |
CN106027419A (zh) | 一种数据结构的管理方法和装置 | |
CN115470302A (zh) | 一种基于canal的数据库双向同步方法、介质及设备 | |
CN115934338A (zh) | 进程间的通信方法及装置 | |
CN105512544B (zh) | 一种获取移动终端超级用户权限的方法及装置 | |
CN112910991A (zh) | 后端应用调用方法、装置、计算机设备和可读存储介质 | |
US8606947B2 (en) | Heuristics processing | |
CN112286947A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40057912 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |