CN102006332B - 一种软件升级的方法和系统 - Google Patents

一种软件升级的方法和系统 Download PDF

Info

Publication number
CN102006332B
CN102006332B CN2010105719963A CN201010571996A CN102006332B CN 102006332 B CN102006332 B CN 102006332B CN 2010105719963 A CN2010105719963 A CN 2010105719963A CN 201010571996 A CN201010571996 A CN 201010571996A CN 102006332 B CN102006332 B CN 102006332B
Authority
CN
China
Prior art keywords
component
version
upgraded
upgrading
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.)
Active
Application number
CN2010105719963A
Other languages
English (en)
Other versions
CN102006332A (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.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2010105719963A priority Critical patent/CN102006332B/zh
Publication of CN102006332A publication Critical patent/CN102006332A/zh
Priority to PCT/CN2011/083363 priority patent/WO2012072039A1/en
Application granted granted Critical
Publication of CN102006332B publication Critical patent/CN102006332B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种软件升级的方法和系统,该方法包括:当确定了待升级组件的版本信息时,客户端根据所述版本信息确定升级路径,并根据所述升级路径获取待升级组件对应的组件版本;所述客户端根据所述升级路径将获取的组件版本发送给服务端;所述服务端根据所述组件版本升级对应的待升级组件。本发明中,使升级准备工作完备且有条理,且简化了升级步骤,提高了升级效率。

Description

一种软件升级的方法和系统
技术领域
本发明涉及通信技术领域,特别是涉及一种软件升级的方法和系统。 
背景技术
现有的大型系统应用软件中,大多采用基于SOA(Service OrientedArchitecture,面向服务的架构)的设计思想,提供平台化、组件(Component)化的封装实现,由平台(PLAT)框架实现资源的统一管理和访问控制,并由各组件实现相对独立的具体业务应用功能。如图1所示,为系统应用软件的体系架构示意图。通过采用上述体系架构,可保证软件整体的易扩展性、灵活定制、按需部署等特点,并可以更好地满足用户的使用需求。 
现有技术中,软件产品一般都会因解决当前版本中存在的问题或者加载其他功能等需求而进行升级。在图1所示的体系架构下,如果只有Component(1)受到影响,则只需要对Component(1)进行升级操作,其他模块不做任何处理;如果Component(1)、Component(2)受到影响,则对Component(1)、Component(2)分别执行升级操作。 
在实现本发明的过程中,发明人发现现有技术中至少存在以下问题: 
上述体系架构提供了灵活性和受影响范围最小化的升级方式,同时也导致升级操作的复杂度增加。例如,如果Component(1)、Component(2)......Component(n)各有一个功能需要修改,则需要执行n次组件的手工升级操作。特殊的,如果组件之间存在依赖关系,需要首先升级Component(1),之后才能升级Component(2);或者,当前版本和待升级版本的间隔较多(如当前版本是V1,需要升级到版本V5,中间间隔了版本V2、V3、V4)时,还需要考虑升级的顺序和路径,从而导致升级过程更加复杂和繁琐。 
进一步的,大型应用软件的升级往往由技术人员到用户现场来完成,如果用户当前使用的版本和最新发布的版本间隔较多时,技术人员容易出现考虑不全面等问题,在到达用户现场执行升级时,才会发现少带了某个版本,从而导致升级失败,影响升级效率,甚至可导致用户业务长时间中断而成为事故。 
发明内容
本发明提供一种软件升级的方法和系统,以降低软件升级时的复杂度,提高升级效率。 
为了达到上述目的,本发明提供一种软件升级的方法,该方法包括以下步骤: 
当确定了待升级组件的版本信息时,客户端根据所述版本信息确定升级路径,并根据所述升级路径获取待升级组件对应的组件版本; 
所述客户端根据所述升级路径将获取的组件版本发送给服务端;由所述服务端根据所述组件版本升级对应的待升级组件。 
所述客户端根据所述版本信息确定升级路径,具体包括: 
所述客户端根据所述待升级组件的各版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据所述待升级组件各版本的升级顺序确定所述升级路径; 
所述依赖关系通过可扩展标记语言XML文件随所述待升级组件版本发布,所述升级路径通过所述XML文件记录于所述客户端中。 
根据所述升级路径获取待升级组件对应的组件版本,之后还包括:所述客户端存储所述组件版本,并记录所述组件版本和存储位置的对应关系; 
在将所述组件版本发送给服务端时,所述客户端根据所述组件版本和存储位置的对应关系从对应的存储位置处获得组件版本,并将所述组件版本发送给所述服务端。 
所述客户端根据所述升级路径将获取的组件版本发送给服务端,之前还包括: 
所述客户端向所述服务端发送指示消息;所述服务端根据所述指示消息检测待升级组件的当前版本信息,并将所述当前版本信息发送给所述客户端; 
所述客户端根据所述当前版本信息确定所述升级路径是否正确;如果是,则执行将获取的组件版本发送给所述服务端的步骤;否则,所述客户端根据所述当前版本信息重新确定升级路径。 
所述服务端根据所述组件版本升级对应的待升级组件,之后还包括: 
所述服务端将待升级组件的升级进度信息发送给所述客户端,由所述客户端根据待升级组件的升级进度信息显示升级进度。 
本发明提供一种软件升级的系统,包括: 
客户端,用于当确定了待升级组件的版本信息时,根据所述版本信息确定升级路径,并根据所述升级路径获取待升级组件对应的组件版本;以及根据所述升级路径将获取的组件版本发送给服务端; 
服务端,用于根据所述组件版本升级对应的待升级组件; 
其中,所述路径计算模块,具体用于根据所述待升级组件的各版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据所述待升级组件各版本的升级顺序确定所述升级路径; 
所述依赖关系通过可扩展标记语言XML文件随所述待升级组件版本发布,所述升级路径通过所述XML文件记录于所述客户端中。 
所述客户端包括: 
路径计算模块,用于根据所述版本信息确定升级路径; 
软件管理模块,用于根据所述升级路径获取待升级组件对应的组件版本; 
软件升级模块,用于当需要升级待升级组件时,按照所述升级路径选择待升级组件对应的组件版本,并指示第一通讯模块将组件版本发送给所述服务端; 
第一通讯模块,用于将选择的组件版本发送给所述服务端。 
所述路径计算模块,具体用于根据所述版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据所述待升级组件的升级顺序确定所述升级路径。 
所述软件管理模块,还用于存储所述组件版本,并记录所述组件版本和存储位置的对应关系; 
所述软件升级模块,具体用于按照所述升级路径以及所述组件版本和存储位置的对应关系从对应的存储位置处选择组件版本。 
所述软件升级模块,还用于通过所述第一通讯模块向所述服务端发送指示消息,指示所述服务端根据所述指示消息检测待升级组件的当前版本信息;并获得来自所述服务端的所述当前版本信息; 
当根据所述当前版本信息确定所述升级路径正确时,则执行将获取的组件版本发送给所述服务端的步骤;否则,由所述路径计算模块根据所述当前版本信息重新确定升级路径。 
所述服务端包括: 
第二通讯模块,用于接收来自所述客户端的组件版本; 
升级执行模块,用于根据所述组件版本升级对应的待升级组件。 
所述服务端还包括版本检测模块;所述第二通讯模块,还用于接收来自所述客户端的指示消息,并将当前版本信息发送给所述客户端; 
所述版本检测模块,用于根据所述指示消息检测待升级组件的当前版本信息,并由所述第二通讯模块将当前版本信息发送给所述客户端。 
所述服务端还包括升级进度报告模块;所述升级进度报告模块,用于将待升级组件的升级进度信息发送给所述客户端,由所述客户端根据待升级组件的升级进度信息显示升级进度。 
与现有技术相比,本发明至少具有以下优点: 
可根据升级前的版本信息和计划升级后的版本信息计算出升级路径,并根据升级路径实现对组件当前版本的升级,避免了依靠维护人员人工推测造成的问题,使升级执行工作简单且有效率,极大地简化了升级步骤,提高了升级效率。 
附图说明
图1是现有技术中系统应用软件的体系架构示意图; 
图2是本发明提供的一种软件升级的系统结构示意图; 
图3是本发明提供的组件依赖关系文件的内容示意图; 
图4是本发明提供的升级路径文件的内容示意图; 
图5是本发明提供的一种软件升级的方法流程图; 
图6是本发明提供的客户端升级工具的示意图; 
图7是本发明提供的客户端执行升级路径计算的示意图; 
图8是本发明提供的记录组件版本和存储位置的对应关系的示意图。 
具体实施方式
下面结合附图对本发明实施例进行详细描述。 
针对现有大型系统应用软件中采用基于SOA实现的体系架构中,在升级软件版本时存在的问题,本发明提供一种软件升级的系统(如一套升级工具),由客户端(Client端)和服务端(Server端)组成。 
其中,Server端可设置于待升级软件所在的设备上(即待升级组件所对应的设备上,如图1所示的各个Component所对应的设备,可以为计算机等),并可根据Client端的指令执行相应动作,该相应动作包括但不限于待升级组件的版本检测、升级文件的获取、执行软件升级、升级进度报告等。另外,Client端可灵活运行在任意的与Server端网络可达的设备(如计算机)上,并可提供升级路径计算、升级软件包管理和升级过程控制等功能。 
需要注意的是,该client端和server端可以分别运行在不同的设备上,也可以同时运行在应用软件(待升级组件的软件)所在的设备上,以提供方便灵活的升级操作。其中,client端和server端运行在相同设备或者不同设备上的处理方式类似,本发明中以client端和server端运行在不同设备上为例进行 说明。 
如图2所示,为本发明提出的一种软件升级的系统,该系统中可以包括但不限于客户端21、服务端22、组件(包括各待升级组件)等;其中: 
客户端21,用于当确定了待升级组件的版本信息时,根据该版本信息确定升级路径,并根据升级路径获取待升级组件对应的组件版本;以及根据升级路径将获取的组件版本发送给服务端22。 
服务端22,用于根据组件版本升级对应的待升级组件。 
本发明中,该客户端21具体包括:路径计算模块211、软件升级模块212、第一通讯模块213和软件管理模块214。其中: 
路径计算模块211,用于当确定了待升级组件的版本信息时,根据该版本信息确定升级路径。其中,该待升级组件的版本信息包括但不限于该待升级组件的当前版本和计划升级版本,该路径计算模块211,具体用于根据该版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据待升级组件的升级顺序确定升级路径。 
本发明中,各待升级组件之间的依赖关系是制约和确定组件升级顺序的关键条件,该依赖关系可以通过XML(eXtensible Markup Language,可扩展标记语言)文件的方式随组件版本发布,如图3所示的一种组件依赖关系文件的内容示意图。另外,升级路径规定了升级执行的顺序,可根据各待升级组件间的依赖关系计算得出,且升级路径也可以通过一个XML文件方式记录在client端所在的设备中,供软件升级时使用,如图4所示的一种升级路径文件的内容示意图。 
基于上述组件依赖关系文件和升级路径文件,本发明中,需要在进行软件升级前,需要明确升级任务,并确定待升级组件的版本信息。例如,应用软件包含Component(1)到Component(n)和PLAT,共n+1个组件,待升级组件有Component(1)、Component(3)、Component(5)和PLAT共4个 组件,各待升级组件(4个组件)的版本信息均为当前版本是V1,计划升级版本是V3。 
之后,根据各待升级组件的版本信息,以及随软件版本发布的组件依赖关系文件,可计算出上述4个组件从版本V1升级到版本V3的升级路径和顺序,并生成升级路径文件。例如,该升级路径可以为PLAT V2->PLAT V3->Component(1)V2->Component(1)V3->Component(3)V2->Component(5)V2->Component(3)V3->Component(5)V3。 
软件管理模块214,用于根据升级路径获取待升级组件对应的组件版本。例如,上述升级路径下,软件管理模块214需要分别获取组件版本PLAT V2、PLAT V3、Component(1)V2、Component(1)V3、Component(3)V2、Component(5)V2、Component(3)V3、Component(5)V3。 
进一步的,当获取到各待升级组件对应的组件版本后,软件管理模块214还可以存储该获取到的组件版本,并记录组件版本和存储位置的对应关系。 
需要注意的是,上述路径计算模块211和软件管理模块214执行的相关操作可为升级前的准备操作,之后,当需要升级待升级组件时,则会由软件升级模块212启动相关升级操作,其中: 
软件升级模块212,用于当需要升级待升级组件时,按照升级路径选择待升级组件对应的组件版本,并指示第一通讯模块213将组件版本发送给服务端。 
具体的,根据软件管理模块214记录的组件版本和存储位置的对应关系,软件升级模块212可按照升级路径从对应的存储位置处选择组件版本,即按照升级路径的顺序依次从对应的存储位置处选择组件版本。例如,上述升级路径下,软件升级模块212先选择组件版本PLAT V2,并指示第一通讯模块213将组件版本PLAT V2发送给服务端22,当待升级组件PLAT的版本V2升级完成(即客户端21接收到升级完成的信息)后,软件升级模块212选择 组件版本PLAT V3,并指示第一通讯模块213将组件版本PLAT V3发送给服务端22,以此类推,软件升级模块212可将升级路径文件所对应的各个组件版本选择出来,并指示第一通讯模块213发送给服务端22,以完成各待升级组件的软件版本升级过程。 
第一通讯模块213,用于将选择的组件版本发送给服务端22。即按照软件升级模块212的指示,依次将软件升级模块212按照升级路径所选择的组件版本发送给服务端22。 
需要说明的是,本发明中,该软件升级模块212还用于通过第一通讯模块213向服务端22发送指示消息,指示该服务端22根据该指示消息检测待升级组件的当前版本信息,并获得来自服务端22的当前版本信息。当根据当前版本信息确定升级路径正确时,则执行将获取的组件版本发送给服务端22的步骤;否则,由路径计算模块211根据当前版本信息重新确定升级路径。例如,升级路径为PLAT V2->PLAT V3->PLAT V4时,如果客户端21获知PLAT的当前版本信息为V2,显然升级路径是不正确的,此时需要根据当前版本信息重新确定升级路径为PLAT V3->PLAT V4。 
本发明中,该服务端22具体包括:第二通讯模块221、升级执行模块222、版本检测模块223和升级进度报告模块224。其中, 
第二通讯模块221,用于接收来自客户端21的组件版本。 
升级执行模块222,用于根据组件版本升级对应的待升级组件。 
另外,第二通讯模块221,还用于接收来自客户端21的指示消息,并将当前版本信息发送给客户端21; 
版本检测模块223,用于根据第二通讯模块221接收的指示消息检测待升级组件的当前版本信息,并由第二通讯模块221将该当前版本信息发送给客户端21。 
本发明中,该升级进度报告模块224,用于将待升级组件的升级进度信息 发送给客户端21,由客户端21(如客户端21的软件升级模块212)根据待升级组件的升级进度信息显示升级进度。 
其中,本发明系统的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。另外,上述各功能模块执行的操作还可由对应的客户端或服务端来实现。 
基于与上述系统同样的发明构思,本发明还提出了一种软件升级的方法,该方法应用于包括客户端、服务端、组件(包括各待升级组件)的系统中,服务端可设置于待升级软件所在的设备上,并可根据客户端的指令执行相应动作(如待升级组件的版本检测、升级文件的获取、执行软件升级、升级进度报告等),客户端可灵活运行在任意的与服务端网络可达的设备上,并可提供升级路径计算、升级软件包管理和升级过程控制等功能。如图5所示,该方法包括以下步骤: 
步骤501,确定待升级组件的版本信息。其中,该待升级组件的版本信息包括但不限于该待升级组件的当前版本和计划升级版本。 
具体的,在对待升级组件进行软件升级前,需要明确升级任务(实际应用中可由系统维护人员执行),并确定待升级组件的版本信息。例如,应用软件包含Component(1)到Component(n)和PLAT,共n+1个组件,待升级组件有Component(1)、Component(3)、Component(5)和PLAT共4个组件,各待升级组件(4个组件)的版本信息均为当前版本是V1,计划升级版本是V3。 
步骤502,启动客户端升级工具。实际应用中可由系统维护人员在自己的便携机上启动客户端升级工具,如图6所示的客户端升级工具的示意图。 
步骤503,客户端根据待升级组件的版本信息确定升级路径。其中,该客户端可根据该版本信息和各待升级组件之间的依赖关系确定待升级组件的升 级顺序,并根据待升级组件的升级顺序确定所述升级路径。 
本发明中,根据组件依赖关系文件(即随软件版本发布的规定组件间依赖关系的配置文件)和各待升级组件的版本信息,可计算出升级路径和顺序,并生成升级路径文件。例如,可计算出上述4个组件从版本V1升级到版本V3的升级路径和顺序,如图7所示的客户端执行升级路径计算的示意图。 
步骤504,客户端根据该升级路径获取待升级组件对应的组件版本。 
优选的,当获取到组件版本后,客户端还可存储该获取到的组件版本,并记录组件版本和存储位置的对应关系,如图8所示的记录组件版本和存储位置的对应关系的示意图。之后,在需要根据升级路径将获取的组件版本发送给服务端时,可直接根据组件版本和存储位置的对应关系从对应的存储位置处获得组件版本并进行发送。例如,可执行【软件管理】,完成记录组件版本和存储位置的对应关系的功能,并追加组件版本存储位置信息到升级路径文件中。 
步骤505,客户端根据该升级路径将获取的组件版本发送给服务端。即按照升级路径的顺序依次将各组件版本发送给服务端。 
优选的,本步骤之前,该客户端还可以向服务端发送指示消息,指示该服务端根据该指示消息检测待升级组件的当前版本信息;当服务端接收到该指示消息后,则会检测待升级组件的当前版本信息,并将当前版本信息发送给客户端。之后,客户端接收来自服务端的当前版本信息,当根据当前版本信息确定升级路径正确时,则执行将获取的组件版本发送给服务端的步骤;否则,根据当前版本信息重新确定升级路径。 
步骤506,服务端根据该组件版本升级对应的待升级组件。其中,服务端每接收到一个组件版本,则会升级对应的待升级组件的当前版本,由于各组件版本的发送顺序是按照升级路径发送的,则服务端升级待升级组件的当前版本时,可满足组件之间的依赖关系。另外,每个组件版本升级完成后,服 务端还需要向客户端发送确认信息,当接收到确认信息后,客户端将按照升级路径发送下一个组件版本,以此类推,从而完成各个组件版本的升级工作。 
优选的,在服务端升级待升级组件的当前版本的过程中,服务端还可以将待升级组件的升级进度信息发送给客户端,由客户端根据待升级组件的升级进度信息显示升级进度。 
综上所述,本发明中,可以使升级准备工作完备且有条理,只需要知道升级前的版本和计划升级后的版本信息,即可通过路径计算工具计算出升级路径和所需组件及具体版本信息,避免了依靠维护人员人工推测造成遗漏的问题。 
本发明中,还可以将客户端部署在用户的便携机上,此时系统维护人员可根据升级路径拷贝所需的组件版本到该便携机上,在进行应用软件的升级工作时,直接将便携机接入应用软件所在网络中,并在应用软件所在设备上安装和运行server端升级工具,在维护人员便携机上运行client端升级工具,从而可以完成升级操作。 
因此,本发明还使升级执行工作简单且有效率,在升级前执行工具计算出升级路径,并获取相应的软件包,当需要进行升级时,只需要将自身的便携机接入应用软件设备所在的网络中,点击升级按钮即可一键完成所有待升级组件的升级操作,避免了每升级一个组件都要拷贝相应的软件包到设备上,再手工执行一次升级操作的繁琐,极大地简化了升级步骤,提高了升级效率。 
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服 务器,或者网络设备等)执行本发明各个实施例所述的方法。 
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。 
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。 
上述本发明序号仅仅为了描述,不代表实施例的优劣。 
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。 

