CN106843969B - 一种在持续服务中更新软件的方法及系统 - Google Patents

一种在持续服务中更新软件的方法及系统 Download PDF

Info

Publication number
CN106843969B
CN106843969B CN201710050031.1A CN201710050031A CN106843969B CN 106843969 B CN106843969 B CN 106843969B CN 201710050031 A CN201710050031 A CN 201710050031A CN 106843969 B CN106843969 B CN 106843969B
Authority
CN
China
Prior art keywords
module
new
new module
updating
software
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
CN201710050031.1A
Other languages
English (en)
Other versions
CN106843969A (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 Jing Hai Technology Co Ltd
Original Assignee
Beijing Jing Hai 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 Jing Hai Technology Co Ltd filed Critical Beijing Jing Hai Technology Co Ltd
Priority to CN201710050031.1A priority Critical patent/CN106843969B/zh
Publication of CN106843969A publication Critical patent/CN106843969A/zh
Application granted granted Critical
Publication of CN106843969B publication Critical patent/CN106843969B/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
    • G06F8/656Updates while running

Landscapes

  • Engineering & Computer Science (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

一种在持续服务中更新软件的方法及系统
技术领域
本发明涉及电子设备、装置功能软件升级,具体涉及一种在持续服务中更新软件的方法及系统。
背景技术
其中:电子设备、装置功能软件升级的现行方法是:设备工作期间自动/人工检测是否存在新版;如果存在就提醒用户升级,甚至个别设备、装置不给用户选择是否升级的机会;中止当前的设备功能,下载新版软件并更新;更新新版软件后重启软件或者重启系统。现行方法存在两个严重缺点:(1)升级期间设备无法工作;(2)更新过程如果出现意外停电可能造成设备损坏。
目前可以提供不中断服务升级软件系统的有网络服务器的软件系统。
发明内容
针对现有技术中的不足,本发明的目的是提供一种在持续服务中更新软件的方法及系统,在保持不间断服务前提下对设备功能进行功能升级。
本发明的目的是采用下述技术方案实现的:
本发明提供一种在持续服务中更新软件的方法,其改进之处在于,所述方法包括下述步骤:
(1)客户端的主模块检查网络服务器中模块并进行更新;
(2)本地设备或者本地网络中进行模块的调度与执行。
进一步地,所述步骤(1)包括下述步骤:
1)客户端的主模块对网络服务器检查更新;
2)客户端的主模块检查网络服务器中是否存在新模块;
3)若存在新模块,要按照客户端自身设备信息与网络服务器中新模块进行适用性分析,确认新模块适用本设备后将新模块下载到本地设备或者本地网络中。
进一步地,所述步骤2)中,若不存在更新模块,则完成对全部本地模块的检查与更新。
进一步地,所述步骤3)中,下载新模块时,要不影响旧模块运行;当下载完成后,检查完整性,并进行标志。
进一步地,当对完整性进行标志后,完成对全部本地模块的检查与更新。
进一步地,所述步骤(2)包括下述步骤:
A、客户端的主模块检查模块更新状态,若有更新则进行步骤B;否则进行步骤D;
B、停用旧模块,启动新模块;
C、对新模块进行功能测试;
D、应用新模块功能,完成模块的更新与应用。
进一步地,所述步骤C中,如果启动新模块或者对新模块进行功能测试没有通过,则自动回退到旧模块,并向网络服务器进行反馈汇报;
如果新模块启动并通过测试则修改设备配置信息列表,确保本地设备或本地网络在后继工作中和用户重启后能够使用最新的模块。
本发明还提供一种在持续服务中更新软件的系统,包括网络服务器端和客户端,其改进之处在于,所述网络服务器端用于提供完整的、可历史检索的功能模块列表信息,提供每个新模块的下载服务,提供旧模块和新模块后台管理功能;
所述客户端软件采用模块化分体设计方式,每个模块独立成一个单独的文件,模块包括主模块,用于实现模块管理与网络服务器通讯的基本功能,每次软件启动时主模块按照设备配置信息动态启动存储于本地设备或者本地网络的其他模块。
进一步地,所述后台管理功能包括分类管理、模块管理和反馈管理。
进一步地,新模块和旧模块之间切换的时间为0~1微秒之间。
与最接近的现有技术相比,本发明提供的技术方案达到的有益效果是:
本发明提供一种电子设备、装置功能软件升级的在持续服务中更新软件的方法及系统,尤其是在保持不间断服务前提下对设备功能进行功能升级。通过特定软件方法可以在确保电子设备、装置不中断服务的前提下,实现自动、按需升级软件功能,并确保不会由于升级造成设备故障,提供按需后退软件版本等能力。在持续服务中实现功能软件的更新,确保了用户体验不受打扰且能够享受最新的服务,可以明显提升电子设备、装置的用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是客户端的主模块检查网络服务器中模块并进行更新的流程图;
图2是本地设备或者本地网络中进行模块的调度与执行的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
第一优选技术方案
将软件按照基本功能拆分成多个组成模块,其中核心模块负责管理软件系统启动与关闭其他模块、管理设备文件接口、管理模块间数据交换,其他模块仅只完成软件的各个独立功能。
核心模块启动软件后依照一定规律联网检查是否存在模块更新文件,如果存在则比较当前系统中的模块和网络升级模块的适用性,检查是否符合本系统,如果符合则自动下载新模块到特定位置。
核心模块完成下载新模块后,对新模块进行特定的检验,确保文件安全性,然后在不影响服务的工作间隙停用旧模块,启用新模块,对新模块进行功能验证,验证无误则变更系统配置,如果存在问题则换回到旧模块并向服务器报告新模块故障。
由于新模块和旧模块之间切换在不到一个微秒之间,通过对软件的合理设计,可以做到不影响设备工作,从而提供可持续不间断服务。
当主模块检测到网络服务器中存在新模块时,首先要按照自身设备信息与服务器中新模块进行适用性分析,确认新模块适用本设备后将新模块下载到本地设备或者本地网络中;其次,选择恰当的时间点,停用旧模块启用新模块,并对新模块进行功能测试,如果启动新模块失败或者或者对新模块进行功能测试没有通过,则自动回退到旧模块,并向服务器进行反馈汇报;最后,如果新模块启动并通过测试则修改设备配置信息,确保设备在用户重启后能够使用最新的模块。
具体包括下述步骤:
(1)客户端的主模块检查网络服务器中模块并进行更新,其流程图如图1所示,包括下述步骤:
1)客户端的主模块对网络服务器检查更新;
2)客户端的主模块检查网络服务器中是否存在新模块;
3)若存在新模块,要按照客户端自身设备信息与网络服务器中新模块进行适用性分析,确认新模块适用本设备后将新模块下载到本地设备或者本地网络中。
上述优选技术方案中,所述步骤2)中,若不存在更新模块,则完成对全部本地模块的检查与更新。
上述优选技术方案中,所述步骤3)中,下载新模块时,要不影响旧模块运行;当下载完成后,检查完整性,并进行标志。
上述优选技术方案中,当对完整性进行标志后,完成对全部本地模块的检查与更新。
(2)本地设备或者本地网络中进行模块的调度与执行,其流程图如图如图2所示,包括下述步骤:
A、客户端的主模块检查模块更新状态,若有更新则进行步骤B;否则进行步骤D;
B、停用旧模块,启动新模块;
C、对新模块进行功能测试;
D、应用新模块功能,完成模块的更新与应用。
上述优选技术方案中,所述步骤C中,如果启动新模块或者对新模块进行功能测试没有通过,则自动回退到旧模块,并向网络服务器进行反馈汇报;
如果新模块启动并通过测试则修改设备配置信息列表,确保本地设备或本地网络在后继工作中和用户重启后能够使用最新的模块。
第二优选技术方案
本发明还提供一种在持续服务中更新软件的系统,包括网络服务器端和客户端,所述网络服务器端用于提供完整的、可历史检索的功能模块列表信息,提供每个新模块的下载服务,提供旧模块和新模块后台管理功能;
所述客户端软件采用模块化分体设计方式,每个模块独立成一个单独的文件,模块包括主模块,用于实现模块管理与网络服务器通讯的基本功能,每次软件启动时主模块按照设备配置信息动态启动存储于本地设备或者本地网络的其他模块。
其中:网络服务存放模块服务列表如下表1所示:
表1网络服务存放模块服务列表
模块名称 版本序列 文件大小 发布时间 ......
其中:本地服务存放模块列表如下表2所示:
表2本地服务存放模块列表
模块名称 版本序列 运行状态 运行时间 是否更新 ......
上述优选技术方案中,所述后台管理功能包括分类管理、模块管理和反馈管理。
第三优选技术方案
对于电子设备的任何一个功能模块,当时间单位微分到毫秒、微妙级别时,它的工作大多是断断续续的。对于这些功能模块的软件更新,由于模块的更新处于功能应用时间间隙中,因此既不会影响模块的应用效果,同时还完成了系统逐一模块升级更新保持了最新应用功能的实现。对于某些确实保持连续工作的模块,工作本身也总是被分成一个个更具体的子工作,在这些工作间隙,只要程序设计遵循一个原则,把工作本身的场景可以完整地保存并恢复的话,在子工作的间隙之间完成功能模块的更新,同样可以起到保持应用服务不间断的同时,实现软件功能的升级。
应用场景举例1:广电网电视机顶盒应用很普及,现有应用升级模式下,机顶盒检测到升级信息后,电视节目会暂停播放,机顶盒下载新版软件,然后在用户确认后重启软件,如果遇到升级失败还会反复进行升级,严重影响电视节目收视体验。换成本发明升级模式后,用户可以继续看电视,后台自动下载最新模块,下载完成后做好标志,用户如果正在看节目则可以升级机顶盒管理模块,在用户切换频道的间隙可以升级收视模块……。采用本发明升级模式的电子产品完全不影响用户的使用体验。
应用场景举例2:某城市地铁电气化系统的配件厂商/某电厂的生产监控设备配件厂商针对产品发布了新版驱动控制软件,提高了20%的精确性与响应速度。由于地铁系统/电厂生产系统是无法中断工作的系统,所以在很长的时间里它们的系统没有能够享受到新版软件带来的性能改进,直到地铁系统大检修/电厂停机检修期间才完成了软件升级。如果它们的控制系统采用本发明的升级技术,那么在任何一个零部件的工作间隙都可以顺利完成升级,并且对个别零部件升级后工作状态不正常的部件完成了软件版本回退的操作,确保了系统整体的稳定性与先进性。
本发明涉及电子设备、装置功能软件升级,尤其是在保持不间断服务前提下对设备功能进行功能升级。通过特定软件方法可以在确保电子设备、装置不中断服务的前提下,实现自动、按需升级软件功能,并确保不会由于升级造成设备故障,提供按需后退软件版本等能力。在持续服务中实现功能软件的更新,确保了用户体验不受打扰且能够享受最新的服务。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (7)

