CN110874260B - 一种基于多用户机器的文件处理方法和装置 - Google Patents

一种基于多用户机器的文件处理方法和装置 Download PDF

Info

Publication number
CN110874260B
CN110874260B CN201811026547.3A CN201811026547A CN110874260B CN 110874260 B CN110874260 B CN 110874260B CN 201811026547 A CN201811026547 A CN 201811026547A CN 110874260 B CN110874260 B CN 110874260B
Authority
CN
China
Prior art keywords
machine
user
downloading
downloaded
file
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
Application number
CN201811026547.3A
Other languages
English (en)
Other versions
CN110874260A (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology 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 Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201811026547.3A priority Critical patent/CN110874260B/zh
Publication of CN110874260A publication Critical patent/CN110874260A/zh
Application granted granted Critical
Publication of CN110874260B publication Critical patent/CN110874260B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种基于多用户机器的文件处理方法和装置。当应用于源机器侧时,该方法包括:更新所述源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上;将预设域名解析到所述源机器和所述备用机器上;接收多台用户机器向所述预设域名发送的下载请求;将接收的下载请求分配给所述源机器和所述备用机器;建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对所述更新后的待下载文件的下载并根据所下载的文件进行更新。本发明减少了提供源数据的每台机器接收到的请求量,降低了提供源数据的每台机器的工作压力,从而降低用户机器下载更新失败的概率。

Description

一种基于多用户机器的文件处理方法和装置
技术领域
本发明涉及互联网技术领域,特别是一种基于多用户机器的文件处理方法、基于多用户机器的文件处理装置、计算机存储介质以及计算设备。
背景技术
在互联网应用服务中,常常面临多台机器并发地从一台机器上拉取大文件数据的情况。例如,在全量IP查询服务中,由于IP数据每天都有变化,因此需要使各用户机器(或称为业务机器)每天定时更新全量的IP数据,以保证用户机器在响应服务请求时提供的数据是最新的。现有技术中,采用一台机器作为数据源,每天更新最新的IP数据。在数据源机器更新完成后,触发各用户机器在预定时间从数据源机器下载更新后的IP数据文件,并根据下载的IP数据文件进行自身的更新。但是,由于用户机器的数量巨大,通常多达上千台,当所有用户机器都在预定时间向数据源机器请求下载时,请求的并发数过多,造成数据源机器的压力过大,往往会存在下载更新失败的用户机器,下载更新失败概率较高。这时,必须通过人工监测来确认失败的用户机器,使其重新从数据源机器下载更新后的IP数据文件,增加了人力成本。
因此,亟需一种可降低多台用户机器并发拉取大文件数据时的失败概率并减少人力成本的文件处理方法。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于多用户机器的文件处理方法、基于多用户机器的文件处理装置、计算机存储介质以及计算设备。
根据本发明实施例的一方面,提供了一种基于多用户机器的文件处理方法,应用于源机器侧,包括:
更新所述源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上;
将预设域名解析到所述源机器和所述备用机器上;
接收多台用户机器向所述预设域名发送的下载请求;
将接收的下载请求分配给所述源机器和所述备用机器;
建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对所述更新后的待下载文件的下载并根据所下载的文件进行更新。
可选地,若所述多台用户机器按照预定规则被分成多个组,则
接收多台用户机器向所述预设域名发送的下载请求,包括:
接收每组用户机器按照指定的组间顺序向所述预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
可选地,将接收的下载请求分配给所述源机器和所述备用机器,包括:
通过负载均衡算法将接收的下载请求分配给所述源机器和所述备用机器。
可选地,所述负载均衡算法为Linux虚拟服务器的轮询调度算法。
可选地,将接收的下载请求分配给所述源机器和所述备用机器,还包括:
确定每一台用户机器所在的互联网数据中心;
将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一互联网数据中心的所述源机器或所述备用机器。
可选地,在建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,所述方法还包括:
监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
可选地,发出更新失败通知,包括:
通过邮件发出更新失败通知。
可选地,所述方法还包括:
在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
根据本发明实施例的另一方面,还提供了一种基于多用户机器的文件处理方法,应用于用户机器侧,包括:
多台用户机器向预设域名发送对待下载文件的下载请求,其中所述预设域名被解析到源机器和指定数量的备用机器上,所述源机器上的所述待下载文件已更新,并且所述源机器上更新后的待下载文件被分发到所述备用机器上;
在所述下载请求被分配给所述源机器和所述备用机器后,建立各台用户机器与其发送的下载请求被分配至的所述源机器或所述备用机器之间的连接;
各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新。
可选地,在多台用户机器向预设域名发送对待下载文件的下载请求之前,所述方法还包括:
将所述多台用户机器按照预定规则分成多个组;
所述多台用户机器向预设域名发送对待下载文件的下载请求,包括:
每组用户机器按照指定的组间顺序向所述预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
可选地,所述方法还包括:
在各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
可选地,发出更新失败通知,包括:
通过邮件发出更新失败通知。
可选地,所述方法还包括:
在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
根据本发明实施例的再一方面,还提供了一种基于多用户机器的文件处理装置,应用于源机器侧,包括:
文件分发模块,适于更新所述源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上;
域名解析模块,适于将预设域名解析到所述源机器和所述备用机器上;
请求接收模块,适于接收多台用户机器向所述预设域名发送的下载请求;
请求分配模块,适于将接收的下载请求分配给所述源机器和所述备用机器;以及
连接下载模块,适于建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对所述更新后的待下载文件的下载并根据所下载的文件进行更新。
可选地,若所述多台用户机器按照预定规则被分成多个组,则
所述请求接收模块还适于:
接收每组用户机器按照指定的组间顺序向所述预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
可选地,所述请求分配模块还适于:
通过负载均衡算法将接收的下载请求分配给所述源机器和所述备用机器。
可选地,所述负载均衡算法为Linux虚拟服务器的轮询调度算法。
可选地,所述请求分配模块还适于:
确定每一台用户机器所在的互联网数据中心;
将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一互联网数据中心的所述源机器或所述备用机器。
可选地,所述装置还包括:
第一监测模块,适于在所述连接下载模块建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
可选地,所述第一监测模块还适于:
通过邮件发出更新失败通知。
可选地,所述装置还包括:
第一分析续做模块,适于在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
根据本发明实施例的又一方面,还提供了一种基于多用户机器的文件处理装置,应用于用户机器侧,包括:
请求发送模块,适于多台用户机器向预设域名发送对待下载文件的下载请求,其中所述预设域名被解析到源机器和指定数量的备用机器上,所述源机器上的所述待下载文件已更新,并且所述源机器上更新后的待下载文件被分发到所述备用机器上;
连接建立模块,适于在所述下载请求被分配给所述源机器和所述备用机器后,建立各台用户机器与其发送的下载请求被分配至的所述源机器或所述备用机器之间的连接;以及
下载更新模块,适于各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新。
可选地,所述装置还包括:
分组模块,适于在多台用户机器向预设域名发送对待下载文件的下载请求之前,将所述多台用户机器按照预定规则分成多个组;
所述请求发送模块还适于:
每组用户机器按照指定的组间顺序向所述预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
可选地,所述装置还包括:
第二监测模块,适于在各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
可选地,所述第二监测模块还适于:
通过邮件发出更新失败通知。
可选地,所述装置还包括:
第二分析续做模块,适于在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
根据本发明实施例的再又一方面,还提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行根据上文中任一项所述的基于多用户机器的文件处理方法。
根据本发明实施例的再又一方面,还提供了一种计算设备,包括:
处理器;以及
存储有计算机程序代码的存储器;
当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行根据上文中任一项所述的基于多用户机器的文件处理方法。
本发明实施例提出的基于多用户机器的文件处理方法和装置,首先在更新了源机器上的待下载文件之后,将更新后的待下载文件分发到指定数量的备用机器上。然后,将一预设域名解析到该源机器和备用机器上,进而,在接收到多台用户机器向该预设域名发送的下载请求时,将接收的下载请求分配给该源机器和备用机器。最后,根据分配结果建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对更新后的待下载文件的下载并根据所下载的文件进行更新。通过将源机器上更新后的待下载文件分发到多台备用机器上,并将同一预设域名解析到源机器和备用机器上,增加了可提供作为数据源的更新后的待下载文件的机器的数量。同时,通过将接收的下载请求分配给源机器和备用机器,减少了提供源数据的每台机器接收到的请求量,降低了提供源数据的每台机器的工作压力,从而降低用户机器下载更新失败的概率。
进一步地,通过将多台用户机器按照预定规则分成多个组,每组用户机器按照指定的组间顺序向该预设域名发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送,进一步减少了下载请求的并发数,降低提供源数据的每台机器的工作压力。
更进一步地,通过监测每组用户机器的下载和更新的情况,并在监测到用户机器下载和/或更新失败时,发出更新失败通知,以供失败原因分析和续传处理,减少了人工监控的操作,从而减少了人力成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一实施例的应用于源机器侧的基于多用户机器的文件处理方法的流程图;
图2示出了根据本发明一实施例的应用于用户机器侧的基于多用户机器的文件处理方法的流程图;
图3示出了根据本发明一实施例的结合源机器侧和用户机器侧的基于多用户机器的文件处理方法的流程图;
图4示出了根据本发明一实施例的应用于源机器侧的基于多用户机器的文件处理装置的结构示意图;
图5示出了根据本发明另一实施例的应用于源机器侧的基于多用户机器的文件处理装置的结构示意图;
图6示出了根据本发明一实施例的应用于用户机器侧的基于多用户机器的文件处理装置的结构示意图;以及
图7示出了根据本发明另一实施例的应用于用户机器侧的基于多用户机器的文件处理装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提出一种应用于源机器侧的基于多用户机器的文件处理方法。图1示出了根据本发明一实施例的应用于源机器侧的基于多用户机器的文件处理方法的流程图。参见图1,该方法至少可以包括以下步骤S102至步骤S110。
步骤S102,更新源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上。
步骤S104,将预设域名解析到源机器和备用机器上。
步骤S106,接收多台用户机器向预设域名发送的下载请求。
步骤S108,将接收的下载请求分配给源机器和备用机器。
步骤S110,建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对更新后的待下载文件的下载并根据所下载的文件进行更新。
本发明实施例提出的基于多用户机器的文件处理方法,通过将源机器上更新后的待下载文件分发到多台备用机器上,并将同一预设域名解析到源机器和备用机器上,增加了可提供作为数据源的更新后的待下载文件的机器的数量。同时,通过将接收的下载请求分配给源机器和备用机器,减少了提供源数据的每台机器接收到的请求量,降低了提供源数据的每台机器的工作压力,从而降低用户机器下载更新失败的概率。
上文步骤S102中提及的源机器和备用机器可以是服务器、或其他可提供数据更新下载功能的网络设备。在实际应用中,备用机器的数量可以根据用户机器的数量、备用机器的性能等因素进行设定。本发明对待下载文件的类型、大小等不作限制。特别地,待下载文件可以为大容量数据文件。
上文步骤S104中,可以通过如下方式实现将一预设域名解析到源机器和备用机器上,即,将源机器和备用机器都放在该预设域名下。
在一种方式中,可以将该预设域名与一VIP(Virtual Internet ProtocolAddress,虚拟互联网协议地址)绑定,并将源机器和备用机器挂在该VIP下,源机器和备用机器均有各自的IP地址。当对该预设域名的请求进行解析时,将该预设域名指向该VIP,并进而通过调度器指向源机器和备用机器中某一台的IP地址。
在另一种方式中,可以在DNS(Domain Name Server,域名服务器)中配置该预设域名分别指向源机器和备用机器的IP地址的主机记录。进而,当对该预设域名的请求进行解析时,DNS服务器根据特定算法将该预设域名指向源机器和备用机器中某一台的IP地址。
需要说明的是,上面列举的方式仅是示意性的,本发明并不限于此。
上文步骤S106中提及的用户机器可以是各种业务使用的机器、终端设备等。
通常,多台用户机器的下载请求是并发的,这样,当用户机器的数量众多时,会由于请求并发数过多而导致提供源数据的机器的压力过大。
在本发明的可选实施例中,多台用户机器可以按照预定规则被分成多个组,此时,步骤S106还可以实施为:
接收每组用户机器按照指定的组间顺序向预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送。
在实际应用中,用户机器分组的规则和数量可以根据用户机器的数量和性能、备用机器的数量、待下载文件的大小等因素进行选择。
以一个具体实例为例,若将一千台用户机器平均分为十组,则每组包含一百台用户机器。此时,可以创建一个主任务,在该主任务中,十组用户机器按顺序进行请求、下载和更新。也就是说,当上一组的一百台用户机器向预设域名发送下载请求,建立连接,下载更新后的待下载文件的下载以及根据所下载的文件进行更新成功后,下一组的一百台用户机器再向预设域名发送下载请求,依次循环,直到主任务全部完成。
通过将多台用户机器按照预定规则分成多个组,使多组用户机器分批次进行请求、下载和更新,进一步减少了下载请求的并发数,降低提供源数据的每台机器的工作压力。
上文步骤S108中,将接收的下载请求分配给源机器和备用机器,从而减少提供源数据的每台机器接收到的请求量。
在本发明的可选实施例中,可以通过负载均衡算法实现将接收的下载请求分配给源机器和备用机器。
负载均衡(Load Balance,LB)是一种服务器或网络设备的集群技术。负载均衡将特定的业务(网络服务、网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性,为解决高并发的方案之一。常用的负载均衡技术包括DNS负载均衡、Nginx负载均衡等。
在一个优选实施例中,负载均衡算法为LVS的轮询调度算法。
LVS(Linux Virtual Server,Linux虚拟服务器)是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。LVS主要由负载调度器(Load Balancer/Director)、服务器池(Server Pool/Real Server)和共享存储(Shared Storage)组成。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。因此,LVS系统具有透明性、可伸缩性、高可用性和易管理性。
基于IP负载均衡的LVS(简称IPVS)可以实现VS/NAT(Virtual Server viaNetwork Address Translation,网络地址转换虚拟服务器)技术、VS/TUN(Virtual Servervia IP Tunneling,IP隧道虚拟服务器)技术和VS/DR(Virtual Server via DirectRouting,直接路由虚拟服务器)技术。针对不同的网络服务需求和服务器配置,IPVS调度器可以实现包括轮询调度算法内的八种负载调度算法。在轮询调度(Round Robin,RR)算法中,调度器通过“轮询”调度算法将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载。通过LVS的轮询调度算法,能够以简洁的算法将用户机器的下载请求均衡地分配到源机器和备用机器中的每台机器上。
进一步地,在一个优选实施例中,在将接收的下载请求分配给源机器和备用机器时,还可以先确定每一台用户机器所在的互联网数据中心(Internet Data Center,IDC),然后将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一IDC的源机器或备用机器。
IDC俗称机房,比如电信机房、联通机房等。在分配下载请求时,优先将下载请求分配给与该下载请求对应的用户机器位于同一机房的源机器或备用机器。例如,若用户机器A与备用机器B都是电信机房的,则在分配下载请求时,优先将用户机器A发送的下载请求分配到备用机器B上,其他不属于同一机房的用户机器与源机器或备用机器之间,则通过公用IP根据指定算法进行分配。
在本发明的可选实施例中,在步骤S110中建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,该方法还可以包括:
监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
仍以上面的十组用户机器为例,在主任务的执行过程中,假设监测到第三组用户机器的下载失败,则中断整个主任务,并发出更新失败通知。
在一个可选实施例中,可以通过邮件发出更新失败通知。在其他可替换的实施方式中,也可以通过短消息等方式发出更新失败通知。
进一步地,该方法还可以包括:
在接收到更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
在实际操作中,用户机器下载和/或更新失败可能由两种情况造成,一种是由于用户机器存在问题,比如用户机器运行异常、宕机等。另一种则是数据源(即,更新后的待下载文件)存在问题。
当接收到更新失败通知,通过分析和检查,确定为用户机器问题,则进一步确定下载和/或更新失败的用户机器并找出其失败原因,然后,继续进行后续其他组用户机器的请求、下载和更新流程。对于下载和/或更新失败的用户机器,则针对其失败原因进行处理,在克服引起下载和/或更新失败的问题后,再进行下载和更新。
当接收到更新失败通知,通过分析和检查,确定为源数据问题引起失败时,则终止当前下载和更新流程。例如,可以通过比较本次更新的待下载文件与上一次更新的待下载文件的内容或MD5(Message Digest 5,消息摘要5)值来判断待下载文件是否有更新,若否,则确定源数据存在问题。
通过监测每组用户机器的下载和更新的情况,并在监测到用户机器下载和/或更新失败时,发出更新失败通知,以供失败原因分析和续传处理,减少了人工监控的操作,从而减少了人力成本。
相应地,图2示出了根据本发明一实施例的应用于用户机器侧的基于多用户机器的文件处理方法的流程图。参见图2,该方法至少可以包括以下步骤S202至步骤S206。
步骤S202,多台用户机器向预设域名发送对待下载文件的下载请求,其中该预设域名被解析到源机器和指定数量的备用机器上,源机器上的待下载文件已更新,并且源机器上更新后的待下载文件被分发到备用机器上。
步骤S204,在下载请求被分配给源机器和备用机器后,建立各台用户机器与其发送的下载请求被分配至的源机器或备用机器之间的连接。
步骤S206,各台用户机器从所连接的源机器或备用机器下载更新后的待下载文件,并根据所下载的文件进行更新。
本发明实施例提出的基于多用户机器的文件处理方法,通过将源机器上更新后的待下载文件分发到多台备用机器上,并将同一预设域名解析到源机器和备用机器上,增加了可提供作为数据源的更新后的待下载文件的机器的数量。同时,通过将接收的下载请求分配给源机器和备用机器,减少了提供源数据的每台机器接收到的请求量,降低了提供源数据的每台机器的工作压力,从而降低用户机器下载更新失败的概率。
上文步骤S202中提及的源机器和备用机器可以是服务器、或其他可提供数据更新下载功能的网络设备,提及的用户机器可以是各种业务使用的机器、终端设备等。在实际应用中,备用机器的数量可以根据用户机器的数量、备用机器的性能等因素进行设定。本发明对待下载文件的类型、大小等不作限制。特别地,待下载文件可以为大容量数据文件。
可以通过如下方式实现将预设域名解析到源机器和备用机器上,即,将源机器和备用机器都放置该预设域名下。
在一种方式中,可以将该预设域名与一VIP绑定,并将源机器和备用机器挂在该VIP下,源机器和备用机器均有各自的IP地址。当对该预设域名的请求进行解析时,将该预设域名指向该VIP,并进而通过调度器指向源机器和备用机器中某一台的IP地址。
在另一种方式中,可以在DNS服务器中配置该预设域名分别指向源机器和备用机器的IP地址的主机记录。进而,当对该预设域名的请求进行解析时,DNS服务器根据特定算法将该预设域名指向源机器和备用机器中某一台的IP地址。
需要说明的是,上面列举的方式仅是示意性,本发明并不限于此。
上文步骤S204中,在下载请求被分配给源机器和备用机器后,建立各台用户机器与其发送的下载请求被分配至的源机器或备用机器之间的连接。其中,下载请求的分配可以通过负载均衡算法实现,例如DNS负载均衡算法、Nginx负载均衡算法、LVS负载均衡算法等。优选地,下载请求的分配采用LVS的轮询调度算法实现,从而能够以简洁的算法将用户机器的下载请求均衡地分配到源机器和备用机器中的每台机器上,减少提供源数据的每台机器接收到的请求量,提高业务处理能力。
在本发明的可选实施例中,在步骤S202之前,该方法还可以包括:
将多台用户机器按照预定规则分成多个组。
相应地,步骤S202可以实施为:
每组用户机器按照指定的组间顺序向该预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送。
在实际应用中,用户机器分组的规则和数量可以根据用户机器的数量和性能、备用机器的数量、待下载文件的大小等因素进行选择。
以一个具体实例为例,若将一千台用户机器平均分为十组,则每组包含一百台用户机器。此时,可以创建一个主任务,在该主任务中,十组用户机器按顺序进行请求、下载和更新。也就是说,当上一组的一百台用户机器向预设域名发送下载请求,建立连接,下载更新后的待下载文件的下载以及根据所下载的文件进行更新成功后,下一组的一百台用户机器再向预设域名发送下载请求,依次循环,直到主任务全部完成。
通过将多台用户机器按照预定规则分成多个组,使多组用户机器分批次进行请求、下载和更新,进一步减少了下载请求的并发数,降低提供源数据的每台机器的工作压力。
在本发明的可选实施例中,该方法还可以包括:
在各台用户机器从所连接的源机器或备用机器下载更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
在一个可选实施例中,可以通过邮件发出更新失败通知。在其他可替换的实施方式中,也可以通过短消息等方式发出更新失败通知。
进一步地,该方法还可以包括:
在接收到更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
在实际操作中,用户机器下载和/或更新失败可能由两种情况造成,一种是由于用户机器存在问题,比如用户机器运行异常、宕机等。另一种则是数据源(即,更新后的待下载文件)存在问题。
当接收到更新失败通知,通过分析和检查,确定为用户机器问题,则进一步确定下载和/或更新失败的用户机器并找出其失败原因,然后,继续进行后续其他组用户机器的请求、下载和更新流程。对于下载和/或更新失败的用户机器,则针对其失败原因进行处理,在克服引起下载和/或更新失败的问题后,再进行下载和更新。
当接收到更新失败通知,通过分析和检查,确定为源数据问题引起失败时,则终止当前下载和更新流程。例如,可以通过比较本次更新的待下载文件与上一次更新的待下载文件的内容或MD5值来判断待下载文件是否有更新,若否,则确定源数据存在问题。
通过监测每组用户机器的下载和更新的情况,并在监测到用户机器下载和/或更新失败时,发出更新失败通知,以供失败原因分析和续传处理,减少了人工监控的操作,从而减少了人力成本。
以上介绍了图1和图2所示实施例的各个环节的多种实现方式,下面将通过具体实施例来详细介绍本发明的基于多用户机器的文件处理方法的实现过程。图3示出了根据本发明一具体实施例的结合源机器侧和用户机器侧的基于多用户机器的文件处理方法的流程图。如图3所示,该方法至少可以包括步骤S302至步骤S322。
步骤S302,更新源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上。
本例中,备用机器的数量为九台。
步骤S304,将预设域名解析到源机器和九台备用机器上。
步骤S306,将多台用户机器按照预定规则分成多个组。
本例中,用户机器的数量为一千台,按照平均规则,将一千台用户机器分成十组,每组包括一百台用户机器。
步骤S308,第一组用户机器向预设域名发送对更新后的待下载文件的下载请求。
步骤S310,接收第一组用户机器发送的下载请求。
步骤S312,通过Linux虚拟服务器的轮询调度算法将所接收的下载请求分配到源机器和九台备用机器上。
步骤S314,建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接。
步骤S316,各台用户机器从所连接的源机器或备用机器下载更新后的待下载文件,并根据所下载的文件进行更新。
步骤S318,监测当前组的用户机器的下载和更新的情况,当监测到用户机器下载和/或更新失败时,中断当前组用户机器的下载和更新流程,并发出更新失败通知。
步骤S320,在第一组用户机器成功完成下载和更新后,第二组用户机器向预设域名发送对更新后的待下载文件的下载请求。
步骤S322,以此类推,直至当前组用户机器的下载和更新流程中断,或者第十组用户机器成功完成下载和更新。
需要说明的是,实际应用中,上述所有可选实施方式可以采用结合的方式任意组合,形成本发明的可选实施例,在此不再一一赘述。
基于同一发明构思,本发明实施例还提供了一种基于多用户机器的文件处理装置,其应用于源机器侧。图4示出了根据本发明一实施例的应用于源机器侧的基于多用户机器的文件处理装置的结构示意图。参见图4,该装置至少可以包括:文件分发模块410、域名解析模块420、请求接收模块430、请求分配模块440以及连接下载模块450。
现介绍本发明实施例的应用于源机器侧的基于多用户机器的文件处理装置的各组成或器件的功能以及各部分间的连接关系:
文件分发模块410,适于更新源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上。
域名解析模块420,与文件分发模块410连接,适于将预设域名解析到源机器和备用机器上。
请求接收模块430,与域名解析模块420连接,适于接收多台用户机器向预设域名发送的下载请求。
请求分配模块440,与请求接收模块430连接,适于将接收的下载请求分配给源机器和备用机器。
连接下载模块450,与请求分配模块440连接,适于建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对更新后的待下载文件的下载并根据所下载的文件进行更新。
在一个可选实施例中,若多台用户机器按照预定规则被分成多个组,则请求接收模块430还适于:
接收每组用户机器按照指定的组间顺序向预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送。
在一个可选实施例中,请求分配模块440还适于:
通过负载均衡算法将接收的下载请求分配给源机器和备用机器。
进一步地,该负载均衡算法为Linux虚拟服务器的轮询调度算法。
在一个可选实施例中,请求分配模块440还适于:
确定每一台用户机器所在的互联网数据中心;
将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一互联网数据中心的源机器或备用机器。
在一个可选实施例中,如图5所示,图4展示的应用于源机器侧的基于多用户机器的文件处理装置还可以包括:
第一监测模块560,与连接下载模块450连接,适于在连接下载模块450建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
进一步地,第一监测模块560还适于:
通过邮件发出更新失败通知。
在一个可选实施例中,如图5所示,该应用于源机器侧的基于多用户机器的文件处理装置还可以包括:
第一分析续做模块570,与第一监测模块560连接,适于在接收到更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
相应地,本发明实施例还提供了一种基于多用户机器的文件处理装置,其应用于用户机器侧。图6示出了根据本发明一实施例的应用于用户机器侧的基于多用户机器的文件处理装置的结构示意图。参见图6,该装置至少可以包括:请求发送模块610、连接建立模块620以及下载更新模块630。
现介绍本发明实施例的应用于用户机器侧的基于多用户机器的文件处理装置的各组成或器件的功能以及各部分间的连接关系:
请求发送模块610,适于多台用户机器向预设域名发送对待下载文件的下载请求,其中该预设域名被解析到源机器和指定数量的备用机器上,源机器上的待下载文件已更新,并且源机器上更新后的待下载文件被分发到备用机器上。
连接建立模块620,与请求发送模块610连接,适于在下载请求被分配给源机器和备用机器后,建立各台用户机器与其发送的下载请求被分配至的源机器或备用机器之间的连接。
下载更新模块630,与连接建立模块620连接,适于各台用户机器从所连接的源机器或备用机器下载更新后的待下载文件,并根据所下载的文件进行更新。
在一个可选实施例中,如图7所示,图6展示的应用于用户机器侧的基于多用户机器的文件处理装置还可以包括:
分组模块740,与请求发送模块610连接,适于在多台用户机器向预设域名发送对待下载文件的下载请求之前,将该多台用户机器按照预定规则分成多个组。
此时,相应地,请求发送模块610还适于:
每组用户机器按照指定的组间顺序向该预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送。
在一个可选实施例中,如图7所示,该应用于用户机器侧的基于多用户机器的文件处理装置还可以包括:
第二监测模块750,与下载更新模块630连接,适于在各台用户机器从所连接的源机器或备用机器下载更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
进一步地,第二监测模块750还适于:
通过邮件发出更新失败通知。
在一个可选实施例中,如图7所示,该应用于用户机器侧的基于多用户机器的文件处理装置还可以包括:
第二分析续做模块760,与第二监测模块750连接,适于在接收到更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
基于同一发明构思,本发明实施例还提供了一种计算机存储介质。该计算机存储介质存储有计算机程序代码,当该计算机程序代码在计算设备上运行时,导致计算设备执行根据上述任意一个实施例或其组合所述的基于多用户机器的文件处理方法。
基于同一发明构思,本发明实施例还提供了一种计算设备。该计算设备可以包括:
处理器;以及
存储有计算机程序代码的存储器;
当该计算机程序代码被处理器运行时,导致该计算设备执行根据上述任意一个实施例或其组合所述的基于多用户机器的文件处理方法。
根据上述任意一个可选实施例或多个可选实施例的组合,本发明实施例能够达到如下有益效果:
本发明实施例提出的
基于多用户机器的文件处理方法和装置,首先在更新了源机器上的待下载文件之后,将更新后的待下载文件分发到指定数量的备用机器上。然后,将一预设域名解析到该源机器和备用机器上,进而,在接收到多台用户机器向该预设域名发送的下载请求时,将接收的下载请求分配给该源机器和备用机器。最后,根据分配结果建立源机器和备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对更新后的待下载文件的下载并根据所下载的文件进行更新。通过将源机器上更新后的待下载文件分发到多台备用机器上,并将同一预设域名解析到源机器和备用机器上,增加了可提供作为数据源的更新后的待下载文件的机器的数量。同时,通过将接收的下载请求分配给源机器和备用机器,减少了提供源数据的每台机器接收到的请求量,降低了提供源数据的每台机器的工作压力,从而降低用户机器下载更新失败的概率。
进一步地,通过将多台用户机器按照预定规则分成多个组,每组用户机器按照指定的组间顺序向该预设域名发送下载请求,并且只有当上一组的用户机器完成对更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行下载请求的发送,进一步减少了下载请求的并发数,降低提供源数据的每台机器的工作压力。
更进一步地,通过监测每组用户机器的下载和更新的情况,并在监测到用户机器下载和/或更新失败时,发出更新失败通知,以供失败原因分析和续传处理,减少了人工监控的操作,从而减少了人力成本。
所属领域的技术人员可以清楚地了解到,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:所述集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行所述指令时执行本发明各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,所述程序指令可以存储于一计算机可读取存储介质中,当所述程序指令被计算设备的处理器执行时,所述计算设备执行本发明各实施例所述方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。

Claims (24)

1.一种基于多用户机器的文件处理方法,应用于源机器侧,包括:
更新所述源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上;
将预设域名解析到所述源机器和所述备用机器上;
接收多台用户机器向所述预设域名发送的下载请求;
将接收的下载请求分配给所述源机器和所述备用机器;
建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对所述更新后的待下载文件的下载并根据所下载的文件进行更新;
若所述多台用户机器按照预定规则被分成多个组,则
接收多台用户机器向所述预设域名发送的下载请求,包括:
接收每组用户机器按照指定的组间顺序向所述预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
2.根据权利要求1所述的方法,其中,将接收的下载请求分配给所述源机器和所述备用机器,包括:
通过负载均衡算法将接收的下载请求分配给所述源机器和所述备用机器。
3.根据权利要求2所述的方法,其中,所述负载均衡算法为Linux虚拟服务器的轮询调度算法。
4.根据权利要求1所述的方法,其中,将接收的下载请求分配给所述源机器和所述备用机器,还包括:
确定每一台用户机器所在的互联网数据中心;
将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一互联网数据中心的所述源机器或所述备用机器。
5.根据权利要求2-4中任一项所述的方法,其中,在建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,还包括:
监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
6.根据权利要求5所述的方法,其中,发出更新失败通知,包括:
通过邮件发出更新失败通知。
7.根据权利要求5所述的方法,其中,还包括:
在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
8.一种基于多用户机器的文件处理方法,应用于用户机器侧,包括:
多台用户机器向预设域名发送对待下载文件的下载请求,其中所述预设域名被解析到源机器和指定数量的备用机器上,所述源机器上的所述待下载文件已更新,并且所述源机器上更新后的待下载文件被分发到所述备用机器上;
在所述下载请求被分配给所述源机器和所述备用机器后,建立各台用户机器与其发送的下载请求被分配至的所述源机器或所述备用机器之间的连接;
各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新;
在多台用户机器向预设域名发送对待下载文件的下载请求之前,还包括:
将所述多台用户机器按照预定规则分成多个组;
所述多台用户机器向预设域名发送对待下载文件的下载请求,包括:
每组用户机器按照指定的组间顺序向所述预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
9.根据权利要求8所述的方法,其中,还包括:
在各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
10.根据权利要求9所述的方法,其中,发出更新失败通知,包括:
通过邮件发出更新失败通知。
11.根据权利要求9所述的方法,其中,还包括:
在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
12.一种基于多用户机器的文件处理装置,应用于源机器侧,包括:
文件分发模块,适于更新所述源机器上的待下载文件,并将更新后的待下载文件分发到指定数量的备用机器上;
域名解析模块,适于将预设域名解析到所述源机器和所述备用机器上;
请求接收模块,适于接收多台用户机器向所述预设域名发送的下载请求;
请求分配模块,适于将接收的下载请求分配给所述源机器和所述备用机器;以及
连接下载模块,适于建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接,以供各台用户机器完成对所述更新后的待下载文件的下载并根据所下载的文件进行更新;
若所述多台用户机器按照预定规则被分成多个组,则
所述请求接收模块还适于:
接收每组用户机器按照指定的组间顺序向所述预设域名发送的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
13.根据权利要求12所述的装置,其中,所述请求分配模块还适于:
通过负载均衡算法将接收的下载请求分配给所述源机器和所述备用机器。
14.根据权利要求13所述的装置,其中,所述负载均衡算法为Linux虚拟服务器的轮询调度算法。
15.根据权利要求12所述的装置,其中,所述请求分配模块还适于:
确定每一台用户机器所在的互联网数据中心;
将接收的下载请求优先分配给与该下载请求对应的用户机器位于同一互联网数据中心的所述源机器或所述备用机器。
16.根据权利要求13-15中任一项所述的装置,其中,还包括:
第一监测模块,适于在所述连接下载模块建立所述源机器和所述备用机器中的每一个与被分配给其的下载请求对应的用户机器之间的连接之后,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
17.根据权利要求16所述的装置,其中,所述第一监测模块还适于:
通过邮件发出更新失败通知。
18.根据权利要求16所述的装置,其中,还包括:
第一分析续做模块,适于在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行接收其他组的用户机器发送的下载请求、建立连接以供用户机器的下载和更新的流程。
19.一种基于多用户机器的文件处理装置,应用于用户机器侧,包括:
请求发送模块,适于多台用户机器向预设域名发送对待下载文件的下载请求,其中所述预设域名被解析到源机器和指定数量的备用机器上,所述源机器上的所述待下载文件已更新,并且所述源机器上更新后的待下载文件被分发到所述备用机器上;
连接建立模块,适于在所述下载请求被分配给所述源机器和所述备用机器后,建立各台用户机器与其发送的下载请求被分配至的所述源机器或所述备用机器之间的连接;以及
下载更新模块,适于各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新;
分组模块,适于在多台用户机器向预设域名发送对待下载文件的下载请求之前,将所述多台用户机器按照预定规则分成多个组;
所述请求发送模块还适于:
每组用户机器按照指定的组间顺序向所述预设域名发送对待下载文件的下载请求,其中,每组内的用户机器之间并行地发送所述下载请求,并且只有当上一组的用户机器完成对所述更新后的待下载文件的下载以及根据所下载的文件进行更新后,下一组的用户机器才进行所述下载请求的发送。
20.根据权利要求19所述的装置,其中,还包括:
第二监测模块,适于在各台用户机器从所连接的源机器或备用机器下载所述更新后的待下载文件,并根据所下载的文件进行更新的过程中,监测每组内的用户机器的下载和更新的情况;
当监测到某组用户机器下载和/或更新失败时,中断该组用户机器的下载和更新流程,并发出更新失败通知。
21.根据权利要求20所述的装置,其中,所述第二监测模块还适于:
通过邮件发出更新失败通知。
22.根据权利要求20或21所述的装置,其中,还包括:
第二分析续做模块,适于在接收到所述更新失败通知后,分析失败原因,并根据分析结果继续进行其他组的用户机器的发送下载请求、下载更新后的待下载文件和根据所下载的文件进行更新的流程。
23.一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行根据权利要求1-11中任一项所述的基于多用户机器的文件处理方法。
24.一种计算设备,包括:
处理器;以及
存储有计算机程序代码的存储器;
当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行根据权利要求1-11中任一项所述的基于多用户机器的文件处理方法。
CN201811026547.3A 2018-09-04 2018-09-04 一种基于多用户机器的文件处理方法和装置 Active CN110874260B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811026547.3A CN110874260B (zh) 2018-09-04 2018-09-04 一种基于多用户机器的文件处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811026547.3A CN110874260B (zh) 2018-09-04 2018-09-04 一种基于多用户机器的文件处理方法和装置

Publications (2)

Publication Number Publication Date
CN110874260A CN110874260A (zh) 2020-03-10
CN110874260B true CN110874260B (zh) 2023-03-10

Family

ID=69716184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811026547.3A Active CN110874260B (zh) 2018-09-04 2018-09-04 一种基于多用户机器的文件处理方法和装置

Country Status (1)

Country Link
CN (1) CN110874260B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013330B1 (en) * 2000-10-03 2006-03-14 Networks Associates Technology, Inc. Downloading a computer file from a source computer to a target computer
JP2007305064A (ja) * 2006-05-15 2007-11-22 Nec Corp サーバ、情報処理端末、ファイル転送方法及び方法、ファイル自動更新システム及び方法並びにプログラム
CN102025595A (zh) * 2009-09-22 2011-04-20 常诚 流量优化方法及系统
CN103595743A (zh) * 2012-08-16 2014-02-19 腾讯科技(深圳)有限公司 一种下载应用软件的方法、装置及系统
CN105991699A (zh) * 2015-02-06 2016-10-05 北京中搜网络技术股份有限公司 一种互联网爬虫的分布式下载系统
CN106131113A (zh) * 2016-06-14 2016-11-16 武汉深之度科技有限公司 一种资源下载方法、装置、系统以及资源服务器
CN107291481A (zh) * 2016-03-30 2017-10-24 腾讯科技(深圳)有限公司 一种组件更新方法、装置和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102867247B (zh) * 2012-09-10 2015-12-09 武汉华工安鼎信息技术有限责任公司 快速部署文件安全外发的办公自动化系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013330B1 (en) * 2000-10-03 2006-03-14 Networks Associates Technology, Inc. Downloading a computer file from a source computer to a target computer
JP2007305064A (ja) * 2006-05-15 2007-11-22 Nec Corp サーバ、情報処理端末、ファイル転送方法及び方法、ファイル自動更新システム及び方法並びにプログラム
CN102025595A (zh) * 2009-09-22 2011-04-20 常诚 流量优化方法及系统
CN103595743A (zh) * 2012-08-16 2014-02-19 腾讯科技(深圳)有限公司 一种下载应用软件的方法、装置及系统
CN105991699A (zh) * 2015-02-06 2016-10-05 北京中搜网络技术股份有限公司 一种互联网爬虫的分布式下载系统
CN107291481A (zh) * 2016-03-30 2017-10-24 腾讯科技(深圳)有限公司 一种组件更新方法、装置和系统
CN106131113A (zh) * 2016-06-14 2016-11-16 武汉深之度科技有限公司 一种资源下载方法、装置、系统以及资源服务器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
秦臻.基于内容发布网络(CDN)的域名解析系统.《中国优秀博士论文电子期刊网 信息科技辑》.2012,全文. *

Also Published As

Publication number Publication date
CN110874260A (zh) 2020-03-10

Similar Documents

Publication Publication Date Title
CN109688235B (zh) 虚拟网络业务处理方法、装置和系统,控制器,存储介质
CA2891339C (en) Distributed caching cluster management
US10313452B2 (en) Migrating a chat message service provided by a chat server to a new chat server
US9602614B1 (en) Distributed caching cluster client configuration
CN107105013B (zh) 文件的处理方法、服务器、终端和系统
CN108933829A (zh) 一种负载均衡方法及装置
US9529772B1 (en) Distributed caching cluster configuration
US20130205011A1 (en) Service providing system
CN112445774A (zh) 一种分布式共享文件系统及其数据处理方法
CN113014611B (zh) 一种负载均衡方法及相关设备
CN109150936A (zh) 一种分布式集群中会话对象Session的共享方法及装置
CN107566466A (zh) 负载均衡方法及装置
WO2003069473A1 (en) A method and apparatus for reconfiguring a server system
CN113177179B (zh) 数据请求连接管理方法、装置、设备及存储介质
CN110874260B (zh) 一种基于多用户机器的文件处理方法和装置
CN111338778B (zh) 任务调度方法、装置、存储介质及计算机设备
CN109005071B (zh) 一种决策部署方法和调度设备
US10481963B1 (en) Load-balancing for achieving transaction fault tolerance
CN108696557B (zh) 信息处理系统、方法和装置
WO2022222403A1 (zh) 任务分发系统、方法、装置、计算机设备及存储介质
CN115883559A (zh) 无状态网络负载均衡方法、装置和存储介质
CA2986758C (en) Systems and methods for server failover and load balancing
CN111262771A (zh) 虚拟私有云通信系统、系统配置方法及控制器
CN114443267A (zh) 一种资源获取方法、系统、装置及存储介质
JP2019041241A (ja) 振り分けシステム

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