Claims (11)

1.一种软件升级的方法,其特征在于,该方法包括以下步骤:
当确定了待升级组件的版本信息时,客户端根据所述版本信息确定升级路径,并根据所述升级路径获取待升级组件对应的组件版本;
所述客户端根据所述升级路径将获取的组件版本发送给服务端;由所述服务端根据所述组件版本升级对应的待升级组件;
其中,所述客户端根据所述版本信息确定升级路径,具体包括:
所述客户端根据所述待升级组件的各版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据所述待升级组件各版本的升级顺序确定所述升级路径;
所述依赖关系通过可扩展标记语言XML文件随所述待升级组件版本发布,所述升级路径通过所述XML文件记录于所述客户端中。
2.如权利要求1所述的方法,其特征在于,根据所述升级路径获取待升级组件对应的组件版本,之后还包括:所述客户端存储所述组件版本,并记录所述组件版本和存储位置的对应关系;
在将所述组件版本发送给服务端时,所述客户端根据所述组件版本和存储位置的对应关系从对应的存储位置处获得组件版本,并将所述组件版本发送给所述服务端。
3.如权利要求1所述的方法,其特征在于,所述客户端根据所述升级路径将获取的组件版本发送给服务端,之前还包括:
所述客户端向所述服务端发送指示消息;所述服务端根据所述指示消息检测待升级组件的当前版本信息,并将所述当前版本信息发送给所述客户端;
所述客户端根据所述当前版本信息确定所述升级路径是否正确;如果是,则执行将获取的组件版本发送给所述服务端的步骤;否则,所述客户端根据所述当前版本信息重新确定升级路径。
4.如权利要求1所述的方法,其特征在于,所述服务端根据所述组件版本升级对应的待升级组件,之后还包括:
所述服务端将待升级组件的升级进度信息发送给所述客户端,由所述客户端根据待升级组件的升级进度信息显示升级进度。
5.一种软件升级的系统,其特征在于,包括:
客户端,用于当确定了待升级组件的版本信息时,根据所述版本信息确定升级路径,并根据所述升级路径获取待升级组件对应的组件版本;以及根据所述升级路径将获取的组件版本发送给服务端;
服务端,用于根据所述组件版本升级对应的待升级组件;
其中,所述路径计算模块,具体用于根据所述待升级组件的各版本信息和各待升级组件之间的依赖关系确定待升级组件的升级顺序,并根据所述待升级组件各版本的升级顺序确定所述升级路径;
所述依赖关系通过可扩展标记语言XML文件随所述待升级组件版本发布,所述升级路径通过所述XML文件记录于所述客户端中。
6.如权利要求5所述的系统,其特征在于,所述客户端包括:
路径计算模块,用于根据所述版本信息确定升级路径;
软件管理模块,用于根据所述升级路径获取待升级组件对应的组件版本;
软件升级模块,用于当需要升级待升级组件时,按照所述升级路径选择待升级组件对应的组件版本,并指示第一通讯模块将组件版本发送给所述服务端;
第一通讯模块,用于将选择的组件版本发送给所述服务端。
7.如权利要求6所述的系统,其特征在于,
所述软件管理模块,还用于存储所述组件版本,并记录所述组件版本和存储位置的对应关系;
所述软件升级模块,具体用于按照所述升级路径以及所述组件版本和存储位置的对应关系从对应的存储位置处选择组件版本。
8.如权利要求6所述的系统,其特征在于,
所述软件升级模块,还用于通过所述第一通讯模块向所述服务端发送指示消息,指示所述服务端根据所述指示消息检测待升级组件的当前版本信息;并获得来自所述服务端的所述当前版本信息;
当根据所述当前版本信息确定所述升级路径正确时,则执行将获取的组件版本发送给所述服务端的步骤;否则,由所述路径计算模块根据所述当前版本信息重新确定升级路径。
9.如权利要求5所述的系统,其特征在于,所述服务端包括:
第二通讯模块,用于接收来自所述客户端的组件版本;
升级执行模块,用于根据所述组件版本升级对应的待升级组件。
10.如权利要求9所述的系统,其特征在于,所述服务端还包括版本检测模块;
所述第二通讯模块,还用于接收来自所述客户端的指示消息,并将当前版本信息发送给所述客户端;
所述版本检测模块,用于根据所述指示消息检测待升级组件的当前版本信息,并由所述第二通讯模块将当前版本信息发送给所述客户端。
11.如权利要求9所述的系统,其特征在于,所述服务端还包括升级进度报告模块;
所述升级进度报告模块,用于将待升级组件的升级进度信息发送给所述客户端,由所述客户端根据待升级组件的升级进度信息显示升级进度。
CN2010105719963A 2010-12-03 2010-12-03 一种软件升级的方法和系统 Active CN102006332B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2010105719963A CN102006332B (zh) 2010-12-03 2010-12-03 一种软件升级的方法和系统
PCT/CN2011/083363 WO2012072039A1 (en) 2010-12-03 2011-12-02 Software upgrade method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105719963A CN102006332B (zh) 2010-12-03 2010-12-03 一种软件升级的方法和系统