1.一种在持续服务中更新软件的方法,其特征在于,所述方法包括下述步骤:
(1)客户端的主模块检查网络服务器中模块并进行更新,其中,所述更新过程处于模块功能应用时间间隙中,或,所述更新过程处于子工作的间隙中;
(2)在本地设备或者本地网络中进行模块的调度与执行,所述步骤(2)包括:
A、客户端的主模块检查模块更新状态,若有更新则进行步骤B;否则进行步骤D;
B、停用旧模块,启动新模块;
C、对新模块进行功能测试;所述步骤C中,如果启动新模块或者对新模块进行功能测试没有通过,则自动回退到旧模块,并向网络服务器进行反馈汇报;
D、应用新模块功能,完成模块的更新与应用。
2.如权利要求1所述的在持续服务中更新软件的方法,其特征在于,所述步骤(1)包括下述步骤:
1)客户端的主模块对网络服务器检查更新;
2)客户端的主模块检查网络服务器中是否存在新模块;
3)若存在新模块,要按照客户端自身设备信息与网络服务器中新模块进行适用性分析,确认新模块适用本设备后将新模块下载到本地设备或者本地网络中。
3.如权利要求2所述的在持续服务中更新软件的方法,其特征在于,所述步骤2)中,若不存在更新模块,则完成对全部本地模块的检查与更新。
4.如权利要求2所述的在持续服务中更新软件的方法,其特征在于,所述步骤3)中,下载新模块时,要不影响旧模块运行;当下载完成后,检查完整性,并进行标志。
5.如权利要求4所述的在持续服务中更新软件的方法,其特征在于,当对完整性进行标志后,完成对全部本地模块的检查与更新。
6.一种在持续服务中更新软件的系统,包括网络服务器端和客户端,其特征在于,所述网络服务器端用于提供完整的、可历史检索的功能模块列表信息,提供每个新模块的下载服务,提供旧模块和新模块后台管理功能;
所述客户端软件采用模块化分体设计方式,每个模块独立成一个单独的文件,模块包括主模块,用于实现模块管理与网络服务器通讯的基本功能,每次软件启动时主模块按照设备配置信息动态启动存储于本地设备或者本地网络的其他模块;
其中,新模块和旧模块之间切换的时间为0~1微秒,软件更新过程处于模块功能应用时间间隙中,所述应用时间间隙为所述新模块和旧模块之间的切换的时间;或,所述更新过程处于子工作的间隙中。
7.如权利要求6所述的在持续服务中更新软件的系统,其特征在于,所述后台管理功能包括分类管理、模块管理和反馈管理。
CN201710050031.1A 2017-01-23 2017-01-23 一种在持续服务中更新软件的方法及系统 Active CN106843969B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710050031.1A CN106843969B (zh) 2017-01-23 2017-01-23 一种在持续服务中更新软件的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710050031.1A CN106843969B (zh) 2017-01-23 2017-01-23 一种在持续服务中更新软件的方法及系统

