CN112866339A - 数据传输方法、装置、计算机设备和存储介质 - Google Patents

数据传输方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN112866339A
CN112866339A CN202011623264.4A CN202011623264A CN112866339A CN 112866339 A CN112866339 A CN 112866339A CN 202011623264 A CN202011623264 A CN 202011623264A CN 112866339 A CN112866339 A CN 112866339A
Authority
CN
China
Prior art keywords
page
target
data
result data
client
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
Application number
CN202011623264.4A
Other languages
English (en)
Other versions
CN112866339B (zh
Inventor
禹希初
杨华中
吴宏超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN202011623264.4A priority Critical patent/CN112866339B/zh
Publication of CN112866339A publication Critical patent/CN112866339A/zh
Application granted granted Critical
Publication of CN112866339B publication Critical patent/CN112866339B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请涉及一种数据传输方法,包括:接收客户端发起的携带有目标数据标识的第一数据传输请求,从数据库中按顺序逐条读取目标数据单元;当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;响应于所述第一数据传输请求,将第一页的结果数据页反馈至所述客户端;继续按顺序逐条读取新的目标数据单元,生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间;接收所述客户端发起的携带目标页码的第二数据传输请求;从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。采用本方法可以提高数据传输效率。

Description

数据传输方法、装置、计算机设备和存储介质
技术领域
本申请涉及通信技术领域,特别是涉及一种数据传输方法、装置、计算机设备和存储介质。
背景技术
在做系统间的数据集成时,经常需要传输大量数据(典型的大小可达几百万行,总字节数达GB级或更多),由于网络环境的复杂性,如果在一次网络请求中完成数据的整体传输,失败的概率非常高;尤其是在公有云与私有云集成时,因为物理距离遥远、参与的网络设施繁多,大数据传输的可靠性尤其难以保证。
当前涉及大数据传输时,最理想的方式是流式处理,例如:通过数据库驱动执行SQL获取查询结果,但这种方式对网络通讯质量要求非常高,适合在局域网环境下使用;在公有云/私有云集成的这种复杂网络环境中,因网络偶发的不稳定导致失败的概率很大;并且客户为安全性考虑也不会将数据库暴露于公网。因此一般实用的做法是利用数据库分页查询功能,在客户端发起的每次查询请求中,服务器访问数据库执行查询并仅返回指定页结果。
通过分析当前的“分页查询”方案,可以发现它每页结果的获取都是独立执行的,在大数据集处理过程中,耗时通常很长(同步几百万行数据,耗时可能长达几十分钟)。导致这种情况出现的主要原因是重复查询,即每页数据的获取在服务器都要执行一次查询,有多少页就要查询多少次,从而导致获得的数据结果可能会发生变化,直接影响到数据传输的质量。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高数据传输质量的数据传输方法、装置、计算机设备和存储介质。
一种数据传输方法,所述方法包括:
接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;
响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
在其中一个实施例中,
每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,包括:
每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;
根据所述结果数据页的生成顺序,对所述结果数据页进行编码,得到对应的页码信息;
将携带有所述页码信息的结果数据页依次缓存至缓存空间。
在其中一个实施例中,所述方法还包括:
每当完成任意页的结果数据页的缓存后,发起缓存就绪信号,根据所述缓存就绪信号更新结果数据页的缓存状态信息;所述缓存就绪信号用于表征相对应的结果数据页已存在于所述缓存空间中。
在其中一个实施例中,从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端,包括:
根据所述目标页码在缓存状态信息中查询是否存在对应的缓存就绪信号;
当存在时,则响应于所述数据请求指令,从所述缓存空间中获取与所述目标页码对应的目标结果数据页并将所述目标结果数据页反馈至所述客户端;
当不存在时,则在等待所述目标结果数据页缓存就绪后,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
在其中一个实施例中,当不存在时,则在等待所述目标结果数据页缓存就绪后,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端,包括:
当不存在时,确定查询等待时间;
当在所述查询等待时间内获得了所述目标页码对应的目标结果数据页的缓存就绪信号时,将所述目标页码对应的目标结果数据页反馈至客户端;
当在所述查询等待时间内没有获得所述目标页码对应的目标结果数据页的缓存就绪信号时,根据所述目标页码不断地查询相对应的目标结果数据页的缓存状态信息,直至获得所述目标页码对应的目标结果数据页的缓存就绪信号时,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
在其中一个实施例中,所述缓存就绪信号通过唤醒线程发出,所述唤醒信号通过线程间同步机制、MQ消息广播、以及Redis消息广播中的至少一种方式实现;所述缓存空间包括分布式文件系统、数据库临时表、以及Redis类缓存中的至少一种。
一种数据传输装置,其特征在于,所述装置包括:
接收模块,用于接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
响应模块,用于在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
缓存模块,用于在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
所述接收模块,还用于接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
所述响应模块,还用于从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
在其中一个实施例中,缓存模块,还用于每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;根据所述结果数据页的生成顺序,对所述结果数据页进行编码,得到对应的页码信息;将携带有所述页码信息的结果数据页依次缓存至缓存空间。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下步骤:
接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;
响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:
接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;
响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
上述数据传输方法、装置、计算机设备和存储介质,在接收到客户端发起的第一数据传输请求后,会根据第一数据传输请求读取数据库中对应的目标数据单元,并对其进行分页和缓存。当结果数据集的第一页缓存完成后,将其反馈给客户端,结束当前第一数据传输请求的响应线程。客户端可以根据当前收到的结果数据页的页码信息,继续发起第二数据传输请求,第二传输请求所对应的数据传输任务与第一数据传输请求一致,由于此时第一数据传输请求对应的结果数据集已经写入缓存中,因此可以直接从缓存空间中获取对应的结果数据页并反馈至客户端。在上述过程中,客户端两次发起的数据传输请求在数据库中对应的多个目标数据单元一致,所获得的结果分别是不同的目标数据单元组成的不同数据页。根据第一数据传输请求开始从数据库中读取目标数据单元后,其读取目标数据单元并对其进行分页、缓存的动作不会中断,直至从数据库中读取了全部的目标数据单元。在这个过程中,第一页的结果数据页会返回给客户端以响应第一数据传输请求后,第二页及以后的结果数据页会继续写入缓存,以待客户端在第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。这个过程中不存在针对每次数据传输请求分别执行数据传输任务的情况,所获得的结果数据集也不会因为多次请求发生改变,从而不会发生数据行遗漏或重复的情况,大大提高了数据传输的质量。
附图说明
图1为一个实施例中数据传输方法的应用环境图;
图2为传统方案中数据传输方法的时序图;
图3为一个实施例中数据传输方法的流程示意图;
图4为一个实施例中数据传输方法的时序图;
图5为一个实施例中数据传输方法装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据传输方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102根据自身需求将数据传输请求发送给服务器104,服务器根据数据传输请求生成数据传输任务,上述数据传输任务被保存在任务调度引擎106中。任务调度引擎106执行数据传输任务,在执行完成数据传输任务后,对执行数据传输任务获得的结果数据集(或结果数据页)进行缓存,并把任务执行完成的状态信息告知服务器104,服务器104就可以根据终端102当前的数据传输请求的线程处理状态进行响应,将结果数据集(或结果数据页)反馈给终端102。在这个过程中,服务器和客户端之间的处理线程与服务器与任务调度引擎之间的处理线程相互独立。
上述实施例中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。任务调度引擎106可以是独立于服务器设置的对任务提供排队、执行、管理、控制等功能的设备,也可以通过部署在服务器的软件模块来实现等,本申请对此不作限定。
为了可以更好的理解本申请,在对本申请的数据传输方法进行描述之前,先介绍下传统方案中的数据传输任务是如何完成的。在一个实施例中,如图2所示,是传统方案中的采用分页查询的方式进行数据传输的方法。其中,客户端运行在终端102上。
具体来说,如图2所示,客户端根据自身的需求,确定查询条件、当前页的页码信息(页码可以是1、2、3、4…n或其他编号方式)等目标数据标识,然后基于上述目标数据标识,发起RPC调用,服务器接收携带有目标数据标识的RPC调用后,即执行该目标数据标识中对应的查询条件任务,获得客户端请求的页码所对应的结果数据页内容,然后将查询到的结果数据页反馈至客户端。获得上述结果数据页后,客户端可以根据自身需求,确定是否再次发起RPC调用。例如,在当前页码信息显示还有下一页的时候,客户端可以递增当前页码的编号信息,再次生成新的目标数据标识并发起RPC调用。在需要进行数据传输的页数较多的情况下,客户端可以根据上述过程和图2的时序图不断发起RPC调用,直至结束。
从上述过程中可以看出,当前的分页查询方案,可以发现它每页结果的获取都是独立执行的,在大数据集处理过程中,由于耗时可能很长(同步几百万行数据,耗时可能长达几十分钟),在此期间,尤其是在一些业务繁忙的系统中,数据提供方很可能发生数据变更,由此可能导致以下问题:
(1)重复查询:每页数据的获取在服务器都要执行一次查询,有多少页就要查询多少次。
(2)数据行遗漏:因为来源数据在多次分页查询期间可能发生变动,某些最开始在后面的数据行可能在对应页号结果被获取时已经移到了前面的结果页,导致遗漏。例如:获取第1页结果后,在获取第2页结果之前,原第1页的结果中有些数据行被删除了,那么在获取第2页数据时,期望中的一些数据行因为被算入第1页,于是就会被遗漏。
(3)数据行重复:因为来源数据在多次分页查询期间可能发生变动(所以本申请中由于只查询了一次,所访问、读取的数据都是这一次查询的结果),某些最开始在前面的数据行可能因为被修改,在获取后面的结果时,这些被修改过的数据行因为排序规则的缘故又出现在了后面的结果页,导致数据重复获取。例如:获取第1页结果后,在获取第2页结果之前,原第1页的结果中有些数据行被修改了,那么在获取第2页数据时,按照排序规则,这些被修改的数据出现在了第2页,于是又会被获取一次,导致重复处理。
本申请就是基于对上述场景所存在的一些问题进行改进而得到的方案。在对本申请中的数据传输方法进行描述之前,首先对本申请的实施例中涉及到的部分名词作如下解释:
RPC:远程过程调用(Remote Procedure Call),客户端通过网络通信,远程调用位于服务器的函数来执行对应的网络访问任务。具体来说,是客户端通过网络通信,告诉服务器需要调用位于服务器的目标函数执行相应的网络访问任务,服务器找到对应的目标函数后,调用目标函数执行对应的网络访问任务并将结果反馈给客户端。网络访问任务:服务器接受到来自于客户端的RPC调用请求后,需要对其进行识别,明确客户端请求服务器完成的是什么类别的访问任务,即为服务器需要完成的网络访问任务。
客户端:发起RPC调用的一方,通过网络发送目标数据标识,期望得到执行结果。
数据传输请求:客户端基于某些原因,向服务器发出的获得指定数据的请求指令。
请求参数:数据传输请求中包含有多种请求参数,用于指示服务器获取指定目标数据单元、对目标数据单元进行处理等,请求参数包括但不限于数据查询条件、结果数据集的页码信息等,具体内容形式可以根据客户端与服务器之间的通信协议来进行设置。
目标数据标识:用于指示服务器获取指定目标数据单元的参数信息。
数据传输任务:服务器基于数据传输请求中的目标数据标识,寻找对应的本地函数生成数据传输任务。
任务调度引擎:可以是对任务提供排队、执行、管理、控制等功能的基础设备或模块等,可以位于服务器中,也可以独立于服务器存在。任务调度引擎可以单独执行任务调度管理线程。
结果数据集:执行数据传输任务,从数据库中获得的全部目标单元数据构成的数据集合。
结果数据页:根据分页规则对结果数据集进行分页获得的一个或多个包含有若干结果数据的结果数据页,全部结果数据页中的结果数据共同组成结果数据集。
缓存空间:用于缓存结果数据集。
页码信息:用于对结果数据页在整个结果数据集中的位置进行标示。
以该方法应用于图1中的服务器为例进行说明,如图3所示,包括以下步骤:
步骤S302,接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据目标数据标识从数据库中按顺序依次读取目标数据单元。
具体地,客户端基于自身需求需要服务器获取指定的数据集,为此向服务器发出了第一数据传输请求,在第一数据传输请求中,包含有客户端用于指示服务器获取指定目标数据单元的目标数据标识,具体内容形式可以根据客户端与服务器之间的通信协议来进行设置。客户端与服务器之间的数据传输请求可以发生在多种环境下,例如公有云与内网数据库之间的数据交换,云端数据库访问,或者是数据检索等等,传输的数据可以是网址、图像、文本等可以通过网络实现传输的对象,本申请对此不作具体的限定。
在一个具体的实施例中,客户端可以在第一数据传输请求中指定服务器返回数据库中包含有特定关键词或者是指定字段的全部结果数据组成的结果数据集,同时还可以包含有要求获得结果数据集中特定位置的数据信息,例如位于结果数据集中段的结果数据,或者是某一具体页码对应的结果数据页。
服务器在接收到第一数据传输请求后,提取对应的目标数据标识,生成对应的数据传输任务。例如,客户端的第一数据传输请求中指示服务器获取数据库中存放于指定位置的目标数据单元,并返回其中特定的结果数据页。服务器执行数据传输任务,首先是查找数据库中上述指定位置是否存在指定的文件夹,确认存在,服务器才会请求数据库返回上述指定文件夹中的目标数据单元并开始逐条读取,直至数据库返回的结果显示该指定文件夹中的目标数据单元已读取完毕。
步骤S304,在按顺序依次读取目标数据单元的过程中,当从首个目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;响应于第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至客户端。
服务器在逐条读取数据库中的目标数据单元时,除数据量较少的情况外,并不会一次性读取全部的目标数据单元。例如,假设服务器在数据库中一共读取了目标文件夹中的3259万条目标数据单元,但是这3259万条数据并不是一次性读取的。服务器在逐条读取目标数据单元的过程中,可以设置一定的分页条件,当读取到的数据满足这个分页条件的时候,就将读取到的数据进行分页处理,形成一个结果数据页缓存到缓存空间。
在其中一个实施例中,分页条件可以是按照服务器读取的目标数据单元条数(如1000条数据分为一页)或者是读取到的目标数据单元量大小(如1M数据划分为一页),又或者是服务器的读取时间(如服务器每10s读取的数据划分为一页)等来确定,本申请实施例对此不作限定。
在一个实施例中,每当读取到的目标数据单元满足分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,包括:每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;根据结果数据页的生成顺序,对结果数据页进行编码,得到对应的页码信息;将携带有页码信息的结果数据页依次缓存至缓存空间。
对于读取的数据,服务器可以目标数据单元数或者读取次数的形式来设置分页,例如,对于上述3259万条数据来说,服务器每读取1000条数据就进行一次分页,这样一来,第1-1000页构成第一页的结果数据页,第1001-2000页构成第二页的结果数据页,以此类推。然后将包含有目标数据单元的结果数据页依次对应缓存到缓存空间中。
客户端收到服务器发送过来的任意结果数据页,由于结果数据页中包含有页码信息,客户端可以根据页码信息判断结果数据集中是否还有下一页结果数据页。如果页码信息显示当前接收到的结果数据页已经是最后一页,则数据传输任务已经完成。如果页码信息显示当前接收到的结果数据页还有下一页(不是最后一页),客户端可以发起第二数据传输请求来获取下一结果数据页。第二数据传输请求中携带的目标页码信息可以是连续的,也可以是客户端根据自身需求指定的其他页码信息。通过这种方式,客户端可以不限次数地指定服务器反馈任意结果数据页中的数据信息,但是服务器却只需要进行一次任务传输任务。且利用页码信息对结果数据页进行编号并缓存,一方面可以保证客户端获得的结果数据不重不漏,另一方面也可以保证客户端能够及时高效地获得目标页码对应的结果数据页。
步骤S306,在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将数据库中与目标数据标识对应的最后一条目标数据单元实现分页缓存为止。
具体地,服务器在接收到客户端发起的第一数据传输请求后,会将对应的RPC处理线程挂起或使其处于休眠状态等,当服务器端读取到第一页的结果数据页缓存完成后,再将其唤醒,然后将读取到的第一页的结果数据页通过这个处理线程返回给客户端,完成对第一数据传输请求的响应。
同时,服务器继续读取从数据库中按顺序逐条读取新的目标数据单元,并且会通过分页条件对读取到的新的目标数据单元继续进行分页处理,此时第一数据传输请求的处理线程已经结束,服务器会将新获得的结果数据页缓存到缓存空间,以备客户端在第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。
步骤S308,接收客户端发起的携带目标页码的第二数据传输请求;第二数据传输请求为在第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。
具体地,服务器完成针对第一数据请求的响应后,客户端并没有获得第一数据请求所要求获得的全部目标数据单元,此时客户端可以通过发起第二数据请求来继续获得第一数据请求所要求获得的其他目标数据单元。
服务器将任意结果数据页发送至客户端后,客户端会对当前接收到的结果数据页中携带的页码信息进行识别,判断服务器是否还有下一页。当页码信息显示客户端当前接收到的结果数据页是最后一页时,页码信息用于指示客户端,数据传输请求的数据信息已完成传输;当页码信息显示当前接收到的结果数据页不是最后一页时,页码信息用于指示客户端基于页码信息发出第二数据传输请求,第二数据传输请求用于获取当前结果数据页对应的目标结果数据页。因此,客户端如果要获取后续的结果数据页,还需要再次发起RPC调用请求,即为第二数据传输请求。
步骤S310,从缓存空间中查找与目标页码对应的目标结果数据页,并将查到的目标结果数据页反馈至客户端。
与第一数据传输请求不同,第二数据传输请求的内容是请求获得第一数据传输请求对应的结果数据集中的结果数据页。由于服务器在将第一页的结果数据页返回给客户端的时候,服务器从数据库中按顺序逐条读取目标数据单元、并按照分页规则对获得的结果数据页进行缓存的线程并没有中断,因此只要第二数据传输请求中请求获得的目标页码对应的结果数据页已经缓存完成,即可从缓存空间中查找与目标页码对应的目标结果数据页,并将查到的目标结果数据页反馈至客户端。
上述数据传输方法,在接收到客户端发起的第一数据传输请求后,会根据第一数据传输请求读取数据库中对应的目标数据单元,并对其进行分页和缓存。当结果数据集的第一页缓存完成后,将其反馈给客户端,结束当前第一数据传输请求的响应线程。客户端可以根据当前收到的结果数据页的页码信息,继续发起第二数据传输请求,第二传输请求所对应的数据传输任务与第一数据传输请求一致,由于此时第一数据传输请求对应的结果数据集已经写入缓存中,因此可以直接从缓存空间中获取对应的结果数据页并反馈至客户端。在上述过程中,客户端两次发起的数据传输请求在数据库中对应的多个目标数据单元一致,所获得的结果分别是不同的目标数据单元组成的不同数据页。根据第一数据传输请求开始从数据库中读取目标数据单元后,其读取目标数据单元并对其进行分页、缓存的动作不会中断,直至从数据库中读取了全部的目标数据单元。在这个过程中,第一页的结果数据页会返回给客户端以响应第一数据传输请求后,第二页及以后的结果数据页会继续写入缓存,以待客户端在第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。这个过程中不存在针对每次数据传输请求分别执行数据传输任务的情况,所获得的结果数据集也不会因为多次请求发生改变,从而不会发生数据行遗漏或重复的情况,大大提高了数据传输的质量。
且服务器在响应了客户端发起的第一数据传输请求后,会继续对目标数据单元进行读取、分页和缓存,客户端则在收到第一个结果数据页后继续请求获取下一结果数据页,由于结果数据页的缓存与客户端的响应是两个独立的处理线程,在数据传输的过程中,可以大大提高数据传输效率。
在一个实施例中,上述数据传输方法还包括:每当完成任意页的结果数据页的缓存后,发起缓存就绪信号,根据缓存就绪信号更新结果数据页的缓存状态信息;缓存就绪信号用于表征相对应的结果数据页已存在于缓存空间中。
服务器接收来自客户端的第一数据传输请求后会生成一个数据传输任务,任务调度引擎对这个任务进行具体的管理。服务器在读取目标数据单元的过程中,每完成一页结果数据页的缓存,通过任务调度引擎对应发出一个缓存就绪信号。缓存就绪信号会对结果数据页的缓存状态信息进行更新,缓存状态信息用于表征哪些结果数据页完成了缓存。缓存就绪信号则用于表征对应的结果数据页已经存在于缓存空间中。通过提前缓存,提高了服务器响应客户端第二数据传输请求的效率和数据和传输质量。
在一个实施例中,从缓存空间中查找与目标页码对应的目标结果数据页,并将查到的目标结果数据页反馈至客户端,包括:根据目标页码在缓存状态信息中查询是否存在对应的缓存就绪信号;当存在时,则响应于数据请求指令,从缓存空间中获取与目标页码对应的目标结果数据页并将目标结果数据页反馈至客户端;当不存在时,则在等待目标结果数据页缓存就绪后,从缓存空间中获取目标结果数据页并将目标结果数据页反馈至客户端。
服务器完成针对客户端发起的第一数据传输请求的响应后,对于客户端在第一传输请求之后、且针对相同的数据标识而发起的第二数据传输请求,服务器只需要获取第二数据传输请求中携带的目标页码,然后根据目标页码在缓存状态信息中查询是否存在对应的缓存就绪信号,如果存在就说明目标页码对应的结果数据页已经缓存就绪,直接从缓存空间中获取对应的结果数据页并响应客户端的第二数据传输请求即可。
在一个实施例中,当不存在时,则在等待目标结果数据页缓存就绪后,从缓存空间中获取目标结果数据页并将目标结果数据页反馈至客户端,包括:当不存在时,确定查询等待时间;当在查询等待时间内获得了目标页码对应的目标结果数据页的缓存就绪信号时,将目标页码对应的目标结果数据页反馈至客户端;当在查询等待时间内没有获得目标页码对应的目标结果数据页的缓存就绪信号时,根据目标页码不断地查询相对应的目标结果数据页的缓存状态信息,直至获得目标页码对应的目标结果数据页的缓存就绪信号时,从缓存空间中获取目标结果数据页并将目标结果数据页反馈至客户端。
具体来说,如果目标页码对应的缓存就绪信号在缓存状态信息中没有找到,则说明该目标页码对应的结果数据页还没有缓存就绪,服务器会等待目标结果数据页缓存就绪后,将其反馈给客户端。对服务器来说,在收到第二数据传输请求时,由于已经在收到第一数据传输请求时获得并缓存了对应的结果数据集,此时只需要读取对应的目标页码,在缓存状态信息中查询是否存在该目标页码对应的缓存就绪信号,即可对应作出反馈。如果存在该目标页码对应的缓存就绪信号,服务器可以直接从缓存空间中获取对应的结果数据页并将其反馈至客户端。如果不存在收到该目标页码对应的缓存就绪信号,服务器会等待该目标页码对应的结果数据页的缓存就绪信号,然后将目标结果数据页返回给客户端。
服务器中处理客户端第二数据传输请求的线程与进行目标数据单元读取、分页、缓存的单元相互独立,处理客户端第二数据传输请求的线程进入查询等待时间后,任务调度引擎会主动发出结果数据页的缓存就绪信号,处理客户端第二数据传输请求的线程在等待的过程中如果收到了目标页码对应的目标结果数据页的缓存就绪信号,就可以从缓存空间中取出对应的目标结果数据页并将其发送至客户端。如果直到查询等待时间结束仍然没有获得目标页码对应的目标结果数据页的缓存就绪信号,处理客户端第二数据传输请求的线程就会再次发起查询请求,重新开始任务等待时间的计时。
在一个实施例中,通过唤醒线程发出缓存就绪信号,唤醒信号通过线程间同步机制、MQ(Message Queue,消息队列)消息广播、以及Redis(Remote Dictionary Server,远程数据服务)消息广播中的至少一种方式实现;缓存空间包括分布式文件系统、数据库临时表、以及Redis类缓存中的至少一种。
上述实施例中,任务调度引擎对服务器的数据传输任务进行管理,并会在结果数据页缓存到缓存空间后,主动通过唤醒线程发出缓存就绪信号。唤醒信号通过线程间同步机制、MQ消息广播、以及Redis消息广播中的至少一种方式实现;缓存空间包括分布式文件系统、数据库临时表、以及Redis类缓存中的至少一种。以上方式,使得上述实施例中数据传输方法可以适用于多种场景下的客户端与服务器。
应该理解的是,虽然图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,是利用了上述数据传输方法的一个具体数据传输过程的时序图。
为了进行数据传输,客户端首先发起RPC调用(即第一数据传输请求),其中包含有具体的目标数据标识。服务器接收到客户端的RPC调用请求后,对应生成数据传输任务,并把该任务提交至任务调度引擎,任务调度引擎作为服务器的一部分,独立于服务器中客户端第一、第二数据传输请求的处理线程,对数据传输任务进行管理。
任务调度引擎接收数据传输任务,执行对应的任务内容,获得客户端请求的结果数据集,顺次逐条读取结果数据集中的目标数据单元,形成结果数据页并缓存。结果数据集中包含至少一个结果数据页,每个结果数据页都包含有对应的页码信息。任务调度引擎每完成一页结果数据页的缓存,就会对应发出该结果数据页的缓存就绪信号。
服务器在获得第一页的结果数据页的缓存就绪信号时,就会唤醒当前的RPC请求处理线程(第一数据传输请求对应的处理线程),并把从缓存空间中取出的第一页的结果数据页反馈给客户端。
客户端获得第一页的结果数据页后即开始对其进行处理,同时也会对收到的结果数据页的页码信息进行识别,如果页码信息显示服务器已经从数据库中读取了全部的目标数据单元并将其发送给了客户端,即说明客户端请求进行传输的数据已经全部完成。如果当前页码信息显示服务器仍在读取数据库中的目标数据单元或者是仍有结果数据页没有缓存完成并发送给客户端,那么客户端可以再次发起RPC调用(第二数据传输请求),请求获得指定目标页码的目标结果数据页。
在一个实施例中,如图5所示,提供了一种数据传输装置,包括:接收模块501、响应模块502和缓存模块503,其中:
接收模块501,用于接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元。
响应模块502,用于在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页。
响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端。
缓存模块503,用于在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止。
所述接收模块501,还用于接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。
所述响应模块502,还用于从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
上述数据传输装置,在接收到客户端发起的第一数据传输请求后,会根据第一数据传输请求读取数据库中对应的目标数据单元,并对其进行分页和缓存。当结果数据集的第一页缓存完成后,将其反馈给客户端,结束当前第一数据传输请求的响应线程。客户端可以根据当前收到的结果数据页的页码信息,继续发起第二数据传输请求,第二传输请求所对应的数据传输任务与第一数据传输请求一致,由于此时第一数据传输请求对应的结果数据集已经写入缓存中,因此可以直接从缓存空间中获取对应的结果数据页并反馈至客户端。在上述过程中,客户端两次发起的数据传输请求在数据库中对应的多个目标数据单元一致,所获得的结果分别是不同的目标数据单元组成的不同数据页。根据第一数据传输请求开始从数据库中读取目标数据单元后,其读取目标数据单元并对其进行分页、缓存的动作不会中断,直至从数据库中读取了全部的目标数据单元。在这个过程中,第一页的结果数据页会返回给客户端以响应第一数据传输请求后,第二页及以后的结果数据页会继续写入缓存,以待客户端在第一传输请求之后、且针对相同的数据标识而发起的数据传输请求。这个过程中不存在针对每次数据传输请求分别执行数据传输任务的情况,所获得的结果数据集也不会因为多次请求发生改变,从而不会发生数据行遗漏或重复的情况,大大提高了数据传输的质量。
在一个实施例中,缓存模块,还用于每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;根据所述结果数据页的生成顺序,对所述结果数据页进行编码,得到对应的页码信息;将携带有所述页码信息的结果数据页依次缓存至缓存空间。
在上述实施例中,在获得结果数据页后,顺次对其进行编号缓存,服务器无须重复执行客户端每一个数据传输请求对应的数据传输任务,针对同样内容的数据传输请求,只需要按照编号从缓存空间获得对应的结果数据页进行反馈即可,降低了服务器的访问压力,提高了响应速度。
在一个实施例中,数据传输装置还包括:
唤醒模块,用于每当完成任意页的结果数据页的缓存后,发起缓存就绪信号,根据所述缓存就绪信号更新结果数据页的缓存状态信息;所述缓存就绪信号用于表征相对应的结果数据页已存在于所述缓存空间中。
上述实施例中,缓存就绪信号会对结果数据页的缓存状态信息进行更新,缓存状态信息用于表征哪些结果数据页完成了缓存。通过缓存就绪信号,服务器可以及时了解结果数据页的缓存状态,并对应作出处理,例如更新缓存状态信息、及时响应客户端的数据传输请求等。
在一个实施例中,响应模块,还用于根据所述目标页码在缓存状态信息中查询是否存在对应的缓存就绪信号;当存在时,则响应于所述数据请求指令,从所述缓存空间中获取与所述目标页码对应的目标结果数据页并将所述目标结果数据页反馈至所述客户端;当不存在时,则在等待所述目标结果数据页缓存就绪后,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
上述实施例中,任务调度引擎在每个结果数据页缓存完成后将该数据页对应的缓存就绪信号发送至服务器,收到客户端的第二数据传输请求后,服务器只需要查询缓存状态中是否有目标页码对应的结果数据页的缓存就绪信号就可以完成对应处理,降低了服务器的响应压力,提高了响应效率。
在一个实施例中,响应模块还用于:当不存在时,确定查询等待时间;当在所述查询等待时间内获得了所述目标页码对应的目标结果数据页的缓存就绪信号时,将所述目标页码对应的目标结果数据页反馈至客户端;当在所述查询等待时间内没有获得所述目标页码对应的目标结果数据页的缓存就绪信号时,根据所述目标页码不断地查询相对应的目标结果数据页的缓存状态信息,直至获得所述目标页码对应的目标结果数据页的缓存就绪信号时,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
上述实施例中,当所述缓存状态表征所述目标结果数据页没有缓存就绪时,服务器设置有查询等待时间,在这个时间内,服务器能够及时接收到任务调度引擎的目标结果数据页缓存就绪信号并对其进行处理,提高了响应效率。
在一个实施例中,上述数据传输装置中,结果数据页的缓存就绪信号通过唤醒线程发出,所述唤醒信号通过线程间同步机制、MQ消息广播、以及Redis消息广播中的至少一种方式实现;所述缓存空间包括分布式文件系统、数据库临时表、以及Redis类缓存中的至少一种。
以上方式,使得上述实施例中数据传输方法可以适用于多种场景下的客户端与服务器。
关于上述数据传输装置的具体限定可以参见上文中对于数据传输方法的限定,在此不再赘述。上述数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据传输方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据传输方法,其特征在于,所述方法包括:
接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;
响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,包括:
每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;
根据所述结果数据页的生成顺序,对所述结果数据页进行编码,得到对应的页码信息;
将携带有所述页码信息的结果数据页依次缓存至缓存空间。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
每当完成任意页的结果数据页的缓存后,发起缓存就绪信号,根据所述缓存就绪信号更新结果数据页的缓存状态信息;所述缓存就绪信号用于表征相对应的结果数据页已存在于所述缓存空间中。
4.根据权利要求1所述的方法,其特征在于,所述从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端,包括:
根据所述目标页码在缓存状态信息中查询是否存在对应的缓存就绪信号;
当存在时,则响应于所述数据请求指令,从所述缓存空间中获取与所述目标页码对应的目标结果数据页并将所述目标结果数据页反馈至所述客户端;
当不存在时,则在等待所述目标结果数据页缓存就绪后,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
5.根据权利要求4所述的方法,其特征在于,当不存在时,则在等待所述目标结果数据页缓存就绪后,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端,包括:
当不存在时,确定查询等待时间;
当在所述查询等待时间内获得了所述目标页码对应的目标结果数据页的缓存就绪信号时,将所述目标页码对应的目标结果数据页反馈至客户端;
当在所述查询等待时间内没有获得所述目标页码对应的目标结果数据页的缓存就绪信号时,根据所述目标页码不断地查询相对应的目标结果数据页的缓存状态信息,直至获得所述目标页码对应的目标结果数据页的缓存就绪信号时,从所述缓存空间中获取目标结果数据页并将所述目标结果数据页反馈至所述客户端。
6.根据权利要求3至5中任一项所述的方法,其特征在于,所述缓存就绪信号通过唤醒线程发出,所述唤醒信号通过线程间同步机制、MQ消息广播、以及Redis消息广播中的至少一种方式实现;所述缓存空间包括分布式文件系统、数据库临时表、以及Redis类缓存中的至少一种。
7.一种数据传输装置,其特征在于,所述装置包括:
接收模块,用于接收客户端发起的携带有目标数据标识的第一数据传输请求,并根据所述目标数据标识从数据库中按顺序逐条读取目标数据单元;
响应模块,用于在按顺序逐条读取目标数据单元的过程中,当从首条目标数据单元开始所读取到的目标数据单元满足分页条件时,基于读取到的目标数据单元生成第一页的结果数据页;响应于所述第一数据传输请求,将携带有与第一页对应的页码信息的结果数据页反馈至所述客户端;
缓存模块,用于在生成第一页的结果数据页之后,继续按顺序逐条读取新的目标数据单元,每当读取到的目标数据单元满足所述分页条件时,则生成相应的一页结果数据页,并将相应的结果数据页依次缓存至缓存空间,直至将所述数据库中与所述目标数据标识对应的最后一条目标数据单元实现分页缓存为止;
所述接收模块,还用于接收所述客户端发起的携带目标页码的第二数据传输请求;所述第二数据传输请求为在所述第一传输请求之后、且针对相同的数据标识而发起的数据传输请求;
所述响应模块,还用于从所述缓存空间中查找与所述目标页码对应的目标结果数据页,并将查到的所述目标结果数据页反馈至所述客户端。
8.根据权利要求7所述的装置,其特征在于,所述缓存模块,还用于每当读取到的目标数据单元的数量达到预设数量时,则生成相应的一页结果数据页;根据所述结果数据页的生成顺序,对所述结果数据页进行编码,得到对应的页码信息;将携带有所述页码信息的结果数据页依次缓存至缓存空间。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202011623264.4A 2020-12-30 2020-12-30 数据传输方法、装置、计算机设备和存储介质 Active CN112866339B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011623264.4A CN112866339B (zh) 2020-12-30 2020-12-30 数据传输方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011623264.4A CN112866339B (zh) 2020-12-30 2020-12-30 数据传输方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN112866339A true CN112866339A (zh) 2021-05-28
CN112866339B CN112866339B (zh) 2022-12-06

Family

ID=75999272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011623264.4A Active CN112866339B (zh) 2020-12-30 2020-12-30 数据传输方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN112866339B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205654A (zh) * 2021-12-15 2022-03-18 中国电信股份有限公司 数据处理系统、方法、装置、计算机可读存储介质及设备
CN115801809A (zh) * 2022-11-03 2023-03-14 广州辰创科技发展有限公司 跨网数据同步控制系统、方法及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1983225A (zh) * 2006-05-09 2007-06-20 华为技术有限公司 一种在异步时钟域传输数据的装置及其方法
CN104850548A (zh) * 2014-02-13 2015-08-19 中国移动通信集团山西有限公司 一种实现大数据平台输入/输出处理的方法及系统
WO2017005094A1 (zh) * 2015-07-03 2017-01-12 阿里巴巴集团控股有限公司 一种数据查询方法和装置
US20170339209A1 (en) * 2016-05-19 2017-11-23 Oracle International Corporation Graph analytic engine that implements efficient transparent remote access over representational state transfer
CN108153874A (zh) * 2017-12-26 2018-06-12 福建星瑞格软件有限公司 一种大数据高耗时查询结果集的快速分页方法
CN109446227A (zh) * 2018-10-17 2019-03-08 上海点融信息科技有限责任公司 用于处理缓存分页的方法、装置及计算机可读存储介质
CN109885729A (zh) * 2019-02-20 2019-06-14 北京奇艺世纪科技有限公司 一种显示数据的方法、装置及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1983225A (zh) * 2006-05-09 2007-06-20 华为技术有限公司 一种在异步时钟域传输数据的装置及其方法
CN104850548A (zh) * 2014-02-13 2015-08-19 中国移动通信集团山西有限公司 一种实现大数据平台输入/输出处理的方法及系统
WO2017005094A1 (zh) * 2015-07-03 2017-01-12 阿里巴巴集团控股有限公司 一种数据查询方法和装置
US20170339209A1 (en) * 2016-05-19 2017-11-23 Oracle International Corporation Graph analytic engine that implements efficient transparent remote access over representational state transfer
CN108153874A (zh) * 2017-12-26 2018-06-12 福建星瑞格软件有限公司 一种大数据高耗时查询结果集的快速分页方法
CN109446227A (zh) * 2018-10-17 2019-03-08 上海点融信息科技有限责任公司 用于处理缓存分页的方法、装置及计算机可读存储介质
CN109885729A (zh) * 2019-02-20 2019-06-14 北京奇艺世纪科技有限公司 一种显示数据的方法、装置及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205654A (zh) * 2021-12-15 2022-03-18 中国电信股份有限公司 数据处理系统、方法、装置、计算机可读存储介质及设备
CN115801809A (zh) * 2022-11-03 2023-03-14 广州辰创科技发展有限公司 跨网数据同步控制系统、方法及介质
CN115801809B (zh) * 2022-11-03 2023-11-03 广州辰创科技发展有限公司 跨网数据同步控制系统、方法及介质

Also Published As

Publication number Publication date
CN112866339B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
CN107943594B (zh) 数据获取方法和装置
US8972998B2 (en) Processing annotation requests using multithreaded constituent task and independent input/output tasks
CN111464615B (zh) 请求处理方法、装置、服务器及存储介质
CN111221469B (zh) 同步缓存数据的方法、装置和系统
CN110427386B (zh) 数据处理方法、装置及计算机存储介质
KR20160030381A (ko) 웹 페이지 액세스 방법, 장치, 라우터, 프로그램 및 기록매체
CN105488208B (zh) 数据查找方法与装置
CN112866339B (zh) 数据传输方法、装置、计算机设备和存储介质
JP2005018787A (ja) キャッシュエントリを無効化するために使用できるデータベーステーブル変更情報の登録および取り出し
CN100461136C (zh) 多处理器系统中维持数据一致性的方法和系统
CN111414139A (zh) 在线远程打印方法、装置、计算机设备和存储介质
CN113542420B (zh) 热点文件的处理方法、装置、电子设备和介质
CN110764688A (zh) 对数据进行处理的方法和装置
CN107665235B (zh) 缓存处理方法、装置、计算机设备和存储介质
CN110287187B (zh) 多个服务器中数据表同步更新方法、系统和存储介质
CN113704267A (zh) 基于ElasticSearch的数据查询方法、系统、设备及存储介质
US20190238603A1 (en) Response caching
CN114138785B (zh) 适用于大数据量的数据检索方法、装置、设备及存储介质
CN112818021B (zh) 数据请求处理方法、装置、计算机设备和存储介质
CN112565286A (zh) 一种基于rpc访问的任务响应方法、装置、设备和存储介质
CN113672640A (zh) 数据查询方法、装置、计算机设备和存储介质
CN114138895A (zh) 多数据源的数据同步方法、装置、计算机设备和存储介质
CN111078736A (zh) 一种数据聚合处理方法、装置、终端及存储介质
CN114154044B (zh) 消息推送方法、装置、计算机设备和存储介质
CN114979025B (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