CN115202680A - 在线远程自动升级本地客户端的系统及方法 - Google Patents

在线远程自动升级本地客户端的系统及方法 Download PDF

Info

Publication number
CN115202680A
CN115202680A CN202210164498.XA CN202210164498A CN115202680A CN 115202680 A CN115202680 A CN 115202680A CN 202210164498 A CN202210164498 A CN 202210164498A CN 115202680 A CN115202680 A CN 115202680A
Authority
CN
China
Prior art keywords
upgrading
upgrade
client
line
program
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
CN202210164498.XA
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.)
Green City Technology Industry Service Group Co ltd
Original Assignee
Green City Technology Industry Service Group 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 Green City Technology Industry Service Group Co ltd filed Critical Green City Technology Industry Service Group Co ltd
Priority to CN202210164498.XA priority Critical patent/CN115202680A/zh
Publication of CN115202680A publication Critical patent/CN115202680A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]

Landscapes

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

Abstract

本发明提供一种在线远程自动升级本地客户端的系统及方法,涉及数字计算机技术领域,通过线上管理和维护线下更新需要的文件资源甚至脚本,以及线下客户端的版本和状态,在只要保证线下网络通畅的情况下,可选择性的对某个客户端进行远程升级。以vpn的方式可以连接任意一个线下客户端所在的内网环境;以资源服务器的搭建,方便程序升级时候的进行资源下载;以线上发送命令为触发点,可选择性的升级任意一个线下客户端。本发明原理简单,配置灵活,对原有系统的侵入性、耦合性小,后期的维护、升级和扩展都很方便,整体的实现成本很低,特别适用于需要控制研发成本的中小型企业,大大降低了人力维护线下设备以及程序的成本和复杂度。

Description

在线远程自动升级本地客户端的系统及方法
技术领域
本发明涉及数字计算机技术领域,特别涉及一种在线远程自动升级本地客户端的系统及方法。
背景技术
随着物联网体系化和信息化的发展,越来越多的企业选择使用软硬件结合线上线下一体化的服务模式。随着系统的升级和版本的迭代,对于开发和维护人员来说,线下硬件设备的软件程序的升级是一个麻烦的问题。
目前的情况下,都是为了避免硬件的程序的升级,而从线上的操控端软件方面做兼容,这样修改操作既方便,又减轻线下人员的维护成本。但是这样的做法也仍然又一些弊端:(1)随着时间的推移,版本的迭代,线上的程序会做越来越多的代码逻辑兼容,逻辑没有分离,会使后续线上的维护难度越来越大,一旦出问题将会是全局性的,留下安全隐患。(2)当进行大面积投入使用时,后续一旦出现了不得不需要对设备进行升级的时候,将会造成一个耗时长、影响广的局面,这也是服务方不愿意看到的。(3)毕竟有些服务是纯线下的设备和程序单独运行的,并不受线上反控,这样就只能由实施人员到达现场进行维护升级或者使用远程软件对现场电脑逐个远程操作,维护工作量很大。
基于此,做出本申请。
发明内容
为了解决现有技术中存在的上述缺陷,本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的第一方面提出一种在线远程自动升级本地客户端的系统,配置灵活,后期的维护、升级和扩展方便,可降低人力维护线下设备以及程序的成本和复杂度。
具体方案如下:
一种在线远程自动升级本地客户端的系统,包括至少一线上管理端、至少一线下客户端和至少一vpn网络;其中
所述线上管理端包括
升级资源服务器,内置升级相关资源供线下客户端升级时使用;
升级管理和维护模块,用于管理和监控线下客户端的版本和状态,并选择选择需要升级的客户端和需要升级到的版本;
升级命令发送模块,用于向线下客户端发送升级命令;
所述线下客户端包括升级模块,用于根据升级命令进行自动升级;
所述vpn网络,用于线下客户端与线上管理端之间的数据通讯(升级程序的命令发送以及线下资源的访问配置)。
所述升级相关资源包括对应版本的程序背包、相关数据库的脚本和对应的配置文件升级脚本;所述升级相关资源还包括程序运行状态检测脚本。
结合第一方面,本发明提供了一种优选方案,所述线下客户端的升级模块具体包括
下载子模块,用于根据选择的需要升级到的版本,访问所述升级资源服务器,下载升级所需资源文件;
备份及停止子模块,用于备份及停止正在运行的程序以及相关资源;
升级子模块,用于根据下载的资源文件,按照升级指定顺序进行程序升级和文件替换;
启动子模块,用于启动升级完毕之后的程序;
检测子模块,用于检测程序是否启动成功;在未启动成功时,根据备份及停止子模块中备份的文件进行回滚操作,然后向线上管理端反馈升级失败的结果;在启动成功时,向线上管理端反馈升级成功的结果,升级结束。
为了达到上述目的,本发明第二方面提出一种在线远程自动升级本地客户端的升级方法,基于至少一线上管理端、至少一线下客户端和至少一vpn网络;所述方法包括
通过线上管理端进行
升级资源服务,设置升级相关资源供线下客户端升级时使用;
升级管理和维护,管理和监控线下客户端的版本和状态,并选择选择需要升级的客户端和需要升级到的版本;
升级命令发送,向线下客户端发送升级命令;
通过线下客户端进行升级,根据升级命令进行自动升级;
通过vpn网络,实现线下客户端与线上管理端之间的数据通讯。
与现有技术相比,本发明能实现如下有益技术效果:
本发明涉及一种基于线上管理线下,在线远程自动升级本地客户端系统的方案,通过线上管理和维护线下更新需要的文件资源甚至脚本,以及线下客户端的版本和状态,在只要保证线下网络通畅的情况下,可选择性的对某个客户端进行远程升级。以vpn的方式可以连接任意一个线下客户端所在的内网环境;资源服务器的搭建,方便程序升级时候的进行资源下载;以线上发送命令为触发点,可选择性的升级任意一个线下客户端。
本发明原理简单,配置灵活,对原有系统的侵入性、耦合性小,后期的维护、升级和扩展都很方便,整体的实现成本很低,特别适用于需要控制研发成本的中小型企业,大大降低了人力维护线下设备以及程序的成本和复杂度。
附图说明
图1为本实施例在线远程自动升级本地客户端的系统的模块图;
图2为本实施例在线远程自动升级本地客户端的方法流程图。
具体实施方式
为了更好的理解上述技术方案,本发明提供了一个示例性实施例,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
请参阅图1,以停车场系统为例,停车场系统需要本地化部署实现软硬件结合,在初始化部署时,安装好vpn客户端,并将升级脚本和程序运行状态检测脚本放置在服务器中,状态检测脚本可将程序的运行状态上报给线上的服务平台端。本实施例的一种在线远程自动升级本地客户端的系统,包括一线上管理端、多个线下客户端和一vpn网络;
其中线上管理端包括升级资源服务器,内置升级相关资源(包括对应版本的程序背包、相关数据库的脚本和对应的配置文件升级脚本;升级相关资源还包括程序运行状态检测脚本)供线下客户端升级时使用,用于程序升级时候的资源下载,便于动态选择更新的版本以及更新的脚本逻辑。升级管理和维护模块,用于管理和监控线下客户端的版本和状态,并选择选择需要升级的客户端和需要升级到的版本;升级命令发送模块,用于向线下客户端发送升级命令;线下客户端包括升级模块,用于根据升级命令进行自动升级;vpn网络,用于线下客户端与线上管理端之间的数据通讯(升级程序的命令发送以及线下资源的访问配置),用户将所有设备程序置于同一个网络环境中,便于统一管理维护,也方便升级程序的命令发送以及线下资源的访问配置。纠错模块,用于在收到升级失败的结果后,进行纠错,纠错后重新进行升级。
其中线下客户端的升级模块具体包括:下载子模块,用于根据选择的需要升级到的版本,访问升级资源服务器,下载升级所需资源文件;备份及停止子模块,用于备份及停止正在运行的程序以及相关资源;升级子模块,用于根据下载的资源文件,按照升级指定顺序(先更新数据库脚本,替换最新的配置文件,替换新的程序表,启动新的程序包)进行程序升级和文件替换;启动子模块,用于启动升级完毕之后的程序;检测子模块,用于检测程序是否启动成功;在未启动成功时,根据备份及停止子模块中备份的文件进行回滚操作,然后向线上管理端反馈升级失败的结果;在启动成功时,向线上管理端反馈升级成功的结果,升级结束。
请参阅图2,本实施例在线远程自动升级本地客户端的升级方法,基于一线上管理端、多个一线下客户端和一vpn网络,并基于上述升级系统,当需要进行程序升级时,线上管理端找到对应的客户端信息,并且根据选择升级的版本号,此时线上管理端向其线下客户端发送更新命令;线下客户端对应服务器上的更新脚本开始下载最新的更新脚本(防止执行更新的升级脚本有变动)以及升级所需要的文件,例如对应版本的程序背包,相关数据库的脚本,对应的配置文件等。更新程序开始备份以及相关资源(例如程序背包的备份,相关数据库的备份,配置文件的备份)以及停止正在运行的程序;之后按照升级指定的顺序进行程序更新操作,如:先更新数据库脚本,替换最新的配置文件,替换掉新的程序表,启动新的程序包;启程更新完毕之后的程序,并且检测程序是否启动成功。若是启动失败,脚本将自动回滚到之前的备份版本,并且将更新结果发送给平台服务端,由服务端的人员进行介入纠错。纠错完成后进行重新发版。
为了更清楚地表示线下客户端升级流程,请参阅图2,具体方法采用如下步骤:
S.1:根据选择升级的版本号下载最新的更新脚本以及升级所需要的文件。
S.2:备份以及停止正在运行的程序以及相关资源。
S.3:将S.1下载的文件,按照升级需要顺序进行程序更新操作。
S.4:启程更新完毕之后的程序,并且检测程序是否启动成功;若否,则根据S.2中备份的文件进行回滚操作,进行下一步,若成功直接进下一步。
S.5:发送更新结果反馈给线上的更新服务管理端,若结果为更新成功,直接进行下一步;否则,进行人工介入纠错,纠错之后,重新进入S.1步骤。
S.6:进行升级结果测试验证。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种在线远程自动升级本地客户端的系统,其特征在于,包括至少一线上管理端、至少一线下客户端和至少一vpn网络;其中
所述线上管理端包括
升级资源服务器,内置升级相关资源供线下客户端升级时使用;
升级管理和维护模块,用于管理和监控线下客户端的版本和状态,并选择选择需要升级的客户端和需要升级到的版本;
升级命令发送模块,用于向线下客户端发送升级命令;
所述线下客户端包括升级模块,用于根据升级命令进行自动升级;
所述vpn网络,用于线下客户端与线上管理端之间的数据通讯。
2.如权利要求1所述的在线远程自动升级本地客户端的系统,其特征在于,所述升级相关资源包括对应版本的程序背包、相关数据库的脚本和对应的配置文件升级脚本;所述升级相关资源还包括程序运行状态检测脚本。
3.如权利要求2所述的在线远程自动升级本地客户端的系统,其特征在于,所述线下客户端的升级模块具体包括
下载子模块,用于根据选择的需要升级到的版本,访问所述升级资源服务器,下载升级所需资源文件;
备份及停止子模块,用于备份及停止正在运行的程序以及相关资源;
升级子模块,用于根据下载的资源文件,按照升级指定顺序进行程序升级和文件替换;
启动子模块,用于启动升级完毕之后的程序;
检测子模块,用于检测程序是否启动成功;在未启动成功时,根据备份及停止子模块中备份的文件进行回滚操作,然后向线上管理端反馈升级失败的结果;在启动成功时,向线上管理端反馈升级成功的结果,升级结束。
4.如权利要求3所述的在线远程自动升级本地客户端的系统,其特征在于,所述线上管理端还包括纠错模块,用于在收到升级失败的结果后,进行纠错,纠错后重新进行升级。
5.如权利要求3所述的在线远程自动升级本地客户端的系统,其特征在于,所述升级指定的顺序为:先更新数据库脚本,替换最新的配置文件,替换新的程序表,启动新的程序包。
6.一种基于上述权利要求1至5任一项所述的在线远程自动升级本地客户端的系统的升级方法,其特征在于,基于至少一线上管理端、至少一线下客户端和至少一vpn网络;所述方法包括
通过线上管理端进行
升级资源服务,设置升级相关资源供线下客户端升级时使用;
升级管理和维护,管理和监控线下客户端的版本和状态,并选择选择需要升级的客户端和需要升级到的版本;
升级命令发送,向线下客户端发送升级命令;
通过线下客户端进行升级,根据升级命令进行自动升级;
通过vpn网络,实现线下客户端与线上管理端之间的数据通讯。
7.如权利要求6所述的升级方法,其特征在于,所述升级相关资源包括对应版本的程序背包、相关数据库的脚本和对应的配置文件升级脚本;所述升级相关资源还包括程序运行状态检测脚本。
8.如权利要求7所述的升级方法,其特征在于,根据所述通过线下客户端进行升级具体包括如下步骤:
下载,根据选择的需要升级到的版本,访问所述升级资源服务器,下载升级所需资源文件;
备份及停止,备份及停止正在运行的程序以及相关资源;
升级,根据下载的资源文件,按照升级指定顺序进行程序升级和文件替换;
启动,启动升级完毕之后的程序;
检测,检测程序是否启动成功;在未启动成功时,根据备份及停止子模块中备份的文件进行回滚操作,然后向线上管理端反馈升级失败的结果;在启动成功时,向线上管理端反馈升级成功的结果,升级结束。
9.如权利要求8所述的升级方法,其特征在于,所述线上管理端还进行纠错,在收到升级失败的结果后,进行纠错,纠错后重新进行升级。
10.如权利要求8所述的升级方法,其特征在于,所述升级指定的顺序为:先更新数据库脚本,替换最新的配置文件,替换新的程序表,启动新的程序包。
CN202210164498.XA 2022-02-22 2022-02-22 在线远程自动升级本地客户端的系统及方法 Pending CN115202680A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210164498.XA CN115202680A (zh) 2022-02-22 2022-02-22 在线远程自动升级本地客户端的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210164498.XA CN115202680A (zh) 2022-02-22 2022-02-22 在线远程自动升级本地客户端的系统及方法

Publications (1)

Publication Number Publication Date
CN115202680A true CN115202680A (zh) 2022-10-18

Family

ID=83574161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210164498.XA Pending CN115202680A (zh) 2022-02-22 2022-02-22 在线远程自动升级本地客户端的系统及方法

Country Status (1)

Country Link
CN (1) CN115202680A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116028078A (zh) * 2022-12-15 2023-04-28 广州鲁邦通智能科技有限公司 一种基于vpn技术的软件远程升级方法
CN116489210A (zh) * 2023-06-21 2023-07-25 深圳市双合电气股份有限公司 一种远程配置、应用下发的方法、装置和计算机设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116028078A (zh) * 2022-12-15 2023-04-28 广州鲁邦通智能科技有限公司 一种基于vpn技术的软件远程升级方法
CN116028078B (zh) * 2022-12-15 2023-10-03 广州鲁邦通智能科技有限公司 一种基于vpn技术的软件远程升级方法
CN116489210A (zh) * 2023-06-21 2023-07-25 深圳市双合电气股份有限公司 一种远程配置、应用下发的方法、装置和计算机设备
CN116489210B (zh) * 2023-06-21 2023-10-20 深圳市双合电气股份有限公司 一种远程配置、应用下发的方法、装置和计算机设备

Similar Documents

Publication Publication Date Title
US11449330B2 (en) System and method for supporting patching in a multitenant application server environment
US10853056B2 (en) System and method for supporting patching in a multitenant application server environment
CN107729066B (zh) 一种基于svn资源库自动化构建发布方法与装置
US6681389B1 (en) Method for providing scaleable restart and backout of software upgrades for clustered computing
EP1142309B1 (en) Method and apparatus for operating system downloads in a set-top box environment
US8010504B2 (en) Increasing application availability during automated enterprise deployments
US7698391B2 (en) Performing a provisioning operation associated with a software application on a subset of the nodes on which the software application is to operate
US8640098B2 (en) Offline configuration and download approach
CN115202680A (zh) 在线远程自动升级本地客户端的系统及方法
CN105260209A (zh) 一种程序热更新解决方法
US20200026524A1 (en) System and method for performing an image-based update
US20160266892A1 (en) Patching of virtual machines during data recovery
CN114237632A (zh) 一种混合云自动化运维发布系统及其操作方法
US8689048B1 (en) Non-logging resumable distributed cluster
US20170060598A1 (en) Managed boot process system
CN110764785B (zh) 基于开源组件的电力行业云平台工具链及云平台运维方法
CN116149713B (zh) 一种树型异构网络下的各级设备的程序升级方法及装置
US9207928B2 (en) Computer-readable medium, apparatus, and methods of automatic capability installation
CN117055930A (zh) 一种系统升级部署方法和系统
CN112579247A (zh) 确定任务状态的方法和装置
WO2012177597A1 (en) Networking elements as a patch distribution platform for distributed automation and control domains
CN111209139B (zh) 基于版本控制管理系统的容灾方法及装置
JP7029417B2 (ja) ソフトウェア更新システム、ソフトウェア更新方法およびプログラム
CN115291925A (zh) 一种bmc升级方法、系统、设备及存储介质
CN111190639A (zh) 适用于WebLogic的自动升级方法、系统、装置及存储介质

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