Publications (2)

Publication Number Publication Date
CN106843969A CN106843969A (zh) 2017-06-13
CN106843969B true CN106843969B (zh) 2020-01-17

Family

ID=59120233

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710050031.1A Active CN106843969B (zh) 2017-01-23 2017-01-23 一种在持续服务中更新软件的方法及系统

Country Status (1)

Country Link
CN (1) CN106843969B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108646991A (zh) * 2018-05-09 2018-10-12 安徽天斯努信息技术股份有限公司 一种云打印云服务器管理系统
CN109032100B (zh) * 2018-09-21 2019-11-29 北京广利核系统工程有限公司 一种鉴定核电厂安全级仪控系统设备适用性的方法
CN112995767A (zh) * 2019-12-02 2021-06-18 中兴通讯股份有限公司 机顶盒升级控制方法、机顶盒及计算机可读存储介质
CN115086172B (zh) * 2022-07-25 2022-11-15 广东壹公里数智科技有限公司 一种数据网关插件更新方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770375A (zh) * 2008-12-26 2010-07-07 新奥特(北京)视频技术有限公司 一种软件自动升级的实现方法、系统和装置
CN105468393A (zh) * 2014-09-10 2016-04-06 启碁科技股份有限公司 模块版本升级方法及终端装置
CN105843673A (zh) * 2016-03-14 2016-08-10 南京大学 一种基于标签的分布式系统构件动态更新方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770375A (zh) * 2008-12-26 2010-07-07 新奥特(北京)视频技术有限公司 一种软件自动升级的实现方法、系统和装置
CN105468393A (zh) * 2014-09-10 2016-04-06 启碁科技股份有限公司 模块版本升级方法及终端装置
CN105843673A (zh) * 2016-03-14 2016-08-10 南京大学 一种基于标签的分布式系统构件动态更新方法

Also Published As

Publication number Publication date
CN106843969A (zh) 2017-06-13

Similar Documents

Publication Publication Date Title
CN106843969B (zh) 一种在持续服务中更新软件的方法及系统
CN102609281B (zh) 分布式软件补丁更新方法及系统
CN105468414B (zh) 一种智能终端升级方法及系统
CN101841536B (zh) 数字监控设备远程自动升级方法
CN106557347B (zh) 软件更新方法及装置
US20120159142A1 (en) System and method for firmware update for network connected storage subsystem components
CN105763369A (zh) 一种终端设备远程软件版本分发方法及系统
CN110597914A (zh) 数据传输系统、方法、装置及设备
DE19836347A1 (de) Fehlertolerantes Computersystem
CN105808274A (zh) 软件升级方法、系统及对应的客户端与服务器
CN103699420A (zh) 系统恢复方法和系统恢复装置
CN101043318B (zh) 前后台数据同步的方法及用于前后台数据同步的装置
CN101267344B (zh) 一种网元单板软件的升级方法及装置
CN102387208A (zh) 分布式任务调度方法及任务调度系统
WO2010054396A4 (en) Method and apparatus for managing software downloads in a broadcast communication system
CN105468500A (zh) 定时任务监控方法和装置
CN105426213A (zh) 软件更新方法和系统
CN102497498B (zh) 一种广播电视播出控制方法、装置及系统
CN101094310A (zh) 一种改变多个当前服务中应用状态的方法、应用及装置
CN103336698A (zh) 一种wifi设备软件升级的方法及wifi设备和系统
CN103686300A (zh) 业务指南的同步方法及系统
CN107786650A (zh) 一种存储介质和管理策略的同步方法、装置及系统
CN108965945B (zh) 多媒体信息发布方法及装置、存储介质
CN109391982A (zh) 信息包生成方法及编排管理方法、网元及存储介质
CN103780433B (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