CN105337923B - 数据分发方法和系统及数据发送装置和数据接收装置 - Google Patents
数据分发方法和系统及数据发送装置和数据接收装置 Download PDFInfo
- Publication number
- CN105337923B CN105337923B CN201410224646.8A CN201410224646A CN105337923B CN 105337923 B CN105337923 B CN 105337923B CN 201410224646 A CN201410224646 A CN 201410224646A CN 105337923 B CN105337923 B CN 105337923B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- description field
- receiver
- request information
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- 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/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)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施方式提出了一种数据分发方法和系统及数据发送装置和数据接收装置。方法包括:从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。数据发送端的无状态和数据接收端的独占式文件更新,保证了可以支持无限多的数据接收端同时进行更新,进而突破了数据传输协议一直以来都是点到点的串行传输瓶颈,成为一对多的并行应用层数据传输方法。
Description
技术领域
本发明实施方式涉及数据传输技术领域,更具体地,涉及一种数据分发方法和系统及数据发送装置和数据接收装置。
背景技术
在当今的信息时代中,各种信息设备应运而生:有用于话音传输的固定电话、移动电话;有用于信息资源共享、处理的服务器和个人电脑;有用于视频数据显示的各种电视机等等。这些设备都是在特定领域内为解决实际的需求而产生的。随着电子消费、计算机、通信(3C)融合的到来,人们越来越多地将注意力放到了对各个不同领域的信息设备进行综合利用的研究上,以充分利用现有资源设备来为人们更好的服务。
在各种实时系统中,经常需要将最新生成的数据实时投放到应用系统中,以让实时数据得以应用。这就涉及到了一对多的数据传输问题。目前针对一对多的数据传输场景,在现有技术中并无直接可用的一对多的数据传输协议。相近似的协议有如下3个:(1)、基于tcp的Ftp协议;(2)、基于udp的tftp协议;(3)、scp协议(Secure copy protocol)。
上述三种协议均为点到点的传输协议。然而,当面临一对多的传输需求时:
首先,需要维护一份数据接收机的列表,然后依据列表通过FTP、tftp、SCP等点到点的数据传输方式进行串行的数据分发。由于为串行的数据分发,当一台接收机阻塞,就会阻塞整个下发过程,从而降低数据传输效率。
而且,这种技术需要维护接收机列表,当新增或减少接收机时,都要修改这份列表,从而增加了运维量。
另外,接收机有遗漏时无法感知。而且,数据发送端的网络带宽无法全部利用,还存在带宽浪费。
发明内容
本发明实施方式提出一种数据分发方法,以提高数据传输效率。
本发明实施方式还提出了一种数据分发系统,以提高数据传输效率。
本发明实施方式还提出了一种数据发送装置,以提高数据传输效率。
本发明实施方式还提出了一种数据接收装置,以提高数据传输效率。
本发明实施方式的具体方案如下:
一种数据分发方法,该方法包括:
从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;
向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
一种数据分发系统,包括:
至少一个数据接收端,用于向数据发送端并行发送各自的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送端,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
一种数据接收装置,包括数据请求消息发送单元和数据接收单元,其中:
数据请求消息发送单元,用于创建数据请求消息,所述数据请求消息包括请求数据描述字段,并发送所述数据请求消息;
数据接收单元,用于接收对应于所述请求数据描述字段的数据,其中所述数据是当所述请求数据描述字段合法时并行返回的。
一种数据发送装置,包括数据请求消息接收单元和数据发送单元,其中:
数据请求消息接收单元,用于从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送单元,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
从上述技术方案可以看出,在本发明实施方式中,从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。由此可见,应用本发明实施方式之后,数据发送端不保存数据传输状态,对于数据接收端,都是独占数据发送端的,各个数据接收端之间保持相互独立,从而可以提高数据传输效率。
附图说明
图1为根据本发明实施方式数据分发方法流程图;
图2为根据本发明实施方式数据分发系统结构图;
图3为根据本发明实施方式数据分发系统的示范性结构图;
图4为根据本发明实施方式数据分发的消息流程示意图;
图5为根据本发明实施方式数据分发的消息流程的另一示意图;
图6为根据本发明实施方式数据接收装置的结构图;
图7为根据本发明实施方式数据发送装置的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
为了描述上的简洁和直观,下文通过描述若干代表性的实施方式来对本发明的方案进行阐述。实施方式中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据……”是指“至少根据……,但不限于仅根据……”。由于汉语的语言习惯,下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。
在本发明实施方式中,为解决对多机器下发数据资源(包括但不限于广告订单、dsp信息、广告位信息、ip数据库以及各种配置文件)的问题,通过设计基于udp的应用层协议传输,来代替串行的使用ftp/tftp/scp协议下发数据的方案。
比如,在基于互联网的各种应用中,后台开发常会遇到这样的需求:把某台机器上的内存数据(如:某个写完数据的内存数据表,某个建好索引排好序的数据结构)单向推送到其他机器的内存中。本发明实施方式提出一种新的单向内存传输服务,可以将写入内存的数据直接单向的传输到分布式集群的内存上。基于本发明的一对多传输方法,能够进行各种内存镜像的快速分发,保证数据的一致性和应用的实时性,并提高分发的可靠性同时也大大降低了运维量。
图1为根据本发明实施方式数据分发方法流程图。
如图1所示,该方法包括:
步骤101:从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段。
步骤102:向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
在一个实施方式中,该方法进一步包括:
向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;
接收所述状态重置消息的数据接收端基于所述数据描述信息构建更新数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;
接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
在一个实施方式中,所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
在一个实施方式中,该方法进一步包括:
数据接收端每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息;
接收所述再次形成数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
在一个实施方式中,数据接收端分别维护自身的数据传输状态信息。而且,数据传输状态信息包括下列中的至少一个:
(1)当前数据请求消息序号;
(2)上一次发出数据请求消息的时间;
(3)每个数据请求消息所期望的数据包个数;
(4)当前的数据包是当前数据请求消息的第几个包;
(5)本次数据更新的时间。
基于上述分析,图2为根据本发明实施方式数据分发系统结构图。
如图2所示,该数据分发系统包括:
至少一个数据接收端201,用于向数据发送端202并行发送各自的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送端202,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
在一个实施方式中:
数据发送端202,进一步用于向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;
接收所述状态重置消息的数据接收端201,进一步用于基于所述数据描述信息构建更新数据请求消息,所述更新数据请求消息包括更新的请求数据描述字段;
数据发送端202,进一步用于接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
在一个实施方式中:
所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
数据发送端202,用于:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
在一个实施方式中:
数据接收端201,进一步用于当每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息;
数据发送端202,进一步用于接收所述再次形成数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
在一个实施方式中:
数据接收端202,进一步用于维护自身的数据传输状态信息;所述数据传输状态信息包括下列中的至少一个:
当前数据请求消息请求序号;上一次发出数据请求消息的时间;每个数据请求消息所期望的数据包个数;当前的数据包是当前数据请求消息的第几个包;本次数据更新的时间。
图3为根据本发明实施方式数据分发系统的示范性结构图。
如图3所示,系统包括多个接收机,分别为接收机1、接收机2、接收机3、接收机4、接收机5和接收机6;以及控制机。控制机用于为各个接收机提供数据。
首先,在各个接收机启动接受服务,等待接受数据。当各个控制机准备好后,启动下发流程。各个接收机向控制机平行发送数据请求消息,控制机开始为所有接收机器并行开始下发数据。下发速度根据自己的网络情况,有快有慢;(假设最快的时间为t,最慢的时间为30t)。假设接收机1传输速度最快,已经完成,则数据可以直接提供接收机1的业务使用。未传输完成的各个接收机,继续互不影响的传输数据。假设接收机5传输速度最慢,当其他机器传输完成后,接收机5仍然在继续传输。但是这不会影响其他机器对新数据的使用。由于数据请求消息的存在,控制机可以实时掌握当前传输的进度(哪些机器已经完成传输,哪些机器还在传输),直到最后一台机器传输完成。
下面结合具体消息结构和应用实例对本发明实施方式进行说明。
图4为根据本发明实施方式数据分发的消息流程示意图。
如图4所示,该方法包括:
步骤401:各个接收机启动,并行向位于服务器侧的控制机发送各自的数据请求消息以请求数据,在各个数据请求消息中均包含有请求数据描述字段,以用于描述所请求的数据。
请求数据描述字段示范性结构如下:
Cmd[4Byte];描述当前请求的数据种类命令号;
Type[1Byte];描述本消息类型,固定值0
Ptl_version[1Byte];描述协议版本号,固定值0
Len[2Byte];描述本消息体长度;
Data_version[4Byte];描述数据版本;
Global_flag[4Byte];描述数据类型全量/增量/其他类型;
Seq[4Byte];描述期望获得的数据序号;
Data_pkg_count[4Byte];描述本请求需要的应答包数量,默认可以为1(即滑动窗口大小)。
在此步骤,示范性地,接收机请求(ASK)Data_Version=0;Seq=0;Global_flag=0的数据。
步骤402:控制机接收到各个数据请求消息之后,分别读取各个数据请求消息中的数据种类命令号(cmd),如果发现数据请求消息中的数据种类命令号与自身已有的数据的数据种类命令号不匹配,则丢弃数据请求消息;如果发现数据请求消息中的数据种类命令号与自身已有的数据匹配,则继续读取数据请求消息中的数据版本号(Data_version)、数据序号(seq)和数据类型(Global_flag),并且与自身已有的数据的相应的数据版本号、数据序号和进行数据类型匹配。当数据序号、数据类型和数据版本号中至少有一个不匹配时,则判定读取数据请求消息中的请求数据描述字段不合法,并向该不合法的读取数据请求消息所对应的接收机发送状态重置消息(reset),以重置接收机状态。在状态重置消息中包含控制机已有数据的当前cmd的version(n)、Total_count(m)、global状态。
状态重置消息的字段内容示范性如下:
Cmd[4Byte];描述当前请求的数据种类命令号;
Type[1Byte];描述本消息类型,固定值1;
Ptl_version[1Byte];描述协议版本号,固定值0;
Len[2Byte];描述本消息体长度;
Data_version[4Byte];描述数据版本;
Total_count[4Byte];描述本次要更新的数据总量;
在此步骤,示范性地,由于接收机请求(ASK)Data_Version=0;Seq=0;Global_flag=0与控制机已有数据不匹配,因此在状态重置消息中返回Data_Version=n;total_count=4;Global_flag=1的字段信息。
步骤403:接收机收到状态重置消息后,按照状态重置消息的指定重新请求数据,重新发送更新后的数据请求消息。
在此步骤,示范性地,接收机请求Data_Version=n;Seq=0;Global_flag=1的数据。
步骤404:控制机读取更新后的数据请求消息,并将更新后的数据请求消息中的cmd、version、seq和global_flag进行匹配,校验通过后组装Data_pkg_count个数据,组装为Data消息以发送给接收机。
Data消息是server端发送给接收机的消息,是根据接收机发来的数据请求消息准备数据,将接收机需要的数据发送给接收机。
Data消息字段内容如下
Cmd[4Byte];当前请求的数据种类命令号;
Type[1Byte];本消息类型,固定值2;
Ptl_version[1Byte];协议版本号固定值0;
Len[2Byte];本消息体长度;
Data_version[4Byte];数据版本;
Seq[4Byte];期望获得的数据序号;
Count[4Byte];本消息携带的数据大小;
Total_count[4Byte];本次要更新的数据总量;
Data[Count];携带的数据。
步骤405~步骤406:接收机收到Data_pkg_count个data后,重新组装数据请求消息,以继续请求下一个数据,如此重复直到数据发送完成。
步骤407:当接收机基于本次要更新的数据总量(Total_count)字段判定收到最后一个数据后,会重置状态,将version自动加1,再发送数据请求消息以请求下一个版本的数据;控制机收到数据请求消息后发现版本号超前,则丢弃该消息。
步骤408:接收机每次发送数据请求消息后在预定时间(比如3s)内没有收到回包,则会再重发该数据请求消息(应对丢包情况)。
图5为根据本发明实施方式数据分发的消息流程的另一示意图。
如图5所示,
该方法包括:
步骤501:各个接收机启动,并行向位于服务器侧的控制机发送各自的数据请求消息以请求数据,在各个数据请求消息中均包含有请求数据描述字段,以用于描述所请求的数据。
在此步骤,示范性地,接收机请求(ASK)Data_Version=0;Seq=0;Global_flag=0的数据。
步骤502:控制机接收到各个数据请求消息之后,分别读取各个数据请求消息中的数据种类命令号(cmd),如果发现数据请求消息中的数据种类命令号与自身已有的数据的数据种类命令号不匹配,则丢弃数据请求消息;如果发现数据请求消息中的数据种类命令号与自身已有的数据匹配,则继续读取数据请求消息中的数据版本号(Data_version)、数据序号(seq)和数据类型(Global_flag),并且与自身已有的数据的相应的数据版本号、数据序号和进行数据类型匹配。当数据序号、数据类型和数据版本号中至少有一个不匹配时,则判定读取数据请求消息中的请求数据描述字段不合法,并向该不合法的读取数据请求消息所对应的接收机发送状态重置消息(reset),以重置接收机状态。在状态重置消息中包含控制机已有数据的当前cmd的version(n)、Total_count(m)、global状态。
在此步骤,示范性地,由于接收机请求(ASK)Data_Version=0;Seq=0;Global_flag=0与控制机已有数据不匹配,因此在状态重置消息中返回Data_Version=n;total_count=m;Global_flag=1的字段信息。
步骤503:接收机收到状态重置消息后,按照状态重置消息的指定重新请求数据,重新发送更新后的数据请求消息。
在此步骤,示范性地,接收机请求Data_Version=n;Seq=0;Global_flag=1的数据。
接收机每次发送数据请求消息后在预定时间(比如3s)内没有收到回包,则会再重发该数据请求消息(应对丢包情况)。
步骤404:当等待3秒之后,如果依然没有收到数据,则再次发送数据请求消息。接收机请求Data_Version=n;Seq=0;Global_flag=1的数据。
步骤505:控制机读取数据请求消息,并将数据请求消息中的cmd、version、seq和global_flag进行匹配,校验通过后组装Data_pkg_count个数据,组装为Data消息以发送给接收机。Data消息是server端发送给接收机的消息,是根据接收机发来的数据请求消息准备数据,将接收机需要的数据发送给接收机。
在这里,示范性地,接收机返回Data_Version=n;Seq=0;Global_flag=1的数据。
步骤506~507:当接收机基于本次要更新的数据总量(Total_count)字段判定收到最后一个数据后,会重置状态,将version自动加1,再发送数据请求消息以请求下一个版本的数据;控制机收到数据请求消息后发现版本号超前,则丢弃该消息。
其中,用户可以在各种接收机或控制机上执行本发明的处理,这些接收机或控制机可以包括但是不局限于:功能手机、智能手机、掌上电脑、个人电脑(PC)、平板电脑或个人数字助理(PDA),等等。
以上虽然详细罗列了接收机或控制机的具体实例,本领域人员可以意识到,这些罗列仅是阐述目的,并不用于限定本发明实施方式的保护范围。
本发明的数据分发方法具有如下特点:
(1)、无状态:在整个流程中,数据发送端(控制机)不保存数据传输状态,由各个数据接收端(接收机)维护自己的数据传输状态。对于数据接收端(接收机)来说,都是独占数据发送端(控制机)的,各个数据接收端(接收机)之间保持相互独立。
(2)、高并发,快速:可以很好的支持向各个数据接收端(接收机)并发的下发数据,并且其并发量理论上可以无限多,相互之间不会有影响,数据发送端(控制机)的带宽资源由所有的接收机共享。
(3)、无需运维:数据分发是由数据接收端(接收机)主动发起请求,因此数据发送端(控制机)无需维护接收机列表。有新机器加入时,数据发送端(控制机)无需感知。
(4)、充分利用带宽:在数据发送端(控制机)给接收机A回复消息后,由于存在网络延迟,数据发送端(控制机)在收到接收机A的下一个数据请求消息之前,会存在空闲时间。这段空闲时间可以用于对接收机B、C、D等机器服务,这样数据发送端(控制机)的cpu资源和带宽资源会被充分利用。当并发量大时,数据发送端(控制机)的网络流量可以达到网卡上限。
(5)、无流量穿越:数据发送端(控制机)每次发送完数据后需要等待下一个数据请求消息,才会继续发送。因此当下发的数据量大时,数据接收端(接收机)和数据发送端(控制机)之间会存在大量的空闲时间,不会一直都在发送数据,这样天然的避免了对公共带宽资源的突发占用。当数据接收端(接收机)数据多时,也不会出现流量叠加。由于各个数据接收端(接收机)不会全部分布在同一个机房的同一个机架上,因此所经过的交换机和路由器不会完全相同,这样就不会对某个核心节点的交换设备造成压力。
(6)、方便监控:各个数据接收端(接收机)可以定时(比如3s)发送数据请求消息,这就形成了一个心跳消息,在数据发送端(控制机)可以直接观察到有哪些接收机连接到数据发送端(控制机)上。根据数据请求消息的data_version,也可直接实时的观察到哪些接收机更新完成,哪些接收机还未完成更新。
(7)、针对网络延迟大的加速下发:对于异地的接收机进行下发时,速度慢主要是由于网络延迟大。对于这样的机器只需要增大数据请求消息的Data_pkg_count(滑动窗口)即可。假设当滑动窗口为1时,下发时间为T。如果修改Data_pkg_count为n,则下发的时间就会变为t=T/n,t理论上可以接近一个网络延迟的时间片。
(8)、单一和群体下发都支持:因为数据发送端(控制机)是无状态,接收机相互之间独立,所以当别的接收机都下发完成后,可以对某个新加入的机器进行单独的重新下发。当需要群体下发时,只需要数据发送端(控制机)修改下数据版本号(加一,变成接收机需求的版本号),即可开始群体下发。单一下发一般由接收机发起,群体下发一般由数据发送端(控制机)发起。
(9)、无阻塞现象:相对于以前的串行下发,串行变并行,单机的故障自然不会影响整体下发的速度。
(10)、增量更新和全量更新:针对数据量大的情况,本发明的Global_flag字段提供了两种(全量/增量)数据更新方式,增量更新时会将数据变化的部分分发下去,由业务方根据业务逻辑自己更新到全量数据中。
本发明中,数据发送端(控制机)的无状态和接收机的独占式文件更新,保证了可以支持无限多的接收机同时进行更新,进而突破了数据传输协议一直以来都是点到点的串行传输瓶颈,成为一对多的并行应用层数据传输方法。
基于上述详细分析,本发明实施方式还提出了一种数据接收装置。
图6为根据本发明实施方式数据接收装置的结构图。
如图6所示,包括数据请求消息发送单元602和数据接收单元601,其中:
数据请求消息发送单元602,用于创建数据请求消息,所述数据请求消息包括请求数据描述字段,并发送所述数据请求消息;
数据接收单元601,用于接收对应于所述请求数据描述字段的数据,其中所述数据是当所述请求数据描述字段合法时并行返回的。
在一个实施方式中,还包括:
状态重置消息接收单元604,用于接收状态重置消息,所述状态重置消息是当所述请求数据描述字段不合法时并行返回的,而且在所述状态重置消息中包含数据描述信息;
数据请求消息发送单元602,进一步用于基于所述数据描述信息构建更新的数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;
数据接收单元,进一步用于接收对应于所述更新的请求数据描述字段的数据,其中所述数据是当所述更新的请求数据描述字段合法时并行返回的。
在一个实施方式中,还包括:
所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
在一个实施方式中,还包括:
数据请求消息发送单元602,进一步用于当每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息。
在一个实施方式中,进一步包括:
传输状态维护单元603,用于维护自身的数据传输状态信息;所述数据传输状态信息包括下列中的至少一个:
当前数据请求消息序号;上一次发出数据请求消息的时间;每个数据请求消息所期望的数据包个数;当前的数据包是当前数据请求消息的第几个包;本次数据更新的时间。
图7为根据本发明实施方式数据发送装置的结构图。
如图7所示,包括数据请求消息接收单元701和数据发送单元702,其中:
数据请求消息接收单元701,用于从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送单元702,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。
在一个实施方式中:
数据发送单元702,进一步用于向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;接收基于所述数据描述信息构建的更新的数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
在一个实施方式中:
所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
在一个实施方式中:
数据发送单元702,进一步用于接收基于在所述请求数据描述字段中递增所述数据版本号以再次形成的数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
实际上,可以在各种应用中实施本发明。以下发网络推广(比如网络广告位)和订单信息为例进行说明。当发现订单数据或广告位数据(包括但不限于数据表,结构体,资源图片等各种形式的内存数据)发生改变时,此时需要把订单和广告位数据同步到adx竞价系统(业务系统)的多台机器上。此时,主控机上启动下发服务,adx机器上启动接收服务;主控机检查工具(数据生成系统)将数据读取写入内存中的写缓存;写完数据后交换读缓存和写缓冲。当分发服务检查到发生了读写交换,则开始连接新的读缓存。此时如果接受到adx机器(接收机)的数据请求,则开始利用ask协议对多台adx机器同步下发数据。Adx机器(接收机)检查当前的写缓存是否够大,如果写缓存太小则销毁当前写缓存,重新创建适合大小的写缓存。确认写缓存准备好后,将收到的数据写入写缓存中,写完后交换读缓存和写缓存。Adx竞价系统在查询广告位和订单信息时,如果发现读写缓存发生交换则连接新的读缓存,在新的读缓存中查询广告位和订单信息。
本发明实施方式适用于多种应用场景。比如,尤其适用于小数据量(不超过2G)的一对多的单向可靠快速的数据传输的场景。例如:1、在adx广告竞价系统中,下发广告位信息和订单信息到adxServer;2、在基础数据服务中,下发ip数据库数据到所有的业务服务器,供业务进行本地的ip数据查询;3、在日志服务系统中,实时向业务机分发染色配置数据。
实际上,可以通过多种形式来具体实施本发明实施方式所提出的数据分发方法和系统与数据发送装置和数据接收装置。
比如,可以遵循一定规范的应用程序接口,将数据分发方法编写为安装到个人电脑、移动终端等中的插件程序,也可以将其封装为应用程序以供用户自行下载使用。当编写为插件程序时,可以将其实施为ocx、dll、cab等多种插件形式。也可以通过Flash插件、RealPlayer插件、MMS插件、MIDI五线谱插件、ActiveX插件等具体技术来实施本发明实施方式所提出的数据分发方法。
可以通过指令或指令集存储的储存方式将本发明实施方式所提出的数据分发方法存储在各种存储介质上。这些存储介质包括但是不局限于:软盘、光盘、DVD、硬盘、闪存、U盘、CF卡、SD卡、MMC卡、SM卡、记忆棒(Memory Stick)、xD卡等。
另外,还可以将本发明实施方式所提出的内存镜像方法应用到基于闪存(Nandflash)的存储介质中,比如U盘、CF卡、SD卡、SDHC卡、MMC卡、SM卡、记忆棒、xD卡等。
综上所述,在本发明实施方式中,从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据。由此可见,应用本发明实施方式之后,数据发送端不保存数据传输状态,对于数据接收端,都是独占数据发送端的,各个数据接收端之间保持相互独立,从而可以提高数据传输效率。
而且,本发明实现了高并发和快速:可以很好的支持向各个数据接收端(接收机)并发的下发数据,并且其并发量理论上可以无限多,相互之间不会有影响,数据发送端(控制机)的带宽资源由所有的接收机共享。
而且,本发明实现了无需运维:数据分发是由数据接收端(接收机)主动发起请求,因此数据发送端(控制机)无需维护接收机列表。有新机器加入时,数据发送端(控制机)无需感知。
而且,本发明充分利用带宽:在数据发送端(控制机)给接收机A回复消息后,由于存在网络延迟,数据发送端(控制机)在收到接收机A的下一个数据请求消息之前,会存在空闲时间。这段空闲时间可以用于对接收机B、C、D等机器服务,这样数据发送端(控制机)的cpu资源和带宽资源会被充分利用。当并发量大时,数据发送端(控制机)的网络流量可以达到网卡上限。
而且,本发明实现了无流量穿越:数据发送端(控制机)每次发送完数据后需要等待下一个数据请求消息,才会继续发送。因此当下发的数据量大时,数据接收端(接收机)和数据发送端(控制机)之间会存在大量的空闲时间,不会一直都在发送数据,这样天然的避免了对公共带宽资源的突发占用。当数据接收端(接收机)数据多时,也不会出现流量叠加。由于各个数据接收端(接收机)不会全部分布在同一个机房的同一个机架上,因此所经过的交换机和路由器不会完全相同,这样就不会对某个核心节点的交换设备造成压力。
而且,本发明实现了方便监控:各个数据接收端(接收机)可以定时(比如3s)发送数据请求消息,这就形成了一个心跳消息,在数据发送端(控制机)可以直接观察到有哪些接收机连接到数据发送端(控制机)上。根据数据请求消息的data_version,也可直接实时的观察到哪些接收机更新完成,哪些接收机还未完成更新。
而且,本发明实现了针对网络延迟大的加速下发:对于异地的接收机进行下发时,速度慢主要是由于网络延迟大。对于这样的机器只需要增大数据请求消息的Data_pkg_count(滑动窗口)即可。假设当滑动窗口为1时,下发时间为T。如果修改Data_pkg_count为n,则下发的时间就会变为t=T/n,t理论上可以接近一个网络延迟的时间片。
而且,本发明实现了单一和群体下发都支持:因为数据发送端(控制机)是无状态,接收机相互之间独立,所以当别的接收机都下发完成后,可以对某个新加入的机器进行单独的重新下发。当需要群体下发时,只需要数据发送端(控制机)修改下数据版本号(加一,变成接收机需求的版本号),即可开始群体下发。单一下发一般由接收机发起,群体下发一般由数据发送端(控制机)发起。
而且,本发明实现了无阻塞现象:相对于以前的串行下发,串行变并行,单机的故障自然不会影响整体下发的速度。
而且,本发明实现了增量更新和全量更新:针对数据量大的情况,本发明的Global_flag字段提供了两种(全量/增量)数据更新方式,增量更新时会将数据变化的部分分发下去,由业务方根据业务逻辑自己更新到全量数据中。
本发明中,数据发送端(控制机)的无状态和接收机的独占式文件更新,保证了可以支持无限多的接收机同时进行更新,进而突破了数据传输协议一直以来都是点到点的串行传输瓶颈,成为一对多的并行应用层数据传输方法。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种数据分发方法,其特征在于,该方法包括:
从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;
向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据;
向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;
接收所述状态重置消息的数据接收端基于所述数据描述信息构建更新数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;
接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
2.根据权利要求1所述的数据分发方法,其特征在于,所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
3.根据权利要求2所述的数据分发方法,其特征在于,该方法进一步包括:
数据接收端每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息;
接收所述再次形成数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
4.根据权利要求1-3中任一项所述的数据分发方法,其特征在于,所述数据接收端分别维护自身的数据传输状态信息;所述数据传输状态信息包括下列中的至少一个:
当前数据请求消息序号;上一次发出数据请求消息的时间;每个数据请求消息所期望的数据包个数;当前的数据包是当前数据请求消息的第几个包;本次数据更新的时间。
5.一种数据分发系统,其特征在于,包括:
至少一个数据接收端,用于向数据发送端并行发送各自的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送端,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据;
数据发送端,进一步用于向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;
接收所述状态重置消息的数据接收端,进一步用于基于所述数据描述信息构建更新数据请求消息,所述更新数据请求消息包括更新的请求数据描述字段;
数据发送端,进一步用于接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
6.根据权利要求5所述的数据分发系统,其特征在于,所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
数据发送端,用于:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
7.根据权利要求6所述的数据分发系统,其特征在于,
数据接收端,进一步用于当每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息;
数据发送端,进一步用于接收所述再次形成数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
8.根据权利要求5-7中任一项所述的数据分发系统,其特征在于,
所述数据接收端,进一步用于维护自身的数据传输状态信息;所述数据传输状态信息包括下列中的至少一个:
当前数据请求消息请求序号;上一次发出数据请求消息的时间;每个数据请求消息所期望的数据包个数;当前的数据包是当前数据请求消息的第几个包;本次数据更新的时间。
9.一种数据接收装置,其特征在于,包括数据请求消息发送单元、数据接收单元、状态重置消息接收单元和数据请求消息发送单元,其中:
数据请求消息发送单元,用于创建数据请求消息,所述数据请求消息包括请求数据描述字段,并发送所述数据请求消息;
数据接收单元,用于接收对应于所述请求数据描述字段的数据,其中所述数据是当所述请求数据描述字段合法时并行返回的;
状态重置消息接收单元,用于接收状态重置消息,所述状态重置消息是当所述请求数据描述字段不合法时并行返回的,而且在所述状态重置消息中包含数据描述信息;
数据请求消息发送单元,进一步用于基于所述数据描述信息构建更新的数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;
数据接收单元,进一步用于接收对应于所述更新的请求数据描述字段的数据,其中所述数据是当所述更新的请求数据描述字段合法时并行返回的。
10.根据权利要求9所述的数据接收装置,其特征在于,所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
11.根据权利要求10所述的数据接收装置,其特征在于,
数据请求消息发送单元,进一步用于当每次接收完数据之后,在所述请求数据描述字段中递增所述数据版本号以再次形成数据请求消息。
12.根据权利要求10所述的数据接收装置,其特征在于,进一步包括:
传输状态维护单元,用于维护自身的数据传输状态信息;所述数据传输状态信息包括下列中的至少一个:
当前数据请求消息序号;上一次发出数据请求消息的时间;每个数据请求消息所期望的数据包个数;当前的数据包是当前数据请求消息的第几个包;本次数据更新的时间。
13.一种数据发送装置,其特征在于,包括数据请求消息接收单元和数据发送单元,其中:
数据请求消息接收单元,用于从至少一个数据接收端并行接收各自发送的数据请求消息,所述数据请求消息包括请求数据描述字段;
数据发送单元,用于向所述请求数据描述字段合法的数据接收端并行返回对应于所述请求数据描述字段的数据;
数据发送单元,进一步用于向所述请求数据描述字段不合法的数据接收端并行返回状态重置消息,在所述状态重置消息中包含数据描述信息;接收基于所述数据描述信息构建的更新的数据请求消息,所述更新的数据请求消息包括更新的请求数据描述字段;接收所述更新的数据请求消息,并向所述更新的请求数据描述字段合法的数据接收端并行返回对应于所述更新的请求数据描述字段的数据。
14.根据权利要求13所述的数据发送装置,其特征在于,所述请求数据描述字段包括数据种类命令号、数据序号、数据类型和数据版本号;其中:
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号中至少有一个与已有数据的数据序号、数据类型和数据版本号不匹配时,判定所述请求数据描述字段不合法;和/或
当所述数据种类命令号与已有数据的数据种类命令号相匹配,且所述数据序号、数据类型和数据版本号分别与已有数据的数据序号、数据类型和数据版本号匹配时,判定所述请求数据描述字段合法。
15.根据权利要求14所述的数据发送装置,其特征在于,
数据发送单元,进一步用于接收基于在所述请求数据描述字段中递增所述数据版本号以再次形成的数据请求消息,并当存在对应于所述递增数据版本号的数据时,返回对应于所述递增数据版本号的数据,当不存在对应于所述递增数据版本号的数据时,停止本流程。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410224646.8A CN105337923B (zh) | 2014-05-26 | 2014-05-26 | 数据分发方法和系统及数据发送装置和数据接收装置 |
PCT/CN2015/079653 WO2015180594A1 (en) | 2014-05-26 | 2015-05-25 | Data distribution method and system and data receiving apparatus |
US15/213,919 US9699276B2 (en) | 2014-05-26 | 2016-07-19 | Data distribution method and system and data receiving apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410224646.8A CN105337923B (zh) | 2014-05-26 | 2014-05-26 | 数据分发方法和系统及数据发送装置和数据接收装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105337923A CN105337923A (zh) | 2016-02-17 |
CN105337923B true CN105337923B (zh) | 2019-07-12 |
Family
ID=54698081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410224646.8A Active CN105337923B (zh) | 2014-05-26 | 2014-05-26 | 数据分发方法和系统及数据发送装置和数据接收装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9699276B2 (zh) |
CN (1) | CN105337923B (zh) |
WO (1) | WO2015180594A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106454405B (zh) * | 2016-10-20 | 2019-07-16 | 杭州当虹科技股份有限公司 | 一种asi数据共享方案 |
CN107562550B (zh) * | 2017-09-01 | 2020-09-22 | 成都瀚蓝科技有限公司 | 一种数据分发方法 |
CN108260224A (zh) * | 2017-12-18 | 2018-07-06 | 深圳中科讯联科技股份有限公司 | 一种无线通信的方法及装置 |
CN108521342B (zh) * | 2018-03-26 | 2021-08-13 | 北京奇艺世纪科技有限公司 | 一种集群的管理方法及装置 |
CN111356996B (zh) | 2018-06-02 | 2023-07-21 | 西部数据技术公司 | 用于版本验证的系统和计算机实现的方法 |
CN109193592B (zh) * | 2018-10-23 | 2020-05-05 | 中国南方电网有限责任公司 | 继电保护信息系统之间的继电保护数据传送方法 |
CN111355669B (zh) | 2018-12-20 | 2022-11-25 | 华为技术有限公司 | 控制网络拥塞的方法、装置及系统 |
CN109768845B (zh) * | 2018-12-28 | 2021-03-09 | 北京诺亦腾科技有限公司 | 数据处理方法、装置及存储介质 |
CN110473005A (zh) * | 2019-07-26 | 2019-11-19 | 深圳市易售科技有限公司 | 一种广告并行下发系统及方法 |
CN114697409A (zh) * | 2020-12-29 | 2022-07-01 | 中兴通讯股份有限公司 | 数据分发方法、装置、系统及介质 |
CN113297211B (zh) * | 2021-03-03 | 2023-12-22 | 苏州合数科技有限公司 | 一种大数据高并发下人群画像存储及定向系统及方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094133A (zh) * | 2006-06-22 | 2007-12-26 | 华为技术有限公司 | 一种获取服务信息的系统及方法以及服务器和客户端 |
CN101383839A (zh) * | 2007-09-04 | 2009-03-11 | 阿里巴巴集团控股有限公司 | 基于数据服务器的数据分发系统及其实现方法 |
CA2735728A1 (en) * | 2008-08-28 | 2010-03-04 | Sumitomo Electric Industries, Ltd. | Moving-picture image data-distribution method |
CN103020257A (zh) * | 2012-12-21 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 数据操作的实现方法和装置 |
CN103077074A (zh) * | 2012-12-26 | 2013-05-01 | 深圳先进技术研究院 | 一种三维空间数据并行调度方法和系统 |
CN103207785A (zh) * | 2013-04-23 | 2013-07-17 | 北京奇虎科技有限公司 | 数据下载请求的处理方法、装置及系统 |
CN103218455A (zh) * | 2013-05-07 | 2013-07-24 | 中国人民解放军国防科学技术大学 | Key-Value数据库用户请求的高速并发处理方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040203907A1 (en) * | 2002-12-30 | 2004-10-14 | Hiller Thomas Lloyd | One to many wireless network communications with receiving members selected based on geographic location |
DE602004028665D1 (de) * | 2004-03-29 | 2010-09-23 | Nokia Corp | Datenreparatur für multicast/rundfunk-datenverteilung |
CN101155353A (zh) * | 2006-05-13 | 2008-04-02 | 华为技术有限公司 | 一种用于多媒体广播和组播业务中的下载分发方法 |
CN101132299A (zh) * | 2006-08-22 | 2008-02-27 | 奇扬网科股份有限公司 | 提高多媒体资料广播品质的方法 |
US8065341B2 (en) * | 2008-10-01 | 2011-11-22 | Sap Ag | Systems and methods for efficient data transfer |
US8850509B2 (en) * | 2008-12-23 | 2014-09-30 | Cisco Technology, Inc. | Multiple frequency channel data distribution |
CN101567890A (zh) * | 2009-06-05 | 2009-10-28 | 成都市华为赛门铁克科技有限公司 | 元数据传输方法、客户端设备及服务器设备 |
AU2011370439B2 (en) * | 2011-10-27 | 2015-12-03 | Huawei Technologies Co., Ltd. | Method and apparatus for rapid data distribution |
CN103714073B (zh) * | 2012-09-29 | 2017-04-12 | 国际商业机器公司 | 数据查询的方法和装置 |
-
2014
- 2014-05-26 CN CN201410224646.8A patent/CN105337923B/zh active Active
-
2015
- 2015-05-25 WO PCT/CN2015/079653 patent/WO2015180594A1/en active Application Filing
-
2016
- 2016-07-19 US US15/213,919 patent/US9699276B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094133A (zh) * | 2006-06-22 | 2007-12-26 | 华为技术有限公司 | 一种获取服务信息的系统及方法以及服务器和客户端 |
CN101383839A (zh) * | 2007-09-04 | 2009-03-11 | 阿里巴巴集团控股有限公司 | 基于数据服务器的数据分发系统及其实现方法 |
CA2735728A1 (en) * | 2008-08-28 | 2010-03-04 | Sumitomo Electric Industries, Ltd. | Moving-picture image data-distribution method |
CN103020257A (zh) * | 2012-12-21 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 数据操作的实现方法和装置 |
CN103077074A (zh) * | 2012-12-26 | 2013-05-01 | 深圳先进技术研究院 | 一种三维空间数据并行调度方法和系统 |
CN103207785A (zh) * | 2013-04-23 | 2013-07-17 | 北京奇虎科技有限公司 | 数据下载请求的处理方法、装置及系统 |
CN103218455A (zh) * | 2013-05-07 | 2013-07-24 | 中国人民解放军国防科学技术大学 | Key-Value数据库用户请求的高速并发处理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160330299A1 (en) | 2016-11-10 |
CN105337923A (zh) | 2016-02-17 |
US9699276B2 (en) | 2017-07-04 |
WO2015180594A1 (en) | 2015-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105337923B (zh) | 数据分发方法和系统及数据发送装置和数据接收装置 | |
US11757981B2 (en) | Efficient and reliable host distribution of totally ordered global state | |
CN109471744A (zh) | 基于区块链的主链加并行多子链系统架构 | |
CN110045912A (zh) | 数据处理方法和装置 | |
CN102143194A (zh) | 数据同步的方法、系统、中间数据节点及终止数据节点 | |
CN111338893B (zh) | 进程日志处理方法、装置、计算机设备以及存储介质 | |
KR20140068916A (ko) | 클라이언트/서버 시스템에서 분산된 복제 콘텐츠들의 강한 일관성을 유지하는 방법 및 시스템 | |
CN107888666A (zh) | 一种跨地域数据存储系统以及数据同步方法和装置 | |
CN110196843B (zh) | 一种基于容器集群的文件分发方法及容器集群 | |
CN103152390B (zh) | 分布式存储系统的节点配置方法、装置、节点及系统 | |
JP2001282756A (ja) | 移動エージェント制御方法 | |
CN112121413B (zh) | 功能服务的响应方法、系统、装置、终端及介质 | |
CN110933173B (zh) | 一种基于区块链技术的组网方法和装置 | |
CN103139157A (zh) | 一种基于socket的网络通信方法、装置及系统 | |
CN103634411A (zh) | 一种具有状态一致性的市场数据实时广播系统及方法 | |
CN111597033A (zh) | 一种任务调度方法和装置 | |
CN102981857A (zh) | 数据库集群的并行压缩海量数据装载方法 | |
CN110262909A (zh) | RabbitMQ分层管理及消息投递方法、系统 | |
Oleson et al. | Operational information systems: An example from the airline industry | |
US8456994B2 (en) | Transmit request management in a distributed shared storage system | |
CN102959529A (zh) | 用于缓存的网络的广播协议 | |
CN113220730A (zh) | 业务数据的处理系统 | |
CN111475537A (zh) | 基于pulsar的全球数据同步系统 | |
US20130311591A1 (en) | Computer system for the exchange of messages | |
CN104486215A (zh) | 一种消息发送方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |