CN102761599A - 一种分布式系统中升级文件分发方法 - Google Patents
一种分布式系统中升级文件分发方法 Download PDFInfo
- Publication number
- CN102761599A CN102761599A CN2012101448105A CN201210144810A CN102761599A CN 102761599 A CN102761599 A CN 102761599A CN 2012101448105 A CN2012101448105 A CN 2012101448105A CN 201210144810 A CN201210144810 A CN 201210144810A CN 102761599 A CN102761599 A CN 102761599A
- Authority
- CN
- China
- Prior art keywords
- upgrade file
- main frame
- address
- management server
- download
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种分布式系统中文件分发方法,应用于包括管理服务器与至少一个主机的分布式系统进行文件分发,管理服务器负责全网所有主机的升级管理,它可以根据预先定义的分发策略和升级调度算法,控制每台主机从地址池中选择一个地址下载指定升级文件,并对该主机上的应用程序进行安装升级。主机将本地已下载升级文件访问地址告知管理服务器,管理服务器可以让其他主机访问该地址下载升级文件。每台主机既可以从其他主机下载升级文件,又可以充当下载服务器,为其他主机提供文件下载服务。本发明可以应用于包括云系统在内的任何分布式系统,可以有效避免管理服务器的瓶颈,并充分利用全网各服务器的资源能力,快速并可控地进行文件分发。
Description
技术领域
本发明涉及电通信技术领域,尤其涉及一种分布式系统中文件分发方法。
背景技术
随着互联网应用的快速发展和用户规模的不断膨胀,需要大量服务器群共同协作实现共同协作提供网络服务。分布式系统则是规模网络服务的基础架构。随着用户需求的不断变化,分布式系统上的文件更新速度越来越频繁。一个有代表性的文件升级如图1所示,全网各主机服务器向管理服务器轮询下载相应的新版本升级文件并升级。
然而一套分布式系统包括几百甚至上万台服务器,升级文件的下载流量高度集中在管理服务器上,造成全网流量的不均衡分布,因此管理服务器通常是整个系统文件升级的瓶颈。
基于P2P的分布式模式也是常见的文件分发方法,P2P技术认为所有互联的设备互为对等体。由于用户与服务器之间的连接是双向的,用户彼此之间也是可以互相访问的,所以,当多个用户同时下载同一个文件时,他们可以互相上传已经下载的文件的一部分。这样重新分配向用户上传的开销之后,将大大减轻服务器的压力,从而可以克服集中模式的缺点,BitTorrent实现了这种分布式文件分发模式。
基于P2P技术的分布式文件分发模式有着优良的伸缩性,但是如何保证效率和可靠性是其面临的技术难题。P2P分发模式在文件上传到服务器前将文件分块,互联设备下载文件块,并与网络中的其他设备分享下载的文件块,因此互联设备需要有效找出哪些互联设备已有文件的哪些部分以及它们应该被送到哪里。同时互联设备的连接是随机的,经常只有几分钟,没有服务质量的保证。网络中的设备随时有可能下线,需要重新寻找资源下载,并有可能某些文件块处于极少数互联设备中,拥有这些文件块的互联设备不再提供上传,就可能被永久丢失。
而在电信级的分布式文件系统中,服务质量和传输的可靠性是非常重要的,因此如何将升级文件可靠快速可控地更新部署到全部系统设备,将是网络管理系统的巨大挑战。
发明内容
本发明提出一种分布式系统中文件分发方法,用以支持大规模网络升级,克服现有技术方案中心下载服务器的处理能力瓶颈以及P2P模式可靠性差的问题。
本发明的核心思想是管理服务器为每个升级文件维护一个地址池,记录升级文件所有可用的下载地址及其相关信息。管理服务器本身也可以提供升级文件的下载服务,每当一个主机成功下载升级文件后,管理服务器将把升级文件在该主机上的下载地址添加进下载地址池,其他主机可以从地址池中的地址下载升级文件。随着更多的主机成功升级,地址池的可用地址也将增多,升级文件整个网络的分发速度也将呈几何级别的上升。
管理服务器负责全网所有主机的升级管理,它可以根据预先定义的分发策略和升级调度算法,控制每台主机从地址池中选择一个地址下载指定升级文件,并对该主机上的应用程序进行安装升级。当主机下载完升级文件后,可以为其他主机提供升级文件的下载服务。对于一个未升级主机,如何从地址池中选择一个地址来下载升级文件,将由升级调度算法决定。所述升级调度算法包括:
就近原则,管理服务器可以选择一个地理位置或者网络位置距离未升级主机最近的URL地址;
负载均衡原则,管理服务器可以选择当前负载最少的URL地址来下载服务,尽量保证地址池中下载服务器的负载均衡。
权重原则,在负载均衡的基础上,区别考虑提供下载服务主机的服务能力,权重高的主机,其负载可以适当加大。权重低的主机,其负载可以适当减少。权重可以人工指定,也可以根据主机软硬件资源计算。
本发明公开了一种分布式系统中升级文件分发方法,应用于包括管理服务器与至少一个主机的分布式系统进行升级文件分发,所述升级文件分发方法包括步骤:
步骤1、管理服务器定义升级文件分发策略和升级调度算法,加载待升级文件,初始化升级文件的下载地址池;
步骤2、管理服务器根据分发策略,选择主机进行升级,根据升级调度算法从地址池中选择升级文件下载地址,指定该地址作为所述主机的升级文件下载地址;
步骤3、主机收到管理服务器指令后,从指定的地址下载升级文件;
步骤4、主机下载升级文件成功后,报告管理服务器结果和所述主机上的升级文件访问地址,管理服务器将所述访问地址加入地址池;
步骤5、管理服务器根据分发策略选择其他未升级主机进行升级,直至所有主机完成升级文件下载升级。
进一步地,所述的步骤3还包括步骤:主机从指定的地址下载升级文件后,对下载升级文件做合法性校验。
其中,每个主机上均部署一个代理,所述代理可以接收管理服务器指令并与其它主机上的代理通讯。
其中,所述的升级文件分发策略包括主机升级时间,升级文件类型、版本、大小和校验方式。
其中,所述的升级调度算法采用就近原则,管理服务器选择一个地理位置或者网络位置距离未升级主机最近的地址,指定该地址作为所述主机的升级文件下载地址;所述的升级调度算法也可以采用负载均衡原则,管理服务器选择当前负载最少的地址,指定该地址作为所述主机的升级文件下载地址;所述的升级调度算法还可以采用负载均衡与权重相结合的原则,管理服务器选择当前负载较少的地址,同时根据提供下载服务主机的服务能力,权重高的主机,其负载可以适当加大,权重低的主机,其负载可以适当减少,指定优选的地址作为所述主机的升级文件下载地址。
进一步地,当所述管理服务器上存在多个需要升级的文件时,管理服务器为每个升级文件定义升级文件分发策略和升级调度算法,并为每一个升级文件维护一个下载地址池。
本方法适用于任何分布式系统,包括各种云系统。通过本发明分布式系统文件分发方法,具有如下技术效果:
1、根据定义的分发策略,系统中各主机按照分发策略在指定时间下载,可以实现文件的自动升级安装;
2、通过设定下载地址池,并采用升级调度算法,可以避免因为中心下载服务器的瓶颈,而造成全网下载的拥塞和单点故障,可以统筹控制并充分利用全网各服务器的资源能力,快速并可控地更新部署全网服务节点;
3、采用下载后进行文件校验的方法,可以保证文件传输的可靠校验,保证文件的可靠性。
附图说明
图1为现有技术文件发布结构示意图;
图2为本发明实施例文件发布结构示意图;
图3为本发明分布式系统文件分发方法流程示意图。
具体实施方式
下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。
假设分布式式系统由一系列主机组成,主机可以是物理服务器,也可以是虚拟机,主机上可以运行一个或者多个应用程序(Application)。系统中部署一个管理服务器,负责管理全网所有的主机以及主机上的应用程序。每个主机上均部署一个特殊应用程序,称之为代理(Agent)。代理可以接收管理服务器指令并与其它主机上的代理通讯。管理服务器负责全网所有主机的升级管理,它可以根据预先定义的分发策略和升级调度算法,控制每台主机从地址池中选择一个地址下载指定升级文件,并对该主机上的应用程序进行安装升级。主机需要将本地已下载升级文件访问URL告知管理服务器,管理服务器可以让其他主机访问该URL下载升级文件。这样,每台主机既可以从其他主机下载升级文件,可以充当管理服务器,为其他主机提供下载服务器。
以下通过如图2所示的实例来详细阐述本发明的分布式系统文件分发方法,所述分布式系统包括管理服务器和主机1,主机2,主机3三台主机,其中指定升级调度算法是选择负载最小的地址提供下载服务,并发任务数为1,所述的地址是URL地址。其升级流程如图3所示,包括步骤:
步骤301、管理服务器定义升级文件分发策略和升级调度算法,加载待升级文件,初始化升级文件的下载地址池。
管理服务器负责全网所有主机的升级管理,它可以根据预先定义的分发策略,控制每台主机在指定时间从指定URL地址下载指定升级文件,并对该主机上的应用程序进行安装升级。分发策略包括但不限于:主机升级时间,升级文件类型、版本、大小和校验方法。
升级调度算法包括:
就近原则,管理服务器可以选择一个地理位置或者网络位置距离未升级主机最近的URL地址;
负载均衡原则,管理服务器可以选择当前负载最少的URL地址来下载服务,尽量保证地址池中下载服务器的负载均衡。
权重原则,在负载均衡的基础上,区别考虑提供下载服务主机的服务能力,权重高的主机,其负载可以适当加大。权重低的主机,其负载可以适当减少。权重可以人工指定,也可以根据主机软硬件资源计算。。初始化升级文件的下载地址池,该池中只有升级管理系统地址。
本实施例采用负载均衡原则,校验方法采用MD5校验。初始话的地址池仅包括管理服务器本身提供的URL地址。
步骤302、管理服务器根据分发策略,首先选择主机1升级,因为此时地址池中只有管理服务器一个地址,因此主机将从管理服务器下载升级文件。
步骤303、主机1的代理收到指令后,向管理服务器下载升级文件。
步骤304、主机1的代理下载成功后,对下载的升级文件进行MD5校验,并报告管理服务器结果和主机1上的升级文件访问URL地址。
步骤305、管理服务器更新下载地址池,根据分发策略选择主机2进行升级,此时地址池中有两个地址:管理服务器和主机1。
根据负载均衡原则,因为管理服务器的负载为1,而主机1的负载为0,因此管理服务器决定主机2的下载URL地址指向主机1。
步骤306、主机2的代理收到指令后,向主机1下载升级文件。
步骤307、主机2的代理下载成功后,对下载的升级文件进行MD5校验,并报告管理服务器结果和主机2上的升级文件访问URL地址。
步骤308、管理服务器更新下载地址池,根据分发策略选择主机3进行升级,此时地址池中有三个地址:管理服务器、主机1和主机2。因为主机2的负载最小,因此管理服务器决定主机3的下载URL地址指向主机2。
步骤309、主机3的代理收到指令后,向主机2下载升级文件。
步骤310、主机3的代理下载成功后,对下载的升级文件进行MD5校验,并报告管理服务器结果和主机3上的升级文件访问URL地址。
至此完成这个网络的文件升级。
其中主机可以采用FTP/SFTP/HTTP/HTTPS或者其它传输协议提供本地升级文件的下载服务,并保证传输安全。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种分布式系统中升级文件分发方法,应用于包括管理服务器与至少一个主机的分布式系统进行升级文件分发,其特征在于,所述升级文件分发方法包括步骤:
步骤1、管理服务器定义升级文件分发策略和升级调度算法,加载待升级文件,初始化升级文件的下载地址池;
步骤2、管理服务器根据分发策略,选择主机进行升级,根据升级调度算法从地址池中选择升级文件下载地址,指定该地址作为所述主机的升级文件下载地址;
步骤3、所述主机收到管理服务器指令后,从指定的地址下载升级文件;
步骤4、所述主机下载升级文件成功后,报告管理服务器结果和所述主机上的升级文件访问地址,管理服务器将所述访问地址加入地址池;
步骤5、管理服务器根据分发策略选择其他未升级主机进行升级,直至所有主机完成升级文件下载升级。
2.根据权利要求1所述的分布式系统中升级文件分发方法,其特征在于,所述的步骤3还包括步骤:所述主机从指定的地址下载升级文件后,对下载升级文件做合法性校验。
3.根据权利要求1所述的分布式系统中升级文件分发方法,其特征在于,每个主机上均部署一个代理,所述代理可以接收管理服务器指令并与其它主机上的代理通讯。
4.根据权利要求1-3任一项权利要求所述的分布式系统中升级文件分发方法,其特征在于,所述的分发策略包括主机升级时间,升级文件类型、版本、大小和校验方式。
5.根据权利要求1-3任一项权利要求所述的分布式系统中升级文件分发方法,其特征在于,所述的升级调度算法采用就近原则,管理服务器选择一个地理位置或者网络位置距离未升级主机最近的地址,指定该地址作为所述主机的升级文件下载地址。
6.根据权利要求1-3任一项权利要求所述的分布式系统中升级文件分发方法,其特征在于,所述的升级调度算法采用负载均衡原则,管理服务器选择当前负载最少的地址,指定该地址作为所述主机的升级文件下载地址。
7.根据权利要求1-3任一项权利要求所述的分布式系统中升级文件分发方法,其特征在于,所述的升级调度算法采用负载均衡与权重相结合的原则,管理服务器选择当前负载较少的地址,同时根据提供下载服务主机的服务能力,权重高的主机,其负载可以适当加大,权重低的主机,其负载可以适当减少,指定优选的地址作为所述主机的升级文件下载地址。
8.根据权利要求1所述的分布式系统中升级文件分发方法,其特征在于,当所述管理服务器上存在多个需要升级的文件时,管理服务器为每个升级文件定义分发策略和升级调度算法,并为每一个升级文件维护一个下载地址池。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101448105A CN102761599A (zh) | 2012-05-10 | 2012-05-10 | 一种分布式系统中升级文件分发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101448105A CN102761599A (zh) | 2012-05-10 | 2012-05-10 | 一种分布式系统中升级文件分发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102761599A true CN102761599A (zh) | 2012-10-31 |
Family
ID=47055917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012101448105A Pending CN102761599A (zh) | 2012-05-10 | 2012-05-10 | 一种分布式系统中升级文件分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102761599A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945175A (zh) * | 2012-11-09 | 2013-02-27 | 杭州易和网络有限公司 | 一种基于云计算环境的终端软件在线升级系统及其方法 |
CN105635277A (zh) * | 2015-12-30 | 2016-06-01 | 北京京东尚科信息技术有限公司 | 提供升级包的方法与装置以及升级客户端的方法与装置 |
CN106210114A (zh) * | 2016-07-28 | 2016-12-07 | 北京北信源软件股份有限公司 | 一种多终端软件并行下载升级方法 |
CN106325958A (zh) * | 2016-08-30 | 2017-01-11 | 北京小米移动软件有限公司 | 代码下载方法和编译服务器 |
CN106453549A (zh) * | 2016-10-08 | 2017-02-22 | 中国工商银行股份有限公司 | 一种分布式软件版本发布方法及系统 |
CN106713483A (zh) * | 2017-01-11 | 2017-05-24 | 北京金山安全管理系统技术有限公司 | 一种分布式软件分发方法 |
CN107682210A (zh) * | 2017-11-10 | 2018-02-09 | 北京明朝万达科技股份有限公司 | 一种基于混合传输模式的数据升级方法及系统 |
CN107835088A (zh) * | 2017-09-26 | 2018-03-23 | 深圳市亿兆互联技术有限公司 | 一种LoRa终端设备空中升级方法及系统 |
CN109862107A (zh) * | 2019-03-05 | 2019-06-07 | 上海博泰悦臻网络技术服务有限公司 | 多线程调度指定升级方法、服务端及客户端 |
CN109995577A (zh) * | 2019-02-22 | 2019-07-09 | 厦门天锐科技股份有限公司 | 一种更新策略的方法、装置及系统 |
CN111176163A (zh) * | 2019-12-30 | 2020-05-19 | 苏州百傲信息技术有限公司 | 一种基于树莓派的看板终端控制系统 |
CN113050958A (zh) * | 2019-12-26 | 2021-06-29 | 海能达通信股份有限公司 | 一种终端的升级方法、终端及服务器 |
CN115348255A (zh) * | 2022-07-27 | 2022-11-15 | 广州市金其利信息科技有限公司 | 一种操作系统的镜像安装方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741894A (zh) * | 2008-11-26 | 2010-06-16 | 中国移动通信集团公司 | 一种分布式系统的升级方法、升级调度节点及系统 |
CN102065110A (zh) * | 2009-11-12 | 2011-05-18 | 钟惠波 | 一种基于p2sp的客户端软件在线升级的方法和系统 |
CN102118376A (zh) * | 2010-01-06 | 2011-07-06 | 中兴通讯股份有限公司 | 内容分发网络服务器及内容下载方法 |
-
2012
- 2012-05-10 CN CN2012101448105A patent/CN102761599A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741894A (zh) * | 2008-11-26 | 2010-06-16 | 中国移动通信集团公司 | 一种分布式系统的升级方法、升级调度节点及系统 |
CN102065110A (zh) * | 2009-11-12 | 2011-05-18 | 钟惠波 | 一种基于p2sp的客户端软件在线升级的方法和系统 |
CN102118376A (zh) * | 2010-01-06 | 2011-07-06 | 中兴通讯股份有限公司 | 内容分发网络服务器及内容下载方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945175A (zh) * | 2012-11-09 | 2013-02-27 | 杭州易和网络有限公司 | 一种基于云计算环境的终端软件在线升级系统及其方法 |
CN105635277A (zh) * | 2015-12-30 | 2016-06-01 | 北京京东尚科信息技术有限公司 | 提供升级包的方法与装置以及升级客户端的方法与装置 |
CN106210114A (zh) * | 2016-07-28 | 2016-12-07 | 北京北信源软件股份有限公司 | 一种多终端软件并行下载升级方法 |
CN106325958A (zh) * | 2016-08-30 | 2017-01-11 | 北京小米移动软件有限公司 | 代码下载方法和编译服务器 |
CN106453549A (zh) * | 2016-10-08 | 2017-02-22 | 中国工商银行股份有限公司 | 一种分布式软件版本发布方法及系统 |
CN106453549B (zh) * | 2016-10-08 | 2019-09-13 | 中国工商银行股份有限公司 | 一种分布式软件版本发布方法及系统 |
CN106713483A (zh) * | 2017-01-11 | 2017-05-24 | 北京金山安全管理系统技术有限公司 | 一种分布式软件分发方法 |
CN107835088A (zh) * | 2017-09-26 | 2018-03-23 | 深圳市亿兆互联技术有限公司 | 一种LoRa终端设备空中升级方法及系统 |
CN107682210A (zh) * | 2017-11-10 | 2018-02-09 | 北京明朝万达科技股份有限公司 | 一种基于混合传输模式的数据升级方法及系统 |
CN109995577B (zh) * | 2019-02-22 | 2022-08-02 | 厦门天锐科技股份有限公司 | 一种更新策略的方法、装置及系统 |
CN109995577A (zh) * | 2019-02-22 | 2019-07-09 | 厦门天锐科技股份有限公司 | 一种更新策略的方法、装置及系统 |
CN109862107A (zh) * | 2019-03-05 | 2019-06-07 | 上海博泰悦臻网络技术服务有限公司 | 多线程调度指定升级方法、服务端及客户端 |
CN113050958A (zh) * | 2019-12-26 | 2021-06-29 | 海能达通信股份有限公司 | 一种终端的升级方法、终端及服务器 |
CN111176163A (zh) * | 2019-12-30 | 2020-05-19 | 苏州百傲信息技术有限公司 | 一种基于树莓派的看板终端控制系统 |
CN115348255A (zh) * | 2022-07-27 | 2022-11-15 | 广州市金其利信息科技有限公司 | 一种操作系统的镜像安装方法、装置及存储介质 |
CN115348255B (zh) * | 2022-07-27 | 2023-05-16 | 广州市金其利信息科技有限公司 | 一种操作系统的镜像安装方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102761599A (zh) | 一种分布式系统中升级文件分发方法 | |
CN107360234B (zh) | 计算机可读存储介质 | |
US20100287280A1 (en) | System and method for cloud computing based on multiple providers | |
CN102868731B (zh) | 软件在线升级及加速下载的方法和装置 | |
CN102945175A (zh) | 一种基于云计算环境的终端软件在线升级系统及其方法 | |
CN104219329A (zh) | 一种集群服务器中通过内容分发部署业务的方法 | |
WO2015164026A1 (en) | Enabling planned upgrade/downgrade of network devices without impacting network sessions | |
CN104965726A (zh) | 配置更新方法、装置及系统 | |
CN102413185A (zh) | 基于bt技术的云平台自动升级系统 | |
CN102932455B (zh) | 基于云计算渲染农场的构建方法 | |
CN103685554A (zh) | 升级方法、装置及系统 | |
CN102420863B (zh) | 一种快速分发文件系统和方法及装置 | |
EP3076290B1 (en) | Method and device for remotely updating application program | |
US20150019689A1 (en) | Managed file transfer system, method and apparatus | |
CN103023988A (zh) | 文件同步方法、服务器、客户端及终端设备 | |
US20120179778A1 (en) | Applying networking protocols to image file management | |
CN103297275A (zh) | Web网管客户端模块动态发现与加载的系统及方法 | |
CN111327697B (zh) | 一种数据下载方法、装置、设备及存储介质 | |
CN111092921B (zh) | 数据采集方法、装置及存储介质 | |
CN104793970A (zh) | 一种基于ftp的在线升级方法 | |
CN102571446A (zh) | 网络设备的升级方法、装置及系统 | |
CN109962961A (zh) | 一种内容分发网络cdn服务节点的重定向方法及系统 | |
KR101033813B1 (ko) | 클라우드 컴퓨팅 네트워크 시스템 및 그것의 파일 분산 방법 | |
CN104125294A (zh) | 一种大数据安全管理方法和系统 | |
CN101977243A (zh) | 云数据存储分配(ddcs) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121031 |