Publications (2)

Publication Number Publication Date
CN102006332A CN102006332A (zh) 2011-04-06
CN102006332B true CN102006332B (zh) 2013-12-11

Family

ID=43813401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105719963A Active CN102006332B (zh) 2010-12-03 2010-12-03 一种软件升级的方法和系统

Country Status (2)

Country Link
CN (1) CN102006332B (zh)
WO (1) WO2012072039A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006332B (zh) * 2010-12-03 2013-12-11 杭州华三通信技术有限公司 一种软件升级的方法和系统
CN102281160A (zh) * 2011-09-15 2011-12-14 苏州阔地网络科技有限公司 一种功能自动升级的方法、系统及服务器
CN102650947B (zh) * 2012-04-01 2015-06-24 广东欧珀移动通信有限公司 一种Android手持设备连续增量的空中升级方法
GB2508599A (en) 2012-12-04 2014-06-11 Ibm Software version management when downgrading software
KR101782457B1 (ko) 2013-08-13 2017-09-28 후아웨이 테크놀러지 컴퍼니 리미티드 어플리케이션 업그레이드 방법 및 장치
CN105302586A (zh) * 2014-06-24 2016-02-03 中兴通讯股份有限公司 软件升级处理方法、装置、终端及服务器
CN105187262A (zh) * 2015-10-27 2015-12-23 上海斐讯数据通信技术有限公司 一种路由器升级方法及系统
CN105278993B (zh) * 2015-10-27 2018-10-19 深圳市创维软件有限公司 一种基于Linux系统的驱动模块升级方法及装置
CN107463390B (zh) * 2016-06-02 2020-12-01 阿里巴巴集团控股有限公司 一种软件升级方法及升级服务器
CN106126285A (zh) * 2016-06-22 2016-11-16 天维尔信息科技股份有限公司 一种软件升级方法及终端
CN106648802A (zh) * 2016-12-30 2017-05-10 上海浦东软件园汇智软件发展有限公司 一种组件更新的方法及设备
CN108111330A (zh) * 2017-11-06 2018-06-01 北京趣拿软件科技有限公司 更新数据包的获取、应用程序组件的更新方法及装置
CN108153547A (zh) * 2017-12-26 2018-06-12 泰康保险集团股份有限公司 微服务的版本管理方法、装置、介质及电子设备
CN110780894B (zh) * 2018-07-31 2023-04-28 阿里巴巴集团控股有限公司 热升级处理方法、装置及电子设备
CN110162322A (zh) 2019-05-27 2019-08-23 网宿科技股份有限公司 一种升级方法及装置
CN112422305B (zh) * 2019-08-21 2023-08-01 南京中兴新软件有限责任公司 通信设备的升级方法及装置
CN111158738B (zh) * 2019-12-30 2023-10-24 青岛歌尔智能传感器有限公司 耳机固件的升级方法、装置及可读存储介质
CN116820525B (zh) * 2023-08-24 2024-01-26 新华三技术有限公司 组件升级方法、装置、电子设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060427A (zh) * 2006-04-19 2007-10-24 华为技术有限公司 实现远程软件升级的系统及方法
CN101533356A (zh) * 2009-04-21 2009-09-16 华为技术有限公司 一种实现软件在线升级的方法、装置及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100501673C (zh) * 2006-12-31 2009-06-17 成都迈普产业集团有限公司 一种安装软件安装包的方法
CN102006332B (zh) * 2010-12-03 2013-12-11 杭州华三通信技术有限公司 一种软件升级的方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060427A (zh) * 2006-04-19 2007-10-24 华为技术有限公司 实现远程软件升级的系统及方法
CN101533356A (zh) * 2009-04-21 2009-09-16 华为技术有限公司 一种实现软件在线升级的方法、装置及系统

