CN111600957A - 文件传输方法、装置、***和电子设备 - Google Patents

文件传输方法、装置、***和电子设备 Download PDF

Info

Publication number
CN111600957A
CN111600957A CN202010430024.6A CN202010430024A CN111600957A CN 111600957 A CN111600957 A CN 111600957A CN 202010430024 A CN202010430024 A CN 202010430024A CN 111600957 A CN111600957 A CN 111600957A
Authority
CN
China
Prior art keywords
file
server
information
transmitted
server side
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.)
Pending
Application number
CN202010430024.6A
Other languages
English (en)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010430024.6A priority Critical patent/CN111600957A/zh
Publication of CN111600957A publication Critical patent/CN111600957A/zh
Pending legal-status Critical Current

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • 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/06Protocols 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 Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了一种文件传输方法、装置、***和电子设备。该方法包括:获取待处理文件,待处理文件包括至少一种文件格式的文件;将待处理文件转换为指定文件格式,得到待传输文件;以及将待传输文件的文件信息发送给第二服务器端,以便第三服务器端基于获取路径信息从第一服务器端获取待传输文件,获取路径信息是第三服务器端基于从第二服务器端获取的文件信息确定的。

Description

文件传输方法、装置、***和电子设备
技术领域
本公开涉及互联网技术领域,更具体地,涉及一种文件传输方法、装置、***和电子设备。
背景技术
随着互联网技术和信息技术的不断发展,多种机构需要处理的业务量急剧增多。例如,交易所、登记公司、券商、基金公司、商业银行等金融机构,由于技术平台不同,每天都会交互处理大量的不同类型的待处理文件。在待处理文件导入过程中涉及获取数据、整理数据、核对等过程,待处理文件可以采用串行导入的方式。
在实现本公开构思的过程中,发明人发现相关技术至少存在如下问题:在自动导入待处理文件的过程中,由于存在多种多样的文件格式,需要分别针对不同的文件格式设计不同的导入方案,文件导入效率无法满足需求。
发明内容
有鉴于此,本公开提供了一种可以有效提文件导入效率的文件传输方法、装置、***和电子设备。
本公开的一个方面提供了一种由第一服务器端执行的文件传输方法,包括获取待处理文件,待处理文件包括至少一种文件格式的文件;将待处理文件转换为指定文件格式,得到待传输文件;以及将待传输文件的文件信息发送给第二服务器端,以便第三服务器端基于获取路径信息从第一服务器端获取待传输文件,获取路径信息是第三服务器端基于从第二服务器端获取的文件信息确定的。
本公开实施例提供的文件传输方法,由第一服务器端将待处理文件转换为统一的文件格式,便于第三服务器端以相同的方式处理从第一服务器端获取的待传输文件,提升文件处理效率和降低***复杂度。待传输文件的文件信息存储在第二服务器端后,便于第二服务器端基于文件信息给第三服务器端分配文件处理任务,如将至少一个待传输文件分别分配给至少一个第三服务器节点,实现文件的并发处理,提升文件导入和处理效率。
本公开的一个方面提供了一种由第二服务器端执行的文件传输方法,包括接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息;以及基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成调度任务;以及将调度任务加入任务调度队列,以便第三服务器端基于任务调度队列确定获取路径信息,并且基于获取路径信息从第一服务器端获取待传输文件,这样使得各第三服务器节点可以基于待传输文件生成待执行指令,以实现如将待传输文件存储在数据库中。
本公开的一个方面提供了一种由第三服务器端执行的文件传输方法,包括对于每个第三服务器节点,响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息;基于文件信息确定待传输文件的获取路径信息;基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令。
本公开的一个方面提供了一种由文件传输***执行的文件传输方法,文件传输***包括相互连接的第一服务器端、第二服务器端和第三服务器端,第三服务器端包括至少一个第三服务器节点,上述方法包括:第一服务器端将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将待传输文件的文件信息发送给第二服务器端,待处理文件包括至少一种文件格式的文件;第二服务器端基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成任务调度队列,第三服务器端信息表征至少一个第三服务器节点的服务状态;以及第三服务器端响应于任务调度队列的调度任务,确定待传输文件的文件信息,并且基于文件信息确定待传输文件的获取路径信息,以便基于获取路径信息获取待传输文件。
本公开的一个方面提供了一种文件传输装置,包括:第一文件获取模块、第二文件获取模块和第一文件发送模块。其中,第一文件获取模块,用于获取待处理文件,待处理文件包括至少一种文件格式的文件;第二文件获取模块,用于将待处理文件转换为指定文件格式,得到待传输文件;以及第一文件发送模块,用于将待传输文件的文件信息发送给第二服务器端,以便第三服务器端基于获取路径信息从第一服务器端获取待传输文件,获取路径信息是第三服务器端基于从第二服务器端获取的文件信息确定的。
本公开的一个方面提供了一种文件传输装置,包括:第一文件接收模块、第一文件分配模块和调度模块。其中,第一文件接收模块,用于接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息;以及第一文件分配模块,用于基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成调度任务;以及调度模块,用于将调度任务加入任务调度队列,以便第三服务器端基于任务调度队列确定获取路径信息,并且基于获取路径信息从第一服务器端获取待传输文件。
本公开的一个方面提供了一种文件传输装置,包括:任务相应模块、获取路径信息确定模块和第三文件获取模块。其中,任务相应模块,用于响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息;获取路径信息确定模块,用于基于文件信息确定待传输文件的获取路径信息;以及第三文件获取模块,用于基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令。
本公开的一个方面提供了一种文件传输***,包括:相互连接的第一服务器端、第二服务器端和第三服务器端,第三服务器端包括至少一个第三服务器节点。其中,第一服务器端、第二服务器端和第三服务器端被配置为:第一服务器端将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将待传输文件的文件信息发送给第二服务器端,待处理文件包括至少一种文件格式;第二服务器端基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待处理文件,以生成任务调度队列,第三服务器端信息表征至少一个第三服务器节点的服务状态;以及第三服务器端响应于任务调度队列的调度任务,确定文件信息,并且基于文件信息确定待传输文件的获取路径信息,以便在基于获取路径信息获取待传输文件后执行基于待传输文件生成的指令。
本公开的另一方面提供了一种电子设备,包括至少一个处理器以及存储装置,其中,存储装置用于存储可执行指令,可执行指令在被处理器执行时,实现如上所述的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,计算机程序包括计算机可执行指令,指令在被执行时用于实现如上所述的方法。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的文件传输方法、装置、***和电子设备的应用场景;
图2示意性示出了根据本公开实施例的可以应用文件传输方法、装置、***和电子设备的示例性***架构;
图3示意性示出了根据本公开实施例的由第一服务器端执行的文件传输方法的流程图;
图4示意性示出了根据本公开实施例的文件信息的示意图;
图5示意性示出了根据本公开实施例的由第二服务器端执行的文件传输方法的流程图;
图6示意性示出了根据本公开实施例的分配待传输文件的示意图;
图7示意性示出了根据本公开实施例的由第三服务器端执行的文件传输方法的流程图;
图8示意性示出了根据本公开实施例的更新第三服务器端信息的示意图;
图9示意性示出了根据本公开实施例的由文件传输***执行的文件传输方法的流程图;
图10示意性示出了根据本公开实施例的由文件传输***执行的文件传输方法的数据流图;
图11示意性示出了根据本公开实施例的文件传输装置的结构示意图;
图12示意性示出了根据本公开另一实施例的文件传输装置的结构示意图;
图13示意性示出了根据本公开另一实施例的文件传输装置的结构示意图;
图14示意性示出了根据本公开实施例的文件传输***的结构示意图;以及
图15示意性示出了根据本公开实施例的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。至少一个实施例在没有这些具体细节的情况下也可以被实施。在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加至少一个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个特征。
对于需要处理大量各种文件格式的文件的机构(如金融机构、网上交易平台等),如何利用自身的技术手段,快速的响应处理这些文件,形成自身所需的数据,并分析得出具有商业价值的信息,成为各机构之间的核心竞争力,便于为客户提供更好更优质地服务。
本公开的实施例提供了一种文件传输方法、装置、***和电子设备。该文件传输方法包括分别由第一服务器端执行的文件预处理过程、由第二服务器端执行的文件分配过程和由第三服务器端执行的文件传输过程。在文件预处理过程中,首先,获取待处理文件,待处理文件包括至少一种文件格式的文件,然后,将待处理文件转换为指定文件格式,得到待传输文件,接着,将待传输文件的文件信息发送给第二服务器端。在完成文件预处理过程后进入文件分配过程,首先,第二服务器端接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息,然后,基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成调度任务,接着,将调度任务加入任务调度队列。在完成文件分配过程后进入文件传输过程,首先,响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息,然后,基于文件信息确定待传输文件的获取路径信息,接着,基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令,完成如文件导入数据库等操作。
图1示意性示出了根据本公开实施例的文件传输方法、装置、***和电子设备的应用场景。
如图1所示,第一服务器端具有节点1~4等,第三服务器端具有节点a~d等。和相关技术中通过数据库直接接收并存储至少一个待处理文件不同的是,第一服务器端的各节点可以分别接收来自不同主体的待处理文件,并分别进行预处理(如进行格式转换、压缩、备份等),实现了线程级并发处理。第一服务器端不是直接把各待处理文件发送给应用数据库,而是将待处理文件的文件信息发送给第二服务器端(如数据库服务器),该文件信息中可以包括待处理文件的文件标识、节点标识和路径信息等,然后,第二服务器端可以基于文件信息和第三服务器端的服务器节点信息对待处理文件进行分配以确定合适的应用服务器(实现了进程级并发),形成调度任务和任务调度队列,这样便于第三服务器端的各服务器节点基于调度任务确定待处理文件的获取路径信息,实现基于获取路径信息获取待处理文件,以便执行与待传输文件相关的操作。有效提升了文件处理效率和可靠性。
图2示意性示出了根据本公开实施例的可以应用文件传输方法、装置、***和电子设备的示例性***架构。需要注意的是,图2所示仅为可以应用本公开实施例的***架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、***、环境或场景。
如图2所示,根据该实施例的***架构200可以包括终端设备201、202,网络203和服务器204、205、206。网络203可以包括至少一个网关、集线器、网线等,用以在终端设备201、202和服务器204、205、206之间提供通信链路的介质。网络203可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备201、202通过网络203与其他终端设备和服务器204、206进行交互,以接收或发送信息等,如发送服务请求、发送信息请求、接收处理结果等。终端设备201、202可以安装有各种通讯客户端应用,例如网点终端上安装有银行类应用、运维类应用、网页浏览器应用、搜索类应用、办公类应用、即时通信工具、邮箱客户端、社交平台软件等应用(仅为示例)。
终端设备201、202包括但不限于自助业务办理机器、智能手机、虚拟现实设备、增强现实设备、平板电脑、膝上型便携计算机等等。
服务器204可以接收请求,如业务请求(如对指定对象的处理等,该指定对象具有相关的文件),服务器204将文件信息发送给服务器205,服务器205可以根据待处理文件的文件信息和所请求的服务器的状态等进行文件分配以提升处理效率,并生成调度任务。服务器206可以根据调度任务从存储该待处理文件的服务器204获取待处理文件以进行业务处理。例如,服务器204、205、206可以为后台管理服务器、服务器集群等。后台管理服务器可以对接收到的服务请求、信息请求、数据库更新指令等进行分析处理,并将处理结果(如请求的信息、处理的结果等)反馈给终端设备。
需要说明的是,本公开实施例所提供的文件传输方法一般可以由服务器204、205、206执行。本公开实施例所提供的文件传输方法也可以由不同于服务器204、205、206且能够与终端设备201、202和/或服务器204、205、206通信的服务器或服务器集群执行。
应该理解,终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图3示意性示出了根据本公开实施例的由第一服务器端执行的文件传输方法的流程图。如第一服务器端由至少一个文件服务器节点组成,每个文件服务器节点与数据库服务器相连,运行定时任务。具体可以采用JAVA第三方定时任务框架Quartz(包括文件获取、文件备份、文件处理等),将处理后的文件信息发送给第二服务器端,以写入数据库,图3中各操作对应不同线程,最大限度地解耦合。
如图3所示,该文件传输方法包括操作S301~操作S305。
在操作S301,获取待处理文件,待处理文件包括至少一种文件格式的文件。
在本实施例中,第一服务器端分别与第二服务器端和第三服务器端连接,第一服务器端可以包括至少一个第一服务器节点,以服务器集群的形式接收待处理文件。
例如,文件服务器集群外接第三方***,使用多线程并发处理,接收不同渠道的待处理文件(如数据文件),落地后汇总存储。其中,不同渠道的待处理文件的格式可能不同,如原始文件格式包括但不限于:dbf、excel、csv、xml等格式。应用服务器对这些文件进行处理时,可以分别采用不同的处理流程,这给应用服务器进行文件处理带来了不便,如需要针对不同的格式分别开发不同的程序等。
在操作S303,将待处理文件转换为指定文件格式,得到待传输文件。
在本实施例中,可以分别将各种文件格式转换为指定文件格式,以便于第三服务器端读取文件信息并进行处理。例如,指定格式包括但不限于以下任意一种:txt、dbf、excel、csv、xml等。该文件格式转换过程可以由第一服务器端本地实现,也可以通过调用第三方应用接口来实现。
例如,通过第三方应用接口(API)读取并解析待处理文件,不同文件格式都可以实现公共接口FileReader中的read()方法返回文件内容,并将文件内容写入新的txt文件,相同接口的文件汇总写入同一个txt文件,防止多个小文件占用线程影响后续处理效率。其中,对于不同的文件格式的文件,可以根据待处理文件的处理单元的等级,按照由高到低的顺序将各处理单元的信息转换为指定格式文件的信息,其中,高等级的处理单元包括至少一个低等级的处理单元。例如,DBF文件包括字段数组、记录数组和字段等处理单元,首先读取字段数组,并确定各字段数据包括的记录数组的字段信息。又例如,EXCEL文件包括工作簿、页和记录行等处理单元。又例如,CSV文件以分隔符表征处理单元。
以下以excel格式的文件读取并解析可以包括如下操作:获取文件输入流,然后,读取工作簿信息,接着,读取页信息,然后,读取记录行,这样可以将excel格式的文件的内容由高到低逐级读取出来,并按照指定文件格式写入待传输文件中。
以对excel格式的文件进行转换为例进行说明。
Figure BDA0002500208610000091
Figure BDA0002500208610000101
Figure BDA0002500208610000111
在操作S305,将待传输文件的文件信息发送给第二服务器端,以便第三服务器端基于获取路径信息从第一服务器端获取待传输文件,获取路径信息是第三服务器端基于从第二服务器端获取的文件信息确定的。
在本实施例中,可以将待传输文件的文件信息写入数据库中,便于第三服务器端在数据库中基于自身的网际互联协议(Internet Protocol,简称IP)地址进行匹配,确定待传输文件的获取路径信息。
具体地,文件信息包括获取路径信息以及以下至少一种:文件标识信息、文件大小信息、文件状态信息,其中,获取路径信息包括第一服务器节点地址信息和文件路径信息。例如,文件信息包括:文件名、路径、大小、状态、第一服务器节点IP等信息,将这些信息的取值写入数据库。
图4示意性示出了根据本公开实施例的文件信息的示意图。
如图4所示,由第一服务器端发送给第二服务器端的文件信息中可以包括文件名、文件路径和第一服务器节点IP地址,这样便于第三服务器端基于被分配的待传输文件的标识信息(如文件名)确定该待传输文件所在的第一服务器节点的IP地址和文件路径,这样就可以向第一服务器端请求该待传输文件。在进行文件分配的过程中,可以在数据库中建立第三服务器端的第三服务器节点的IP地址与文件信息之间的映射关系。
例如,第二服务器端将文件2分配给第三服务器节点3,则可以在图4中文件2一行写入第三方服务器节点3的IP地址。这样使得第三服务器节点可以通过查表的方式获取待传输文件的获取路径信息。此外,如果是以生成调度任务的方式进行文件传输,则建立的映射关系中还可以进一步包括时间参数。另外,第二服务器端可以对数据传输操作进行记录,如什么时间被触发调度任务,或者,第三服务器端什么时间开始执行导入任务,什么时间完成了该调度任务或者导入任务,如记录导入开始时间和导入结束时间。第二服务器端中建立映射关系后的文件信息可以如表1所示。
表1
Figure BDA0002500208610000121
在另一个实施例中,一些大数据量的文件不便于传输,而文本文件的压缩效率比较高,压缩后能有效降低传输时占用的网络资源,并增加后续处理效率。相应地,上述方法还可以包括如下操作。在将待处理文件转换为指定文件格式之后,压缩指定文件格式的待处理文件。
具体地,为了提升压缩效率,可以使用多线程并发处理的方式对待处理文件进行压缩处理。压缩方法可以采用无损压缩方式和不妨碍第三服务器端执行待处理文件的有损压缩方式。
在另一个实施例中,为了便于进行历史数据查询、异常处理等,上述方法还可以包括如下操作,在获取待处理文件之后,备份待处理文件。具体地,可以使用多线程并发处理,备份待处理文件的原始文件以保证文件的完整性和一致性。
例如,可以根据配置的备份任务事件和函数计算的触发关系执行备份操作。任务函数计算以弹性的方式处理备份任务,并根据预设规则(如按照来源、按照时间、按照业务等)进行打包、压缩、去重等处理,备份文件可以存储在本地或云端,对于需长期保留的转存至磁带等介质中。
图5示意性示出了根据本公开实施例的由第二服务器端执行的文件传输方法的流程图。
如图5所示,该方法可以包括操作S501~操作S505。
在操作S501,接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息。
在本实施例中,第二服务器端可以为数据库服务器,第一服务器端可以是文件服务器集群,第三服务器端可以是应用服务器集群。该数据库服务器分别与文件服务器集群和应用服务器集群连接,以接收并存储来自文件服务器集群的文件信息、来自应用服务器集群的服务器节点状态信息等。第三服务器端信息可以包括第三服务器节点的IP地址信息,这样便于在文件信息和第三服务器节点的IP地址信息之间建立映射关系,以便于第三服务器端基于该映射关系确定待传输文件的获取路径信息。
具体地,运行定时任务,采用如ORACLE数据库定时任务DBMS_JOB,将文件导入任务分配给某一个可用的应用服务器节点。
在操作S503,基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成调度任务。
例如,可以采用轮询、随机算法、哈希取模等方法进行文件分配。
在一个实施例中,基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件可以包括如下操作。
首先,基于文件信息(如大小、已被分配的待处理文件及其占用的第三服务器节点等)确定负载均衡策略。采用合适的负载均衡算法均匀的分配任务以提升待处理文件的处理效率。可以采用的负载均衡算法包括但不限于:轮询、随机算法、哈希取模等。此外,还可以采用自定义的负载均衡算法:如文件数均衡策略和文件大小均衡策略等。例如,文件数均衡为:查询当前每个节点正在处理的文件(可以是由第一服务器端进行压缩处理后的压缩文件)的文件数量,分配给压缩文件数最少的一个节点。该算法可以均衡每个节点正在处理的任务数,防止出现分配不均导致处理效率降低等问题。又例如,文件大小均衡为:查询当前每个节点正在处理的文件大小总和,分配给文件大小总和最小的一个节点。该算法可以均衡每个服务器的处理的文件大小,防止出现因为个别文件过大导致某个节点内存溢出等风险。
然后,基于负载均衡策略和第三服务器端信息给至少一个第三服务器节点分配待传输文件。具体地,可以参考图4相关说明部分以实现待传输文件的分配过程。本实施例可以根据待传输文件自身的特点选择适用的负载均衡策略。例如,原始文件大小比较平均,则可以选择文件数均衡策略。又例如,对于个别数据量大的待传输文件,而其他文件比较平均的情形,则可以选择文件大小均衡策略。
图6示意性示出了根据本公开实施例的分配待传输文件的示意图。
如图6所示,第一服务器节点1上存储有文件a、文件b等待传输文件,第一服务器节点2上存储有文件c、文件d等待传输文件,第一服务器节点3上存储有文件e、文件f等待传输文件。第二服务器端对待传输文件:文件a~文件f等进行应用服务器节点分配,以便于应用服务器节点处理各待传输文件。如根据第三服务器端的各第三服务器节点的状态、文件a~文件f的特点等,为文件a~文件f分别分配应用服务节点。例如,图6中文件b和文件d的哈希取模比较相似,第三服务器节点3处于正常工作状态,且可用运算资源能满足针对文件b和文件d的运算需求,则可以将文件b和文件d分配给第三服务器节点3。又例如,文件a是大数据量文件,所需占用的运算资源较多,则可以为文件a单独分配第三服务器节点2。又例如,文件c和文件e是小数据量文件,可以分配给同一个第三服务器节点进行处理,则可以将文件c和文件e分配给第三服务器节点1。又例如,第三服务器节点1~3已被分配了文件,第三服务器节点4当前未被分配文件,且运算资源充足,则可以基于轮询的方式确定将文件f分配给第三服务器节点4。
在操作S505,将调度任务加入任务调度队列,以便第三服务器端基于任务调度队列确定获取路径信息,并且基于获取路径信息从第一服务器端获取待传输文件
在另一个实施例中,上述方法还可以包括如下操作。响应于来自第三服务器端的注册请求和/或注销请求,更新第三服务器端的第三服务器端信息。
在一个具体实施例中,以第一服务器端进行文件压缩处理后的待传输文件为例进行说明,首先,接收来自第一服务器端的压缩文件信息,记录每一个压缩文件信息。并且,接收来自第三服务器端的应用服务器信息,***每一个正常的应用服务器节点的信息,并删除每一个异常的应用服务器节点的信息。然后,将各压缩文件分配到各个应用服务器。接着,将任务加入调度队列,更新文件信息表中的文件状态,使待传输文件进入待导入状态。
图7示意性示出了根据本公开实施例的由第三服务器端执行的文件传输方法的流程图。其中,第三服务器端分别与第一服务器端和第二服务器端连接,第三服务器端包括至少一个第三服务器节点。第三服务器节点可以为应用服务器节点,每个应用服务器节点与数据库(第二服务器端)相连,应用服务器节点在第二服务器端注册自身的信息(如IP地址等)。运行定时任务,如采用JAVA第三方定时任务框架Quartz,获取数据库分配的任务以处理待传输文件(如向指定对象导入待传输文件)等。
如图7所示,对于每个第三服务器节点,该文件传输方法可以包括操作S701~操作S705。
在操作S701,响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息。
例如,调度任务中可以包括被分配的待传输文件的文件信息,该文件信息中可以包括待传输文件所在的第一服务器节点的IP地址以及文件路径,这样使得第三服务器节点可以基于第一服务器节点的IP地址和文件路径获取待传输文件。该待传输文件可以经过压缩处理的,以减少网络资源占用。
例如,从第二服务器端获取数据库压缩文件信息。数据库压缩文件信息表中记录了所有压缩文件的状态信息,到指定的服务器(如文件服务器)获取待处理的压缩文件信息。
在操作S703,基于文件信息确定待传输文件的获取路径信息。如第一服务器节点的IP地址和文件路径。
在操作S705,基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令。
例如,基于获取路径信息从第一服务器节点(如文件服务器)拷贝压缩文件。可采用不同的传输协议,如文件传输协议(File Transfer Protocol,简称FTP)、超文本传输协议(Hyper Text Transfer Protocol,简称HTTP)等,或者采用共享磁盘方式。
在另一个实施例中,待传输文件是被压缩的待处理文件。相应地,基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令可以包括如下操作。首先,获取并且解压被压缩的待处理文件。然后,基于待处理文件生成待执行指令。接着,执行待执行指令,以实现如将待处理文件传输至数据库中,或者执行特定的操作等。
例如,对压缩处理后的待传输文件进行解压处理。压缩文件解压得到指定格式的待传输文件,如txt格式的待处理文件。然后,生成control文件。如根据文件接口定义,生成control文件。接着,执行sqlldr命令。SQL*LOADER是ORACLE的数据加载工具,通常用来将操作***文件(数据)迁移到ORACLE数据库中。应用服务器解压得到txt文件,并生成control文件后,更新文件信息表中的导入开始时间,调用sqlldr命令导入ORACLE数据库,导入完成后更新文件信息表中的文件状态、导入结束时间,导入完成。
例如,可以执行如下操作指令。
sqlldr userid=user/pass@orcl//数据库用户名、密码、实例名
control=/control/XXX.ctl//control文件
data=/data/XXX.txt//数据文件
log=/log/XXX.txt.log//日志文件
bad=/bad/XXX.txt.bad//错误文件
errors=200000rows=1000bindsize=655360silent=header,feedback
在另一个实施例中,上述方法还可以包括如下至少一种操作。
更新第三服务器端信息,第三服务器端信息表征至少一个第三服务器节点的服务状态。
在第三服务器节点满足提供服务条件后,向第二服务器端发送注册请求,以注册第三服务器节点的地址。
在第三服务器节点满足停止服务条件后,向第二服务器端发送注销请求,以注销第三服务器节点的地址。
例如,启动应用服务器后,应用服务器在数据库注册IP。应用服务器启动时,除了加载自身运行所需的组件外,同时启动注册组件,往数据库集群信息表中添加当前服务器IP,作为服务器唯一标识和负载均衡策略的节点,支持动态扩容、热拔插。集群信息表如表2所示。
表2
服务器类型 应用服务器IP
又例如,当停止应用服务器时,如应用服务器出现宕机等异常情况时,可以在数据库注销该应用服务器的IP地址。例如,应用服务器停止时,启动注销组件,从数据库集群信息表中删除当前应用服务器的IP地址,不再作为负载均衡策略的节点,支持动态缩容,故障隔离。若任务执行中服务器出现异常宕机导致任务中断,定时批量将中断的任务重新分配服务器并加入调度队列。
图8示意性示出了根据本公开实施例的更新第三服务器端信息的示意图。
如图8所示,第三服务器节点1开启后,满足供服务条件,则第三服务器节点1可以向第二服务器端进行IP注册,以在数据库集群信息表中添加第三服务器节点1的IP地址。第三服务器节点2当前处于正常工作状态,则保持数据库集群信息表中第三服务器节点2的IP地址。第三服务器节点3当前处于异常状态,则删除数据库集群信息表中第三服务器节点3的IP地址。第三服务器节点4需要进行关闭,则可以向第二服务器端进行IP注销,以在数据库集群信息表中删除第三服务器节点4的IP地址。
在另一个实施例中,上述方法还包括:在执行待执行文件指令之后,向第二服务器端发送调度任务状态更新信息。例如,更新调度任务的状态,调度任务是否完成、导入开始时间、导入完成时间、由哪个IP地址的服务器节点执行该调度任务等。
本公开实施例提供的文件传输方法,至少部分解决了传统文件导入过程中,需要单个文件逐个处理导入的问题。同时,还至少部分解决了受限于文件格式的多样化,需设计多种导入方案,导入效率和准确性、扩展性较差的缺点。本公开实施例提供的文件传输方法结合大数据量文件导入数据库的特点,提供了一套通用的自动化快速导入方法,动态扩容缩容,扩展性好,支持高并发高可用、软负载均衡、故障隔离等机制。
图9示意性示出了根据本公开实施例的由文件传输***执行的文件传输方法的流程图。该文件传输***包括相互连接的第一服务器端、第二服务器端和第三服务器端,第三服务器端包括至少一个第三服务器节点。
如图9所示,上述方法可以包括操作S901~操作S905。
在操作S901,第一服务器端将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将待传输文件的文件信息发送给第二服务器端,待处理文件包括至少一种文件格式的文件。
在操作S903,第二服务器端基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成任务调度队列,第三服务器端信息表征至少一个第三服务器节点的服务状态。
在操作S905,第三服务器端响应于任务调度队列的调度任务,确定待传输文件的文件信息,并且基于文件信息确定待传输文件的获取路径信息,以便基于获取路径信息获取待传输文件。
图10示意性示出了根据本公开实施例的由文件传输***执行的文件传输方法的数据流图。
如图10所示,第一服务器端在定时任务处理(如文件格式转换、文件备份和文件压缩等)完成后将压缩文件信息保存到第二服务器端,第二服务器端定时任务处理(如收集压缩文件信息、收集第三服务器端信息和进行压缩文件分配)完成后,进入第三服务器端。第三服务器端定时任务将第三服务器端信息保存到第二服务器端,此外,基于调度队列确定待传输的压缩文件的文件信息,以便于基于文件信息从第一服务器端获取待传输的压缩文件,最后基于压缩文件生成的Control文件执行sqlldr命令以将解压后的文件导入第二服务器端的数据库中。其中,文件服务器文件压缩后可供应用服务器同步拷贝。应用服务器注册IP后进入数据库服务器信息记录,应用服务器注销IP后,被注销的IP进入数据库服务器信息,以重新分配IP。
本公开实施例提供的文件传输方法,基于Quartz定时任务、文件读写、文件传输、ORACLE定时任务、SQL*LOADER导入技术,并根据现有服务器信息、文件信息,设计了自定义负载均衡策略,实现了高并发高可用的快速文件导入方案,并且支持热拔插,软负载均衡及容错机制,改善故障隔离,自动恢复任务,一个节点宕机不影响其他节点。
本公开实施例提供的文件传输方法,当***扩容时,只需在第一服务器端部署相同配置的文件服务器、在第三服务器端部署相同配置的应用服务器,分别连接数据库处理,即横向扩容。
本公开实施例提供的文件传输方法,当***缩容时,只需下线部分文件服务器、应用服务器,即横向缩容。
本公开实施例提供的文件传输方法,当***部分文件服务器、应用服务器出现异常,只需停机下线即可故障隔离,不影响其他服务器。此外,由于该***结构和如参考表1中记录的信息,使得中断任务可以重新发起,支持幂等操作,实现了高可用。
本公开实施例提供的文件传输方法,在文件导入效率上支持高并发,一方面,通过横向扩容达到理论上最大程度负载均衡效果,根据不同文件的大小、数量合理调整文件服务器集群、应用服务器集群数量,实际上是实现了进程级并发。另一方面,结合每个节点的硬件配置合理增加每个节点的并发数来提高导入效率,实际上是实现了线程级并发。有效提升了文件导入效率。
图11示意性示出了根据本公开实施例的文件传输装置的结构示意图。
如图11所示,该文件传输装置110包括:第一文件获取模块1110、第二文件获取模块1120和第一文件发送模块1130。
第一文件获取模块1110用于获取待处理文件,待处理文件包括至少一种文件格式的文件。
第二文件获取模块1120用于将待处理文件转换为指定文件格式,得到待传输文件。
第一文件发送模块1130用于将待传输文件的文件信息发送给第二服务器端,以便第三服务器端基于获取路径信息从第一服务器端获取待传输文件,获取路径信息是第三服务器端基于从第二服务器端获取的文件信息确定的。
图12示意性示出了根据本公开另一实施例的文件传输装置的结构示意图。
如图12所示,该文件传输装置1200可以包括第一文件接收模块1210、第一文件分配模块1220和调度模块1230。
第一文件接收模块1210用于接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息。
第一文件分配模块1220用于基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待传输文件,以生成调度任务。
调度模块1230用于将调度任务加入任务调度队列,以便第三服务器端基于任务调度队列确定获取路径信息,并且基于获取路径信息从第一服务器端获取待传输文件。
图13示意性示出了根据本公开另一实施例的文件传输装置的结构示意图。
如图13所示,该文件传输装置1300包括:任务相应模块1310、获取路径信息确定模块1320和第三文件获取模块1330。
任务相应模块1310用于响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息。
获取路径信息确定模块1320用于基于文件信息确定待传输文件的获取路径信息。
第三文件获取模块1330用于基于获取路径信息从第一服务器端获取待传输文件,以执行基于待传输文件生成的指令。
图14示意性示出了根据本公开实施例的文件传输***的结构示意图。
如图14所示,该文件传输***1400包括:相互连接的第一服务器端1410、第二服务器端1420和第三服务器端1430,第三服务器端包括至少一个第三服务器节点。
图14所示的文件传输***可以实现将文件高并发高可用地导入ORACLE数据库。图14中实线箭头可以表征服务器端数据变更引发的数据流动,虚线箭头可以表征服务器端之间的数据同步。
例如,第一服务器端1410、第二服务器端1420和第三服务器端1430被配置为如下所示。
第一服务器端1410将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将待传输文件的文件信息发送给第二服务器端1420,待处理文件包括至少一种文件格式。
第二服务器端1420基于文件信息和第三服务器端信息给至少一个第三服务器节点分配待处理文件,以生成任务调度队列,第三服务器端信息表征至少一个第三服务器节点的服务状态。
第三服务器端1430响应于任务调度队列的调度任务,确定文件信息,并且基于文件信息确定待传输文件的获取路径信息,以便在基于获取路径信息获取待传输文件后,执行基于待传输文件生成的指令。
上述由文件传输***执行的文件传输方法可以参考上述第一服务器端、第二服务器端和/或第三服务器端执行的文件传输方法相关部分内容,在此不再赘述。
需要说明的是,装置部分实施例中各模块等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再一一赘述。
根据本公开的实施例的模块中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。例如,第一文件获取模块1110、第二文件获取模块1120和第一文件发送模块1130中的任意多个可以合并或单独实现、以硬件或软件的形式实现等。
本公开的另一方面提供了一种电子设备。
图15示意性示出了根据本公开实施例的电子设备的方框图。图15示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图15所示,根据本公开实施例的电子设备1500包括处理器1501,其可以根据存储在只读存储器(ROM)1502中的程序或者从存储部分1508加载到随机访问存储器(RAM)1503中的程序而执行各种适当的动作和处理。处理器1501例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1501还可以包括用于缓存用途的板载存储器。处理器1501可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1503中,存储有电子设备1500操作所需的各种程序和数据。处理器1501、ROM 1502以及RAM 1503通过总线1504彼此通讯连接。处理器1501通过执行ROM 1502和/或RAM 1503中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除ROM 1502和RAM 1503以外的一个或多个存储器中。处理器1501也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1500还可以包括输入/输出(I/O)接口1505,输入/输出(I/O)接口1505也连接至总线1504。电子设备1500还可以包括连接至I/O接口1505的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至I/O接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被处理器1501执行时,执行本公开实施例的***中限定的上述功能。根据本公开的实施例,上文描述的***、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/***中所包含的;也可以是单独存在,而未装配入该设备/装置/***中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1502和/或RAM 1503和/或ROM 1502和RAM1503以外的一个或多个存储器。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (19)

1.一种由第一服务器端执行的文件传输方法,所述第一服务器端分别与第二服务器端和第三服务器端连接,所述方法包括:
获取待处理文件,所述待处理文件包括至少一种文件格式的文件;
将所述待处理文件转换为指定文件格式,得到待传输文件;以及
将所述待传输文件的文件信息发送给第二服务器端,以便所述第三服务器端基于获取路径信息从所述第一服务器端获取所述待传输文件,所述获取路径信息是所述第三服务器端基于从所述第二服务器端获取的所述文件信息确定的。
2.根据权利要求1所述的方法,其中,所述第一服务器端包括至少一个第一服务器节点;
所述文件信息包括获取路径信息以及以下至少一种:文件标识信息、文件大小信息、文件状态信息,其中,所述获取路径信息包括第一服务器节点地址信息和文件路径信息。
3.根据权利要求1所述的方法,其中,所述将所述待处理文件转换为指定文件格式包括:
根据待处理文件的处理单元的等级,按照由高到低的顺序将各处理单元的信息转换为指定格式文件的信息,其中,高等级的处理单元包括至少一个低等级的处理单元。
4.根据权利要求1所述的方法,还包括:在将所述待处理文件转换为指定文件格式之后,压缩指定文件格式的待处理文件。
5.根据权利要求1所述的方法,还包括:在获取待处理文件之后,备份所述待处理文件。
6.一种由第二服务器端执行的文件传输方法,所述第二服务器端分别与第一服务器端和第三服务器端连接,所述第三服务器端包括至少一个第三服务器节点,所述方法包括:
接收来自所述第一服务器端的待传输文件的文件信息,以及接收来自所述第三服务器端的第三服务器端信息;以及
基于所述文件信息和所述第三服务器端信息给至少一个所述第三服务器节点分配待传输文件,以生成调度任务;以及
将所述调度任务加入任务调度队列,以便所述第三服务器端基于所述任务调度队列确定获取路径信息,并且基于所述获取路径信息从所述第一服务器端获取所述待传输文件。
7.根据权利要求6所述的方法,还包括:
响应于来自所述第三服务器端的注册请求和/或注销请求,更新所述第三服务器端的第三服务器端信息。
8.根据权利要求6所述的方法,其中,所述基于所述文件信息和所述第三服务器端信息给至少一个所述第三服务器节点分配待传输文件包括:
基于所述文件信息确定负载均衡策略;以及
基于所述负载均衡策略和所述第三服务器端信息给至少一个所述第三服务器节点分配待传输文件。
9.根据权利要求8所述的方法,其中,所述负载均衡策略包括压缩文件数均衡策略和文件大小均衡策略。
10.一种由第三服务器端执行的文件传输方法,所述第三服务器端分别与第一服务器端和第二服务器端连接,所述第三服务器端包括至少一个第三服务器节点,所述方法包括:对于每个第三服务器节点,
响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息;
基于所述文件信息确定所述待传输文件的获取路径信息;
基于所述获取路径信息从所述第一服务器端获取所述待传输文件,以执行基于所述待传输文件生成的指令。
11.根据权利要求10所述的方法,其中,所述待传输文件是被压缩的待处理文件;
所述基于所述获取路径信息从所述第一服务器端获取所述待传输文件,以执行基于所述待传输文件生成的指令包括:
获取并且解压被压缩的待处理文件;
基于所述待处理文件生成待执行指令;以及
执行所述待执行指令。
12.根据权利要求11所述的方法,还包括:在执行所述待执行指令之后,向所述第二服务器端发送调度任务状态更新信息。
13.根据权利要求10所述的方法,还包括:
更新第三服务器端信息,所述第三服务器端信息表征至少一个所述第三服务器节点的服务状态;
并且/或者
在第三服务器节点满足提供服务条件后,向所述第二服务器端发送注册请求,以注册所述第三服务器节点的地址;
并且/或者
在第三服务器节点满足停止服务条件后,向所述第二服务器端发送注销请求,以注销所述第三服务器节点的地址。
14.一种由文件传输***执行的文件传输方法,所述文件传输***包括相互连接的第一服务器端、第二服务器端和第三服务器端,所述第三服务器端包括至少一个第三服务器节点,所述方法包括:
所述第一服务器端将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将所述待传输文件的文件信息发送给所述第二服务器端,所述待处理文件包括至少一种文件格式的文件;
所述第二服务器端基于所述文件信息和第三服务器端信息给至少一个所述第三服务器节点分配待传输文件,以生成任务调度队列,所述第三服务器端信息表征至少一个所述第三服务器节点的服务状态;以及
所述第三服务器端响应于所述任务调度队列的调度任务,确定所述待传输文件的文件信息,并且基于所述文件信息确定待传输文件的获取路径信息,以便基于所述获取路径信息获取待传输文件。
15.一种文件传输装置,包括:
第一文件获取模块,用于获取待处理文件,所述待处理文件包括至少一种文件格式的文件;
第二文件获取模块,用于将所述待处理文件转换为指定文件格式,得到待传输文件;以及
第一文件发送模块,用于将所述待传输文件的文件信息发送给第二服务器端,以便所述第三服务器端基于获取路径信息从所述第一服务器端获取所述待传输文件,所述获取路径信息是所述第三服务器端基于从所述第二服务器端获取的所述文件信息确定的。
16.一种文件传输装置,包括:
第一文件接收模块,用于接收来自第一服务器端的待传输文件的文件信息,以及接收来自第三服务器端的第三服务器端信息;
第一文件分配模块,用于基于所述文件信息和所述第三服务器端信息给至少一个所述第三服务器节点分配待传输文件,以生成调度任务;以及
调度模块,用于将所述调度任务加入任务调度队列,以便所述第三服务器端基于所述任务调度队列确定获取路径信息,并且基于所述获取路径信息从所述第一服务器端获取所述待传输文件。
17.一种文件传输装置,包括:
任务相应模块,用于响应于来自第二服务器端的任务调度队列的调度任务,确定待传输文件的文件信息;
获取路径信息确定模块,用于基于所述文件信息确定所述待传输文件的获取路径信息;以及
第三文件获取模块,用于基于所述获取路径信息从所述第一服务器端获取所述待传输文件,以执行基于所述待传输文件生成的指令。
18.一种文件传输***,包括:相互连接的第一服务器端、第二服务器端和第三服务器端,所述第三服务器端包括至少一个第三服务器节点,其中,所述第一服务器端、所述第二服务器端和所述第三服务器端被配置为:
所述第一服务器端将获取的待处理文件转换为指定文件格式,得到待传输文件,并且将所述待传输文件的文件信息发送给所述第二服务器端,所述待处理文件包括至少一种文件格式;
所述第二服务器端基于所述文件信息和第三服务器端信息给至少一个所述第三服务器节点分配待处理文件,以生成任务调度队列,所述第三服务器端信息表征至少一个所述第三服务器节点的服务状态;以及
所述第三服务器端响应于所述任务调度队列的调度任务,确定文件信息,并且基于所述文件信息确定待传输文件的获取路径信息,以便在基于所述获取路径信息获取待传输文件后,执行基于所述待传输文件生成的指令。
19.一种电子设备,包括:
至少一个处理器;
存储装置,用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现根据权利要求1~14任一项所述的方法。
CN202010430024.6A 2020-05-20 2020-05-20 文件传输方法、装置、***和电子设备 Pending CN111600957A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010430024.6A CN111600957A (zh) 2020-05-20 2020-05-20 文件传输方法、装置、***和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010430024.6A CN111600957A (zh) 2020-05-20 2020-05-20 文件传输方法、装置、***和电子设备

Publications (1)

Publication Number Publication Date
CN111600957A true CN111600957A (zh) 2020-08-28

Family

ID=72189066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010430024.6A Pending CN111600957A (zh) 2020-05-20 2020-05-20 文件传输方法、装置、***和电子设备

Country Status (1)

Country Link
CN (1) CN111600957A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612811A (zh) * 2020-12-24 2021-04-06 航天信息股份有限公司 一种数据导入方法、装置、电子设备及存储介质
CN112653760A (zh) * 2020-12-22 2021-04-13 平安银行股份有限公司 跨服务器的文件传输方法、装置、电子设备及存储介质
CN112671855A (zh) * 2020-12-15 2021-04-16 建信金融科技有限责任公司 文件传输方法及***
CN113780704A (zh) * 2020-10-22 2021-12-10 北京京东振世信息技术有限公司 一种任务处理方法和装置
CN114285839A (zh) * 2021-12-23 2022-04-05 北京天融信网络安全技术有限公司 一种文件传输方法、装置、计算机存储介质和电子设备
CN114338650A (zh) * 2021-12-23 2022-04-12 中电金信软件有限公司 文件传输方法、装置、电子设备及可读存储介质
CN114866537A (zh) * 2022-05-31 2022-08-05 山东省计算中心(国家超级计算济南中心) 一种跨主机跨网络的文件传输方法及***

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
CN104092719A (zh) * 2013-12-17 2014-10-08 深圳市腾讯计算机***有限公司 文件传输方法、装置及分布式集群文件***
CN105162878A (zh) * 2015-09-24 2015-12-16 网宿科技股份有限公司 基于分布式存储的文件分发***及方法
CN106658047A (zh) * 2016-12-06 2017-05-10 新奥特(北京)视频技术有限公司 一种流媒体服务器云数据处理方法及装置
CN107425942A (zh) * 2017-07-27 2017-12-01 广州视源电子科技股份有限公司 数据发送、转发和传输的方法及装置
CN107566477A (zh) * 2017-08-28 2018-01-09 北京奇艺世纪科技有限公司 一种在分布式文件***集群中获取文件的方法和装置
CN110677443A (zh) * 2018-07-02 2020-01-10 中兴通讯股份有限公司 数据发送和接收方法、发送端、接收端、***及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
CN104092719A (zh) * 2013-12-17 2014-10-08 深圳市腾讯计算机***有限公司 文件传输方法、装置及分布式集群文件***
CN105162878A (zh) * 2015-09-24 2015-12-16 网宿科技股份有限公司 基于分布式存储的文件分发***及方法
CN106658047A (zh) * 2016-12-06 2017-05-10 新奥特(北京)视频技术有限公司 一种流媒体服务器云数据处理方法及装置
CN107425942A (zh) * 2017-07-27 2017-12-01 广州视源电子科技股份有限公司 数据发送、转发和传输的方法及装置
CN107566477A (zh) * 2017-08-28 2018-01-09 北京奇艺世纪科技有限公司 一种在分布式文件***集群中获取文件的方法和装置
CN110677443A (zh) * 2018-07-02 2020-01-10 中兴通讯股份有限公司 数据发送和接收方法、发送端、接收端、***及存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780704A (zh) * 2020-10-22 2021-12-10 北京京东振世信息技术有限公司 一种任务处理方法和装置
CN112671855A (zh) * 2020-12-15 2021-04-16 建信金融科技有限责任公司 文件传输方法及***
CN112671855B (zh) * 2020-12-15 2023-08-25 中国建设银行股份有限公司 文件传输方法及***
CN112653760A (zh) * 2020-12-22 2021-04-13 平安银行股份有限公司 跨服务器的文件传输方法、装置、电子设备及存储介质
CN112653760B (zh) * 2020-12-22 2023-03-24 平安银行股份有限公司 跨服务器的文件传输方法、装置、电子设备及存储介质
CN112612811A (zh) * 2020-12-24 2021-04-06 航天信息股份有限公司 一种数据导入方法、装置、电子设备及存储介质
CN114285839A (zh) * 2021-12-23 2022-04-05 北京天融信网络安全技术有限公司 一种文件传输方法、装置、计算机存储介质和电子设备
CN114338650A (zh) * 2021-12-23 2022-04-12 中电金信软件有限公司 文件传输方法、装置、电子设备及可读存储介质
CN114866537A (zh) * 2022-05-31 2022-08-05 山东省计算中心(国家超级计算济南中心) 一种跨主机跨网络的文件传输方法及***
CN114866537B (zh) * 2022-05-31 2023-08-04 山东省计算中心(国家超级计算济南中心) 一种跨主机跨网络的文件传输方法及***

Similar Documents

Publication Publication Date Title
CN111600957A (zh) 文件传输方法、装置、***和电子设备
CN107729139B (zh) 一种并发获取资源的方法和装置
US9304815B1 (en) Dynamic replica failure detection and healing
US8639792B2 (en) Job processing system, method and program
CN111127181B (zh) 一种凭证记账方法和装置
CN103209223A (zh) 分布式应用会话信息共享方法、***和应用服务器
US8660996B2 (en) Monitoring files in cloud-based networks
CN109783151B (zh) 规则变更的方法和装置
CN114201421B (zh) 一种数据流处理方法、存储控制节点及可读存储介质
CN112199427A (zh) 一种数据处理方法和***
WO2021114848A1 (zh) 数据库的数据读写方法及装置
CN110909978A (zh) 资源处理方法、装置、服务器及计算机可读存储介质
CN111338834B (zh) 数据存储方法和装置
CN111651286A (zh) 数据通信方法、装置及计算设备、存储介质
CN110245014B (zh) 数据处理方法和装置
CN113760522A (zh) 一种任务处理方法和装置
CN109067649B (zh) 节点处理方法及装置、存储介质和电子设备
CN111401752A (zh) 一种飞轮储能调频共享处理方法、装置、***及电子设备
US20230185631A1 (en) Embedded capacity-computer module for microservice load balancing and distribution
WO2022121387A1 (zh) 数据存储方法、装置、服务器及介质
CN113535673B (zh) 生成配置文件及数据处理的方法和装置
CN111401819B (zh) ***间数据推送方法及***
CN114328731A (zh) 信息处理方法、装置、电子设备和存储介质
CN110175179B (zh) 数据传输方法及***、服务节点、存储装置
CN115250276A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200828