Also Published As

Publication number Publication date
WO2012072039A1 (en) 2012-06-07
CN102006332A (zh) 2011-04-06

Similar Documents

Publication Publication Date Title
CN102006332B (zh) 一种软件升级的方法和系统
CN110752947B (zh) 一种k8s集群部署方法及装置,一种部署平台
US9602599B2 (en) Coordinating application migration processes
US20130031542A1 (en) Method and system for distributed application stack deployment
CN110096424B (zh) 测试的处理方法、装置、电子设备及存储介质
US20090320019A1 (en) Multi-scenerio software deployment
US9585033B2 (en) System and method for enhanced diagnostics on mobile communication devices
US10817819B2 (en) Workflow compilation
KR101816589B1 (ko) 서비스형 소프트웨어 목록 갱신 방법 및 이를 위한 시스템
CN107832207A (zh) 接口性能测试方法、装置、存储介质和计算机设备
CN112860277B (zh) 软件部署方法、装置以及计算机可读存储介质
CN105446868A (zh) 系统兼容性测试方法、测试用例管理方法及相关装置
US9674059B2 (en) Monitoring of availability data for system management environments
CN107491321A (zh) 一种用于实现软件自动更新的处理方法及装置
CN114297056A (zh) 一种自动化测试方法及系统
CN108052336A (zh) 一种分布式软件升级系统及其实现方法
CN110750266A (zh) 程序编译方法、装置、计算机设备及存储介质
CN114760180A (zh) 一种网络设备的巡检方法、装置、设备和存储介质
CN104461595A (zh) 应用软件升级回滚方法、装置及电子设备
US9207928B2 (en) Computer-readable medium, apparatus, and methods of automatic capability installation
US8402125B2 (en) Method of managing operations for administration, maintenance and operational upkeep, management entity and corresponding computer program product
CN110674024A (zh) 电子设备集成测试系统及其方法
CN112559124A (zh) 一种模型管理系统以及目标操作指令的处理方法和装置
US20090300617A1 (en) System and method of generating and managing computing tasks
CN104111862A (zh) 云计算平台中获取虚拟机ip地址方法与系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.