CN110162314B - 一种软件升级管理的方法、服务器、终端、装置及存储介质 - Google Patents

一种软件升级管理的方法、服务器、终端、装置及存储介质 Download PDF

Info

Publication number
CN110162314B
CN110162314B CN201810146366.8A CN201810146366A CN110162314B CN 110162314 B CN110162314 B CN 110162314B CN 201810146366 A CN201810146366 A CN 201810146366A CN 110162314 B CN110162314 B CN 110162314B
Authority
CN
China
Prior art keywords
terminal
upgrade
service
server
mode
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
CN201810146366.8A
Other languages
English (en)
Other versions
CN110162314A (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing 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
Priority to CN201810146366.8A priority Critical patent/CN110162314B/zh
Application filed by Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to JP2020542946A priority patent/JP7419239B2/ja
Priority to PCT/CN2019/073597 priority patent/WO2019154172A1/zh
Priority to EP19751716.2A priority patent/EP3745260A4/en
Priority to KR1020207026194A priority patent/KR102441236B1/ko
Publication of CN110162314A publication Critical patent/CN110162314A/zh
Priority to US16/990,512 priority patent/US11645063B2/en
Application granted granted Critical
Publication of CN110162314B publication Critical patent/CN110162314B/zh
Priority to JP2022177600A priority patent/JP7419482B2/ja
Priority to US18/192,132 priority patent/US11809855B2/en
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
    • 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/445Program loading or initiating
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • 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/10Protocols in which an application is distributed across nodes in the network
    • 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/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Abstract

一种软件升级管理的方法、服务器、终端、装置及存储介质,所述方法包括:服务器获取升级包;所述服务器确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;所述服务器将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。通过采用本方案,能够实现无人化和自动化调度升级。

Description

一种软件升级管理的方法、服务器、终端、装置及存储介质
技术领域
本申请涉及物联网技术领域,尤其涉及一种软件升级管理的方法、服务器、终端、装置及存储介质。
背景技术
在物联网中,对物联网设备进行软件升级时,需要由专业人员来进行人工决策和手动升级。并且在启动软件升级流程之前,不会去判断物联网设备中业务状态信息是否满足升级条件,而是直接启动软件升级流程。如果当前的升级包为功能类或者配置类,而物联网设备中部署的是重要业务(例如为安全类业务)且该重要业务处于非空闲态,若直接启动升级流程,则可能导致该物联网设备中正在进行的重要业务中断。
发明内容
本申请提供了一种软件升级管理的方法、服务器、终端、装置及存储介质,能够解决现有技术中对物联网设备进行软件升级时中断该物联网设备中的业务的问题。
本申请第一方面提供一种软件升级管理的方法,该方法可包括:
服务器获取升级包,所述服务器确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式。
所述服务器将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。
与现有机制相比,本申请中的服务器确定目标升级模式后,基于确定的目标升级模式自动的执行软件升级流程,从而实现无人化和自动化调度升级。
基于第一方面,在第一方面的第一种实施方式中,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,所述业务状态信息包括业务状态和业务优先级中的至少一项。
基于第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务状态。
当确定所述终端的业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务。例如,当业务状态为空闲态时,预设时间可以为0或者较短的时间间隔,服务器可以立即向终端发送指示信息;当业务状态为非升级状态时,该预设时间可以为0或者较短的时间间隔,服务器同样可以向终端发送指示信息。本申请不对预设时间的取值进行限定。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
基于第一方面的第一种实施方式,在第一方面的第三种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务状态。
当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
其中,预定义类型可以是安全类型,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可指示终端停止所述业务,以便启动软件升级流程。
一些实施方式中,当所述升级包的类型为预定义类型且所述业务状态为空闲态时,则所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止所述业务。该预设时间可以参考前述第一方面的第二种实现方式中的介绍。
一些实施方式中,服务器也可仅根据升级包的类型去决策是否发送指示终端设备停止业务的信息,例如,当升级包的类型为安全类型时,服务器可直接向终端发送指示信息,待收到终端返回的确认响应后启动软件升级流程。
基于第一方面的第三种实施方式,在第一方面的第四种实施方式中,所述指示信息可包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
例如,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可向终端指示10秒,以指示终端在10秒内停止所述业务,10秒后开始进行软件升级流程。
又例如,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可向终端指示所述预定义标识,以指示终端收到所述预定义标识后立即停止所述业务,开始进行软件升级流程。
可见,通过该指示信息能够实现自动化的调度软件升级流程,不需要人工参与。
基于第一方面的第一种实施方式,在第一方面的第五种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级。
当确定所述升级包的优先级大于所述业务优先级时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,通过比较升级包的优先级和业务优先级,考虑升级包的重要性,避免对终端的升级流程与终端中的业务冲突的现象。
基于第一方面的第一种实施方式,在第一方面的第六种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,服务器获取业务优先级和业务状态后,当确定升级包的优先级大于所述业务优先级且所述业务状态为非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止所述业务。可见,在这种情况下,同时考虑业务优先级、升级包的优先级和业务状态,然后决策启动软件升级流程的时机,能够避免仅考虑业务优先级和升级包的优先级的差异就直接启动升级流程所引起的中断业务的问题。
基于第一方面的第一种实施方式,在第一方面的第七种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,通过同时考虑业务优先级、升级包的优先级、升级包的类型和业务状态,然后决策启动软件升级流程的时机,能够进一步的提高决策启动软件升级流程的时机,以及实现更细粒度的调度。
基于第一方面的第一种实施方式,在第一方面的第八种实施方式中,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送用于指示所述终端停止所述业务的指示信息;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,由于升级包的优先级不大于所述业务优先级,所以此时不是启动软件升级流程的最好时机,服务器可以实时的获取终端的业务状态的更新,然后基于每次获取的更新的业务状态去决策是否达到启动软件升级流程的时机。当服务器获取的更新的业务状态为空闲时,服务器可以指示终端停止该业务,以执行软件升级流程,或者当服务器获取的更新的业务状态为非升级状态时,服务器可以指示终端停止该业务或者在预设时间内停止该业务。通过动态的比较和判断,服务器能够实现自动化的调度升级,避免确定所述升级包的优先级不大于所述业务优先级时不启动软件升级流程的现象。
基于第一方面,在第一方面的第九种实施方式中,所述目标升级模式为终端决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述服务器向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程。
所述服务器从所述终端接收到升级请求后,同意所述升级请求并执行所述终端的软件升级流程。
可见,在终端决策升级模式下,服务器向终端提供升级包的优先级,为终端决策是否启动软件升级流程提供依据。
基于第一方面,在第一方面的第十种实施方式中,所述目标升级模式为协商升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述服务器向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程。
所述服务器从所述终端接收携带等待时长的确认响应。
在计时时长超过所述等待时长后,所述服务器启动所述终端的软件升级流程。
可见,在终端决策升级模式下,服务器向终端提供升级包的优先级,为终端决策是否启动软件升级流程提供依据。并且服务器按照终端返回的等待时长自动的启动软件升级流程,无需终端再发起升级请求,该实施方式尤其适用于终端中的业务当前不便中断或结束的场景。
基于第一方面的第一种实施方式,在第一方面的第十一种实施方式中,所述方法还包括:
所述服务器至少通过以下方式之一获取所述升级包的优先级:
所述服务器从所述升级包的元数据中获取所述升级包的优先级;
或者所述服务器从所述升级包的描述文件中获取所述升级包的优先级;
或者,所述服务器从所述升级包的提供者获取所述升级包的优先级;
或者,所述服务器根据本地策略确定所述升级包的优先级。
本申请第二方面提供一种软件升级管理的方法,所述方法包括:
终端向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式。
所述终端从所述服务器获取升级包,并根据所述目标升级模式执行所述终端的软件升级流程。
与现有机制相比,本申请中的终端向服务器提供配置的升级模式,为服务器确定目标升级模式提供依据,进而基于服务器确定的目标升级模式自动的执行软件升级流程,从而实现无人化和自动化调度升级。
基于第二方面,第二方面的第一种实施方式中,当所述目标升级模式为终端决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端从所述服务器获取所述升级包的优先级,根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,向所述服务器发送升级请求。
所述终端从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
基于第二方面,第二方面的第一种实施方式中,当所述目标升级模式为协商决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端从所述服务器获取升级包的优先级,所述终端根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,向所述服务器发送携带所述等待时长的确认响应。
在计时时长超过所述等待时长后,所述终端从所述服务器获取所述升级包并执行所述软件升级流程。
基于第二方面,第二方面的第一种实施方式中,当所述目标升级模式为服务器决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端向所述服务器发送所述终端中业务的业务状态信息,所述业务状态信息用于所述服务器确定所述终端中业务的业务优先级或业务状态中的至少一项。
所述终端从所述服务器接收到用于指示所述终端停止所述业务的指示信息后,从所述服务器获取所述升级包并执行所述终端的软件升级流程。
本申请第三方面提供一种服务器,具有实现对应于上述第一方面提供的软件升级管理的方法的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一些实施方式中,所述服务器包括:
收发模块,用于获取升级包;
处理模块,用于确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
通过所述收发模块将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。
一些实施方式中,所述处理模块包括:
在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,所述业务状态信息包括业务状态和业务优先级中的至少一项。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当确定所述终端的业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述指示信息包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级;
当确定所述升级包的优先级大于所述业务优先级时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送用于指示所述终端停止所述业务的指示信息;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程;
在所述收发模块从所述终端接收到升级请求后,同意所述升级请求并执行所述终端的软件升级流程。
一些实施方式中,所述目标升级模式为协商升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程;
通过所述收发模块从所述终端接收携带等待时长的确认响应;
在计时时长超过所述等待时长后,启动所述终端的软件升级流程。
本申请第四方面提供一种终端,具有实现对应于上述第二方面提供的软件升级管理的方法的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一些实施方式中,所述终端包括:
收发模块,用于向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
处理模块,用于所述收发模块从所述服务器获取升级包后,根据所述目标升级模式执行所述终端的软件升级流程。
一些实施方式中,当所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取所述升级包的优先级;
根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,通过所述收发模块向所述服务器发送升级请求;
在所述收发模块从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
一些实施方式中,当所述目标升级模式为协商决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取升级包的优先级;
根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,通过所述收发模块向所述服务器发送携带所述等待时长的确认响应;
在计时时长超过所述等待时长后,通过所述收发模块从所述服务器获取所述升级包并执行所述软件升级流程。
一些实施方式中,当所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块向所述服务器发送所述终端中业务的业务状态信息,所述业务状态信息用于所述服务器确定所述终端中业务的业务优先级或业务状态中的至少一项;
在所述收发模块从所述服务器接收到用于指示所述终端停止所述业务的指示信息后,通过所述收发模块从所述服务器获取所述升级包并执行所述终端的软件升级流程。
本申请又一方面提供了一种计算机装置,其包括至少一个连接的处理器、存储器、发射器和接收器,其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行上述各方面中由服务器所执行的操作,或者执行上述各方面中由终端所执行的操作。
本申请又一方面提供了一种计算机装置,所述计算机装置包括:
至少一个处理器、存储器和收发器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行第一方面中由服务器所执行的操作,或者执行第二方面中由终端所执行的操作。
其中,该收发器也可以用接收器和发送器代替,可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为收发器。所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
本申请又一方面提供了一种计算机存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述第一方面中所述的操作,或者执行上述第二方面中所述的操作。
本申请又一方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面中由服务器所执行的操作,或者执行上述第二方面中由终端所执行的的操作。
附图说明
图1为本申请实施例中的物联网系统的一种架构示意图;
图2为本申请实施例中软件升级管理的方法的一种流程示意图;
图3为本申请实施例中为终端配置升级模式的一种流程示意图;
图4为本申请实施例中服务器决策升级模式下,执行软件升级流程的流程示意图;
图5为本申请实施例中服务器决策升级模式下,执行软件升级流程的流程示意图;
图6为本申请实施例中服务器决策升级模式下,执行软件升级流程的流程示意图;
图7为本申请实施例中协商决策升级模式下,执行软件升级流程的流程示意图;
图8为本申请实施例中终端决策升级模式下,执行软件升级流程的流程示意图;
图9为本申请实施例中服务器的一种结构示意图;
图10为本申请实施例中终端的一种结构示意图;
图11为本申请实施例中执行软件升级管理的方法的设备的一种结构示意图;
图12为本申请实施例中物联网终端的一种结构示意图;
图13为本申请实施例中服务器的另一种结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本申请中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请方案的目的。
本申请供了一种软件升级管理的方法、服务器、终端、装置及存储介质,可用于物联网技术领域。以下基于图1所示的一种物联网系统架构图对本申请中涉及的设备进行介绍。
图1中,该物联网系统包括服务器和多个终端,每个终端中可分别部署相同或不同的业务,每个终端也可以部署至少一种业务。
服务器用于对这些终端进行集群管理,这些终端可以按照部署的业务类型进行集群划分。当服务器获取升级包后,为避免中断待升级的终端中的业务,服务器可先向各待升级的终端发起订阅请求,该订阅请求用于订阅终端的业务状态信息,该业务状态信息可以包括业务是否为空闲态或非升级态,还可包括业务类型、业务优先级等业务相关的信息。
服务器在确定终端的目标升级模式后,可基于订阅的业务状态信息和升级包的优先级、类型等信息,决策执行这些终端的软件升级流程的时机。
此外,该终端也可以基于服务器提供的升级包的优先级、升级包的类型等信息去决策执行自身的软件升级流程的时机。对于待升级同一种类型的升级包的终端而言,这些终端执行各自的软件升级流程的时机可不同。具体可由服务器或待升级的终端来决策,只要按照选定的目标升级模式执行软件升级流程即可。
为解决上述技术问题,本申请主要采用以下技术方案:
服务器通过预配置的多种升级模式,对应不同的场景,采取不同的软件升级流程。例如,在启动软件升级流程中,服务器可从所述升级包的类型、所述升级包的优先级和业务状态信息等多个维度决策启动软件升级流程的时机。例如在软件升级流程中通过对比升级包的优先级和终端的业务优先级的差异,实现批量终端的自动化升级。
请参照图2,介绍本申请提供一种软件升级管理的方法,所述方法主要包括:
201、服务器获取升级包。
该升级包可以包括至少一种类型的升级包,例如安全、功能、配置、一般等类型的升级包,该升级包可包括运行脚本、代码等。该升级包可以是针对终端的系统或者终端中部署的业务的升级包,具体本申请不作限定。本申请实施例中,服务器可以针对终端单独进行系统或业务的软件升级流程,或者同时进行系统和业务两种软件升级流程。
一些实施方式中,服务器还可获取该升级包的优先级信息,然后根据优先级信息确定该升级包的优先级,该优先级信息可以是显示或隐式的指示升级包的优先级。所述服务器至少通过以下方式之一获取所述升级包的优先级:
所述服务器从所述升级包的元数据中获取所述升级包的优先级;
或者所述服务器从所述升级包的描述文件中获取所述升级包的优先级;
或者,所述服务器从所述升级包的提供者获取所述升级包的优先级;
或者,所述服务器根据本地策略确定所述升级包的优先级。
一些实施方式中,对于服务器获取的升级包包括至少两种类型的升级包的情形,所述服务器根据本地策略确定所述升级包的优先级,可包括:
若该升级包包括至少两种类型的升级包,可比较这些类型的级别高低,将所述至少两种类型的升级包中优先级最高的升级包的优先级作为该升级包的优先级。例如该升级包包括安全类型和配置类型的升级包时,服务器可确定该升级包的优先级为安全级。
202、所述服务器确定终端的目标升级模式.
其中,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式。
在步骤201之前,服务器还需要获取终端配置的升级模式,主要获取方式可参考图3,图3中所示的实施例可包括:.
1、当终端注册成功后,服务器可向该终端发起资源发现操作,以探测该终端是否已配置升级模式。
2a、若终端已配置升级模式,则终端向服务器发送已配置的升级模式。
这样,服务器可根据该终端已配置的升级模式确定目标升级模式。
2b、若该终端未配置升级模式,则该终端向服务器返回响应。
3b、服务器向该终端发起升级模式协商请求。
该升级模式协商请求中可携带升级模式列表,该升级模式列表中可包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式。
4b、终端接收到该升级模式协商请求后,选择自身支持的升级模式并完成升级模式的配置,向服务器返回选择的升级模式。
终端可以选择至少一种升级模式,并通过升级模式协商发送给服务器,服务器收到该升级模式协商响应后,即可根据该升级模式协商响应中携带的升级模式确定目标升级模式。
一些实施方式中,若该终端未配置升级模式,服务器可直接确定该终端的目标升级模式为服务器决策升级模式,并在服务器决策升级模式下执行终端的软件升级流程。
一些实施方式中,若该终端未配置升级模式,服务器可向该终端发起升级模式协商请求,该升级模式协商请求中可携带升级模式列表,该升级模式列表中可包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式。服务器从终端接收响应,若该响应中未携带升级模式,则服务器可直接确定该终端的目标升级模式为服务器决策升级模式,并在服务器决策升级模式下执行终端的软件升级流程。
203、所述服务器将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。
204、所述终端从所述服务器获取所述升级包,并根据所述目标升级模式执行所述终端的软件升级流程。
一些实施方式中,服务器还可以获取所述升级包的类型、升级包的优先级、终端中业务的业务状态信息。该所述业务状态信息可包括业务状态和业务优先级中的至少一项。例如,业务状态可包括业务是否为空闲态,或者是否为非升级状态。例如,该业务状态具体可指示:终端是否正在进行业务,或者是否正在进行上一个软件升级流程(例如终端正在进行系统升级或进行业务升级)。
在所述目标升级模式下,所述服务器可根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程。
本申请实施例中,服务器确定目标升级模式后,基于确定的目标升级模式自动的执行软件升级流程,能够实现无人化和自动化调度升级,从所述升级包的类型、所述升级包的优先级和业务状态信息等多个维度决策启动软件升级流程的时机。
可选的,在本申请的一些实施例中,下面按照目标升级模式分别为服务器决策升级模式、终端决策升级模式和协商升级模式时,介绍服务器与终端之间执行的软件升级流程。
一、所述目标升级模式为服务器决策升级模式时,软件升级流程主要包括以下几种场景。
1、基于业务状态决策启动软件升级流程的时机。
所述服务器从所述业务状态信息中获取所述终端中业务的业务状态。
当确定所述终端的业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务。例如,当业务状态为空闲态时,预设时间可以为0或者较短的时间间隔,服务器可以立即向终端发送指示信息;当业务状态为非升级状态时,该预设时间可以为0或者较短的时间间隔,服务器同样可以向终端发送指示信息。本申请不对预设时间的取值进行限定。其中,非升级状态是指终端当前没有进行软件升级,例如该终端当前未进行系统升级,也未进行业务上的软件升级。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,本申请根据业务状态来决策升级时机,能够避免收到升级包后立即执行软件升级流程,若当前终端正在进行业务,导致当前的业务中断,或者当前终端中的上一个软件升级流程还未完成(例如终端正在进行系统升级或进行业务升级),导致上一个软件升级流程中断的问题。
2、基于升级包的类型决策启动软件升级流程的时机。
如图4所示,该实施例可包括:
401、所述服务器获取升级包和确定目标升级模式为服务器决策升级模式。
402、所述服务器从所述业务状态信息中获取所述终端中业务的业务状态。
403、当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
404、所述终端接收到所述指示信息后,停止所述业务,并向服务器发送确认响应。
405、所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
其中,预定义类型可以是安全类型,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可指示终端停止所述业务,以便启动软件升级流程。
一些实施方式中,当所述升级包的类型为预定义类型且所述业务状态为空闲态时,则所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止所述业务。该预设时间可以参考前述的介绍。
一些实施方式中,所述指示信息可包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
例如,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可向终端指示10秒,以指示终端在10秒内停止所述业务,10秒后开始进行软件升级流程。
又例如,当升级包的类型为安全类型且业务状态为非升级状态时,服务器可向终端指示所述预定义标识,以指示终端收到所述预定义标识后立即停止所述业务,开始进行软件升级流程。
一些实施方式中,服务器也可仅根据升级包的类型去决策是否发送指示终端设备停止业务的信息,例如,当升级包的类型为安全类型时,服务器可直接向终端发送指示信息,待收到终端返回的确认响应后启动软件升级流程。
可见,通过该指示信息能够实现自动化的调度软件升级流程,不需要人工参与。另外,服务器根据升级包类型和业务状态决策升级时机时,能够避免收到升级包后立即执行软件升级流程,导致当前的业务中断,或者导致上一个软件升级流程中断的问题。
3、通过比较升级包的优先级与业务优先级决策启动软件升级流程的时机。
(a)所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级。
当确定所述升级包的优先级大于所述业务优先级时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,通过比较升级包的优先级和业务优先级,考虑升级包的重要性,避免对终端的升级流程与终端中的业务冲突的现象。
(b)所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,服务器获取业务优先级和业务状态后,当确定升级包的优先级大于所述业务优先级且所述业务状态为非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止所述业务。可见,在这种情况下,同时考虑业务优先级、升级包的优先级和业务状态,然后决策启动软件升级流程的时机,能够避免仅考虑业务优先级和升级包的优先级的差异就直接启动升级流程所引起的中断业务的问题。
一些实施方式中,服务器还可以仅根据业务优先级和升级包的优先级的大小来决策软件升级流程的时机,如图5所示,该实施例可包括:
501、服务器获取升级包的优先级和确定目标升级模式为服务器决策升级模式。
502、服务器向终端发放订阅请求,该订阅请求用于订阅终端的业务状态信息。
503、终端向服务器返回订阅响应。
504、服务器从终端获取业务的业务状态信息。
505、服务器从业务状态信息中获取业务优先级,比较业务优先级与升级包的优先级大小。
506、当业务优先级小于升级包的优先级时,向终端发送指示信息。
507、终端接收到指示信息后,停止业务。
508、终端向服务器返回确认响应。
509、服务器向终端发送升级包,启动软件升级流程。
4、通过业务优先级和业务状态决策软件升级流程的时机。
(a)所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务。
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,通过同时考虑业务优先级、升级包的优先级、升级包的类型和业务状态,然后决策启动软件升级流程的时机,能够进一步的提高决策启动软件升级流程的时机,以及实现更细粒度的调度。
一些实施方式中,服务器还可以仅根据业务优先级和升级包的优先级的大小来决策软件升级流程的时机,如图6所示,该实施例可包括:
601、服务器获取升级包的优先级和确定目标升级模式为服务器决策升级模式。
602、服务器向终端发放订阅请求,该订阅请求用于订阅终端的业务状态信息。
603、终端向服务器返回订阅响应。
604、服务器从终端获取业务的业务状态信息。
605、服务器从业务状态信息中获取业务优先级,比较业务优先级与升级包的优先级大小。
607、当业务优先级大于升级包的优先级时,服务器继续从终端获取更新的业务状态信息。
608、当业务状态信息中的业务状态为空闲或非升级状态时,向终端发送指示信息。
609、终端接收到指示信息后,在预设时间内停止执行业务。
610、终端向服务器返回确认响应。
611、服务器向终端发送升级包,启动软件升级流程。
(b)所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态。
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送用于指示所述终端停止所述业务的指示信息;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
可见,由于升级包的优先级不大于所述业务优先级,所以此时不是启动软件升级流程的最好时机,服务器可以实时的获取终端的业务状态的更新,然后基于每次获取的更新的业务状态去决策是否达到启动软件升级流程的时机。当服务器获取的更新的业务状态为空闲时,服务器可以指示终端停止该业务,以执行软件升级流程,或者当服务器获取的更新的业务状态为非升级状态时,服务器可以指示终端停止该业务或者在预设时间内停止该业务。通过动态的比较和判断,服务器能够实现自动化的调度升级,避免确定所述升级包的优先级不大于所述业务优先级时不启动软件升级流程的现象。
二、当目标升级模式为协商升级模式时。
如图7所示,该实施例可包括:
701、所述服务器向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程。
702、所述终端从所述服务器获取升级包的优先级,所述终端根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,向所述服务器发送携带所述等待时长的确认响应。例如等待时长可以设为1小时。
703、所述服务器从所述终端接收携带等待时长的确认响应。
704、在计时时长超过所述等待时长后,所述服务器启动所述终端的软件升级流程。
705、所述终端从所述服务器获取所述升级包并执行所述软件升级流程。
可见,在终端决策升级模式下,服务器向终端提供升级包的优先级,为终端决策是否启动软件升级流程提供依据。并且服务器按照终端返回的等待时长自动的启动软件升级流程,无需终端再发起升级请求,该实施方式尤其适用于终端中的业务当前不便中断或结束的场景。
三、当目标升级模式为终端决策升级模式时。
如图8所示,该实施例可包括:
801、所述服务器向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程。
802、所述终端从所述服务器获取所述升级包的优先级,根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,向所述服务器发送升级请求。
803、所述服务器从所述终端接收到升级请求后,同意所述升级请求后,向终端发送确认响应,并执行所述终端的软件升级流程。
804、相应的,所述终端从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
可见,在终端决策升级模式下,服务器向终端提供升级包的优先级,为终端决策是否启动软件升级流程提供依据。
此外,在终端决策升级模式下,服务器还可以将升级包的类型发送给终端,终端可以根据升级包的类型(也可结合业务状态)决策启动软件升级流程的时机。或者,在终端决策升级模式下,服务器还可以仅向终端发送一个升级请求,该升级请求可不携带升级包的优先级或升级包的类型等信息,可仅用于指示终端当前有升级包待升级,终端接收到该升级请求后,可按照自身的业务状态或者业务优先级自行决策启动软件升级流程的时机。
上述各实施例中所介绍的技术特征,例如目标升级模式、升级包的优先级、升级包的类型、业务状态信息、等待时长等技术特征、也同样适用于本申请中的图9-图11所对应的实施例,后续类似之处不再赘述。
以上介绍了本申请中一种软件升级管理的方法,下面分别介绍执行上述软件升级管理的服务器和终端。
如图9所示的一种服务器的结构示意图,本申请实施例中的服务器能够实现对应于上述图2-图8中任一所对应的实施例中由服务器所执行的软件升级管理的步骤。服务器实现的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。所述服务器可包括收发模块和处理模块,所述处理模块的功能实现可参考图2-图8中任一所所对应的实施例中由服务器确定目标升级模式、确定升级包的优先级和类型、从业务状态信息中获取业务优先级、业务状态等操作,此处不作赘述。所述收发模块的功能实现可参考图2-图8中任一所所对应的实施例中由服务器获取升级包、业务状态信息、接收来自终端的确认响应、升级请求等操作,处理模块可用于控制所述收发模块的收发操作。
一些实施方式中,所述收发模块可用于获取升级包;
所述处理模块可用于确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
通过所述收发模块将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。
可见,服务器中的处理模块确定目标升级模式后,基于确定的目标升级模式自动的执行软件升级流程,从而实现无人化和自动化调度升级。
一些实施方式中,所述处理模块包括:
在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,所述业务状态信息包括业务状态和业务优先级中的至少一项。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当确定所述终端的业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述指示信息包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级;
当确定所述升级包的优先级大于所述业务优先级时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送用于指示所述终端停止所述业务的指示信息;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
一些实施方式中,所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程;
在所述收发模块从所述终端接收到升级请求后,同意所述升级请求并执行所述终端的软件升级流程。
一些实施方式中,所述目标升级模式为协商升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程;
通过所述收发模块从所述终端接收携带等待时长的确认响应;
在计时时长超过所述等待时长后,启动所述终端的软件升级流程。
如图10所示的一种终端的结构示意图,本申请涉及的终端,可以是指向用户提供语音和/或数据连通性的设备,例如,终端可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,例如水表、电表、天然气表、共享单车和智能家居等智能设备,它们与无线接入网交换语音和/或数据。例如,个人通信业务(英文全称:Personal CommunicationService,英文简称:PCS)电话、无绳电话、会话发起协议(SIP)话机、无线本地环路(Wireless Local Loop,英文简称:WLL)站、个人数字助理(英文全称:Personal DigitalAssistant,英文简称:PDA)等设备。无线终端也可以称为订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、用户终端(UserTerminal)、用户代理(User Agent)、用户设备(User Device)、用户装备(UserEquipment)、销售终端(英文全称:Point of Sales,英文简称:POS)、车载电脑等任意终端。
本申请实施例中的终端能够实现对应于上述图2-图8中任一所对应的实施例中由终端所执行的软件升级管理的步骤。终端实现的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。所述终端可包括收发模块和处理模块,所述处理模块的功能实现可参考图2-图8中任一所所对应的实施例中由终端确定升级包的优先级和类型、决策启动软件升级流程的时机等操作,此处不作赘述。所述收发模块的功能实现可参考图2-图8中任一所所对应的实施例中由终端获取升级包的优先级和类型、升级包、业务状态信息、接收来自服务器的升级协商请求、确认响应、升级请求等操作,处理模块可用于控制所述收发模块的收发操作。
一些实施方式中,所述收发模块可用于向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
所述处理模块可用于所述收发模块从所述服务器获取升级包后,根据所述目标升级模式执行所述终端的软件升级流程。
可见,终端的收发模块向服务器提供配置的升级模式,为服务器确定目标升级模式提供依据,在收发模块获取升级包后,处理模块可基于服务器确定的目标升级模式自动的执行软件升级流程,从而实现无人化和自动化调度升级。
一些实施方式中,当所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取所述升级包的优先级;
根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,通过所述收发模块向所述服务器发送升级请求;
在所述收发模块从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
一些实施方式中,当所述目标升级模式为协商决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取升级包的优先级;
根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,通过所述收发模块向所述服务器发送携带所述等待时长的确认响应;
在计时时长超过所述等待时长后,通过所述收发模块从所述服务器获取所述升级包并执行所述软件升级流程。
一些实施方式中,当所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块向所述服务器发送所述终端中业务的业务状态信息,所述业务状态信息用于所述服务器确定所述终端中业务的业务优先级或业务状态中的至少一项;
在所述收发模块从所述服务器接收到用于指示所述终端停止所述业务的指示信息后,通过所述收发模块从所述服务器获取所述升级包并执行所述终端的软件升级流程。
图11为本申请实施例提供的执行软件升级管理的设备的一种结构示意图,其中,可包括至少一个处理器、至少一个收发器、存储器、至少一个总线。其中,至少一个处理器、至少一个收发器和存储器可通过总线或其它方式连接,其中,图11中以通过总线连接为例。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器(英文全称:Non-Volatile RandomAccess Memory,英文缩写:NVRAM)。存储器存储有操作系统和程序指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,程序指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础任务以及处理基于硬件的任务。
处理器可以控制软件升级管理的设备的操作,处理器还可以称为中央处理单元(英文全称:Central Processing Unit,英文简称:CPU)。具体的应用中,软件升级管理的设备的各个组件通过总线耦合在一起,其中总线除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图11中将各种总线都可称为总线。
需要说明的是,在本申请各实施例(包括图9、图10所示的各实施例)中所有的收发模块对应的实体设备可以为收发器,所有的处理模块对应的实体设备可以为处理器。图9、图10所示的各装置均可以具有如图11所示的结构,当其中一种装置具有如图11所示的结构时,图11中的处理器和收发器实现前述对应该装置的装置实施例提供的处理模块和收发模块相同或相似的功能,图11中的存储器存储处理器执行上述软件升级管理的方法时需要调用的程序代码。其中,该收发器也可以用接收器和发送器代替,可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为收发器,例如该收发器可以为射频(英文全称:Radio Frequency,英文简称:RF)电路。所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
上述本申请各实施例揭示的方法可以应用于图11所示的处理器中,或者由图11所示的处理器实现。例如,在一些实施方式中,图11中的处理器可通过调用存储器存储的程序指令,上述处理器具体执行本申请实施例中的软件升级管理的方法时需要调用的程序代码。
例如,当服务器具有如图11所示的结构时,图11中的存储器存储处理器执行上述由服务器执行软件升级管理的方法时需要调用的程序代码。具体来说,图11中的处理器能够调用存储器中的程序代码执行以下操作:
通过所述收发器获取升级包;
确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
通过所述收发器将所述升级包发送给所述终端,并根据所述目标升级模式执行所述终端的软件升级流程。
又例如,当终端具有如图11所示的结构时,图11中的存储器存储处理器执行上述由服务器执行软件升级管理的方法时需要调用的程序代码。具体来说,图11中的处理器能够调用存储器中的程序代码执行以下操作:
通过所述收发器向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式;
在所述收发器从所述服务器获取升级包后,根据所述目标升级模式执行所述终端的软件升级流程。
本申请实施例还提供了另一种终端,以物联网终端为例:图12示出的是与本申请实施例提供的物联网终端相关的部分结构的框图。参考图12,物联网终端至少包括:RF电路1212、存储器1220和处理器1280。本领域技术人员可以理解,图12中示出的物联网终端结构并不构成对物联网终端的限定,可以包括比图12所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图12对物联网终端的各个构成部件进行具体的介绍:
RF电路1212可用于收发信息过程中信号的接收和发送,特别地,将来自服务器的信息接收后,给处理器1280处理;另外,将物联网终端的信息发送给服务器。通常,RF电路1212包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(英文全称:lownoise amplifier,英文简称:LNA)、双工器等。此外,RF电路1212还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(英文全称:global system of mobile communication,英文简称:GSM)、通用分组无线服务(英文全称:general packet radio service,英文简称:GPRS)、码分多址(英文全称:code division multiple Access,英文简称:CDMA)、宽带码分多址(英文全称:wideband code division multiple access,英文简称:WCDMA)、长期演进(英文全称:longterm evolution,英文简称:LTE)、电子邮件、短消息服务(英文全称:short messagingservice,英文简称:SMS)等。该RF电路1212可以对应图9中的收发模块或图10中的收发模块或图11中所示的收发器。
存储器1220可用于存储软件程序以及模块,处理器1280通过运行存储在存储器1220的软件程序以及模块,从而执行物联网终端的各种功能应用以及数据处理。存储器1220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据物联网终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1280是物联网终端的控制中心,可用于控制物联网终端的操作。具体的,处理器1280可利用各种接口和线路连接整个物联网终端的各个部分,通过运行或执行存储在存储器1220内的软件程序和/或模块,以及调用存储在存储器1220内的数据,执行物联网终端的各种功能和处理数据,从而对物联网终端进行整体监控。该处理器1280可以对应图9中的处理模块或图10中的处理模块或图11中所示的处理器。
物联网终端还可以包括输入/输出单元1230、电源1290、显示单元1240、音频电路1260、扬声器1261,传声器1262、以及无线保真(英文全称:wireless fidelity,英文简称:Wi-Fi)模块1270。
其中,输入/输出单元1230可用于接收输入的数字或字符信息,以及通过外接接口输出数字或字符信息。具体地,输入/输出单元1230可包括触控面板1231以及其他输入设备1232。触控面板1231,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1231上或在触控面板1231附近的操作),并根据预先设定的程式驱动相应的连接装置。
电源1290用于为物联网终端中的各个部件供电,电源1290可以通过电源管理系统与处理器1280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
显示单元1240可用于显示由用户输入的信息或提供给用户的信息以及物联网终端的各种菜单。显示单元1240可包括显示面板1241,可选的,可以采用液晶显示器(英文全称:Liquid Crystal Display,英文简称:LCD)、有机发光二极管(英文全称:OrganicLight-Emitting Diode,英文简称:OLED)等形式来配置显示面板1241。进一步的,触控面板1231可覆盖显示面板1241,当触控面板1231检测到在其上或附近的触摸操作后,传送给处理器1280以确定触摸事件的类型,随后处理器1280根据触摸事件的类型在显示面板1241上提供相应的视觉输出。虽然在图12中,触控面板1231与显示面板1241是作为两个独立的部件来实现物联网终端的输入和输入功能,但是在某些实施例中,可以将触控面板1231与显示面板1241集成而实现物联网终端的输入和输出功能。
音频电路1260、扬声器1261,传声器1262可提供用户与物联网终端之间的音频接口。音频电路1260可将接收到的音频数据转换后的电信号,传输到扬声器1261,由扬声器1261转换为声音信号输出;另一方面,传声器1262将收集的声音信号转换为电信号,由音频电路1260接收后转换为音频数据,再将音频数据输出处理器1280处理后,经RF电路1212以发送给比如另一物联网终端,或者将音频数据输出至存储器1220以便进一步处理。
Wi-Fi属于短距离无线传输技术,物联网终端通过Wi-Fi模块1270可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图12示出了WiFi模块1270,但是可以理解的是,其并不属于物联网终端的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略。
尽管未示出,物联网终端还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该物联网终端所包括的处理器1280还具有控制执行以上由终端执行的软件升级管理的方法流程。
本申请实施例提供的另一种服务器,如图13所示的结构示意图,该服务器1320可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(英文全称:central processing units,英文简称:CPU)1322(例如,一个或一个以上处理器)、输入输出接口1358和存储器1332,服务器还可以包括一个或一个以上存储应用程序1342或数据1344的存储介质1330(例如一个或一个以上海量存储设备)。
其中,中央处理器1322可以设置为与存储介质1330通信,在服务器1320上执行存储介质1330中的一系列指令操作。其中,CPU1322可以对应图9中的处理模块或图10中的处理模块或图11中所示的处理器,存储介质1330可对应图11中所示的存储器。
输入输出接口1358可以对应图9中的收发模块或图10中的收发模块或图11中所示的收发器。
存储器1332和存储介质1330可以是短暂存储或持久存储,存储在存储介质1330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。
服务器1320还可以包括一个或一个以上电源1326,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1358,和/或,一个或一个以上操作系统1341,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等等。
上述各实施例中由服务器所执行的步骤可以基于该图13所示的服务器结构。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或软件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
在上述实施例中,可以全部或部分地通过软件、硬件、软件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (30)

1.一种软件升级管理的方法,其特征在于,所述方法包括:
服务器获取升级包;
所述服务器确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式,所述协商升级模式为所述服务器和所述终端协商确定是否执行软件升级流程和/或执行软件升级流程的时间的升级模式;
所述服务器将所述升级包发送给所述终端,并在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,所述业务状态信息包括业务状态和业务优先级中的至少一项。
2.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务状态;
当确定所述终端的业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
3.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务状态;
当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
4.根据权利要求3所述的方法,其特征在于,所述指示信息包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
5.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级;
当确定所述升级包的优先级大于所述业务优先级时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
6.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
7.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
8.根据权利要求1所述的方法,其特征在于,所述目标升级模式为服务器决策升级模式时,所述在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,包括:
所述服务器从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,所述服务器向所述终端发送用于指示所述终端停止所述业务的指示信息;
所述服务器从所述终端接收到确认响应后启动所述软件升级流程。
9.根据权利要求1所述的方法,其特征在于,所述目标升级模式为终端决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述服务器向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程;
所述服务器从所述终端接收到升级请求后,同意所述升级请求并执行所述终端的软件升级流程。
10.根据权利要求1所述的方法,其特征在于,所述目标升级模式为协商升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述服务器向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程;
所述服务器从所述终端接收携带等待时长的确认响应;
在计时时长超过所述等待时长后,所述服务器启动所述终端的软件升级流程。
11.一种软件升级管理的方法,其特征在于,所述方法包括:
终端向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式,所述协商升级模式为所述服务器和所述终端协商确定是否执行软件升级流程和/或执行软件升级流程的时间的升级模式;
所述终端从所述服务器获取升级包,并根据所述目标升级模式执行所述终端的软件升级流程。
12.根据权利要求11所述的方法,其特征在于,当所述目标升级模式为终端决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端从所述服务器获取所述升级包的优先级;
所述终端根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,向所述服务器发送升级请求;
所述终端从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
13.根据权利要求11所述的方法,其特征在于,当所述目标升级模式为协商决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端从所述服务器获取升级包的优先级;
所述终端根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,向所述服务器发送携带所述等待时长的确认响应;
在计时时长超过所述等待时长后,所述终端从所述服务器获取所述升级包并执行所述软件升级流程。
14.根据权利要求13所述的方法,其特征在于,当所述目标升级模式为服务器决策升级模式时,所述根据所述目标升级模式执行所述终端的软件升级流程,包括:
所述终端向所述服务器发送所述终端中业务的业务状态信息,所述业务状态信息用于所述服务器确定所述终端中业务的业务优先级或业务状态中的至少一项;
所述终端从所述服务器接收到用于指示所述终端停止所述业务的指示信息后,从所述服务器获取所述升级包并执行所述终端的软件升级流程。
15.一种服务器,其特征在于,所述服务器包括:
收发模块,用于获取升级包;
处理模块,用于确定终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式,所述协商升级模式为所述服务器和所述终端协商确定是否执行软件升级流程和/或执行软件升级流程的时间的升级模式;
通过所述收发模块将所述升级包发送给所述终端,并在所述目标升级模式下,所述服务器根据所述升级包的类型、所述升级包的优先级、所述终端中业务的业务状态信息中的至少一项执行所述终端的软件升级流程,所述业务状态信息包括业务状态和业务优先级中的至少一项。
16.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当确定所述终端的业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端在预设时间内停止执行所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
17.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务状态;
当所述升级包的类型为预定义类型且所述业务状态为非升级状态时,则通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
18.根据权利要求17所述的服务器,其特征在于,所述指示信息包括第一时间或预定义标识,所述第一时间是指所述终端停止所述业务并执行所述软件升级流程的响应时间,所述预定义标识指示所述终端收到所述指示信息时停止所述业务。
19.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级;
当确定所述升级包的优先级大于所述业务优先级时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
20.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级且所述业务状态为空闲态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
21.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级大于所述业务优先级、所述升级包的类型为非预定义类型且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送指示信息,所述指示信息用于指示所述终端停止所述业务;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
22.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块从所述业务状态信息中获取所述终端中业务的业务优先级和业务状态;
当确定所述升级包的优先级不大于所述业务优先级且所述业务状态为空闲态或非升级状态时,通过所述收发模块向所述终端发送用于指示所述终端停止所述业务的指示信息;
在所述收发模块从所述终端接收到确认响应后启动所述软件升级流程。
23.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包优先级用于所述终端根据所述升级包的优先级和所述业务优先级决策是否启动软件升级流程;
在所述收发模块从所述终端接收到升级请求后,同意所述升级请求并执行所述终端的软件升级流程。
24.根据权利要求15所述的服务器,其特征在于,所述目标升级模式为协商升级模式时,所述处理模块用于:
通过所述收发模块向所述终端发送所述升级包的优先级,所述升级包的优先级用于所述终端根据所述升级包的优先级和所述业务状态决策是否启动软件升级流程;
通过所述收发模块从所述终端接收携带等待时长的确认响应;
在计时时长超过所述等待时长后,启动所述终端的软件升级流程。
25.一种终端,其特征在于,所述终端包括:
收发模块,用于向服务器发送所述终端配置的升级模式,所述终端配置的升级模式用于所述服务器确定所述终端的目标升级模式,所述目标升级模式包括服务器决策升级模式、终端决策升级模式或协商升级模式中的一种升级模式,所述协商升级模式为所述服务器和所述终端协商确定是否执行软件升级流程和/或执行软件升级流程的时间的升级模式;
处理模块,用于所述收发模块从所述服务器获取升级包后,根据所述目标升级模式执行所述终端的软件升级流程。
26.根据权利要求25所述的终端,其特征在于,当所述目标升级模式为终端决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取所述升级包的优先级;
根据所述升级包的优先级和所述终端中业务的业务优先级确定启动软件升级流程后,通过所述收发模块向所述服务器发送升级请求;
在所述收发模块从所述服务器接收到确认响应后,从所述服务器获取所述升级包并启动软件升级流程。
27.根据权利要求25所述的终端,其特征在于,当所述目标升级模式为协商决策升级模式时,所述处理模块用于:
通过所述收发模块从所述服务器获取升级包的优先级;
根据所述升级包的优先级、所述终端中业务的业务优先级和业务状态确定启动软件升级流程的等待时长后,通过所述收发模块向所述服务器发送携带所述等待时长的确认响应;
在计时时长超过所述等待时长后,通过所述收发模块从所述服务器获取所述升级包并执行所述软件升级流程。
28.根据权利要求25所述的终端,其特征在于,当所述目标升级模式为服务器决策升级模式时,所述处理模块用于:
通过所述收发模块向所述服务器发送所述终端中业务的业务状态信息,所述业务状态信息用于所述服务器确定所述终端中业务的业务优先级或业务状态中的至少一项;
在所述收发模块从所述服务器接收到用于指示所述终端停止所述业务的指示信息后,通过所述收发模块从所述服务器获取所述升级包并执行所述终端的软件升级流程。
29.一种计算机装置,其特征在于,所述计算机装置包括:
至少一个处理器、存储器和收发器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行如权利要求1-10中任一项所述的方法,或者执行如权利要求11-14中任一项所述的方法。
30.一种计算机存储介质,其特征在于,其包含指令,当其在计算机上运行时,使得计算机执行如权利要求1-10中任一项所述的方法,或者执行如权利要求11-14中任一项所述的方法。
CN201810146366.8A 2018-02-12 2018-02-12 一种软件升级管理的方法、服务器、终端、装置及存储介质 Active CN110162314B (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201810146366.8A CN110162314B (zh) 2018-02-12 2018-02-12 一种软件升级管理的方法、服务器、终端、装置及存储介质
PCT/CN2019/073597 WO2019154172A1 (zh) 2018-02-12 2019-01-29 一种软件升级管理的方法、服务器、终端、装置及存储介质
EP19751716.2A EP3745260A4 (en) 2018-02-12 2019-01-29 PROCEDURES FOR MANAGING SOFTWARE UPDATES, SERVER, TERMINAL DEVICE, DEVICE AND STORAGE MEDIUM
KR1020207026194A KR102441236B1 (ko) 2018-02-12 2019-01-29 소프트웨어 업데이트 관리 방법, 서버, 단말기, 장치, 및 저장 매체
JP2020542946A JP7419239B2 (ja) 2018-02-12 2019-01-29 ソフトウェアアップグレード管理方法、サーバ、端末、装置及び記憶媒体
US16/990,512 US11645063B2 (en) 2018-02-12 2020-08-11 Software upgrade management method, server, terminal, apparatus, and storage medium
JP2022177600A JP7419482B2 (ja) 2018-02-12 2022-11-04 ソフトウェアアップグレード管理方法、サーバ、端末、装置及び記憶媒体
US18/192,132 US11809855B2 (en) 2018-02-12 2023-03-29 Software upgrade management method, server, terminal, apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810146366.8A CN110162314B (zh) 2018-02-12 2018-02-12 一种软件升级管理的方法、服务器、终端、装置及存储介质

Publications (2)

Publication Number Publication Date
CN110162314A CN110162314A (zh) 2019-08-23
CN110162314B true CN110162314B (zh) 2022-03-29

Family

ID=67549225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810146366.8A Active CN110162314B (zh) 2018-02-12 2018-02-12 一种软件升级管理的方法、服务器、终端、装置及存储介质

Country Status (6)

Country Link
US (2) US11645063B2 (zh)
EP (1) EP3745260A4 (zh)
JP (2) JP7419239B2 (zh)
KR (1) KR102441236B1 (zh)
CN (1) CN110162314B (zh)
WO (1) WO2019154172A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162314B (zh) * 2018-02-12 2022-03-29 华为云计算技术有限公司 一种软件升级管理的方法、服务器、终端、装置及存储介质
CN110737453A (zh) * 2019-10-17 2020-01-31 北京智芯微电子科技有限公司 安全芯片的升级方法、装置及安全芯片
CN110764805B (zh) * 2019-10-28 2024-01-23 腾讯科技(深圳)有限公司 客户端无感升级的方法、装置、终端及存储介质
CN111414181B (zh) * 2020-03-19 2023-11-14 中诚信征信有限公司 网络产品的服务升级方法、装置、服务器及存储介质
CN112099820A (zh) * 2020-08-24 2020-12-18 华帝股份有限公司 一种ota升级方法、系统及智能设备
CN112527347B (zh) * 2020-11-28 2024-03-29 武汉蓝星科技股份有限公司 电子设备升级方法及系统
CN112925541A (zh) * 2021-02-22 2021-06-08 西安巴比特信息科技有限公司 一种物联网燃气表ota云端升级方法
CN112994939B (zh) * 2021-02-23 2022-02-18 合肥师范学院 一种物联网设备软件远程自动升级方法及系统

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000047269A (ko) * 1998-12-31 2000-07-25 강병호 멀티미디어 위성통신 시스템에서 가입자 소프트웨어 버전 확인시스템과, 이를 이용한 소프트웨어 자동 업그레이드 시스템
JP2001067232A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ソフトウエアの配信システムおよびソフトウエアの受信端末装置
US7100158B2 (en) 2002-04-30 2006-08-29 Toshiba Tec Kabushiki Kaisha Program management apparatus, program management system, and program management method
JP2008186294A (ja) * 2007-01-30 2008-08-14 Toshiba Corp ソフトウェア更新装置及びソフトウェア更新システム
JP2009211269A (ja) * 2008-03-03 2009-09-17 Canon Inc 放送受信装置、プログラム更新方法
CN101841456B (zh) * 2009-03-18 2012-07-25 中国电信股份有限公司 一种实现业务应用区分的方法和系统
CN101540980B (zh) 2009-04-24 2012-03-21 华为技术有限公司 业务优先级更新指示方法、业务优先级更新方法及装置
CN101854623B (zh) * 2010-06-11 2014-04-30 中兴通讯股份有限公司 一种m2m终端远程升级的系统和方法
JP2015038644A (ja) * 2010-06-30 2015-02-26 株式会社東芝 計算機および仮想マシンの更新方法
KR101349603B1 (ko) * 2010-11-02 2014-01-15 한국전자통신연구원 실시간 시스템에서 소프트웨어 업데이트 방법 및 이를 위한 장치
EP2560344B8 (en) 2011-08-18 2018-06-27 Apple Inc. Management of downloads from a network-based digital data repository based on network performance
CN102799447B (zh) * 2012-06-19 2016-12-21 优视科技有限公司 移动终端内部软件的更新方法及系统
JP2014006678A (ja) 2012-06-25 2014-01-16 Panasonic Corp 表示装置のプログラムの更新方法と、表示装置におけるプログラム更新装置
KR101401006B1 (ko) * 2012-09-03 2014-05-29 주식회사 시큐아이 고가용성 시스템에서 소프트웨어 업데이트를 수행하기 위한 방법 및 장치
EP3014428A4 (en) * 2013-06-28 2017-03-22 Samsung Electronics Co., Ltd. Method and apparatus for updating application
CN104518904A (zh) * 2013-09-30 2015-04-15 中兴通讯股份有限公司 一种移动终端应用批量管理方法及系统、升级服务器
CN104850416B (zh) * 2014-02-18 2019-01-08 中国移动通信集团公司 一种升级系统、方法、装置及云计算节点
US9891907B2 (en) * 2014-07-07 2018-02-13 Harman Connected Services, Inc. Device component status detection and illustration apparatuses, methods, and systems
US20160294614A1 (en) * 2014-07-07 2016-10-06 Symphony Teleca Corporation Remote Embedded Device Update Platform Apparatuses, Methods and Systems
CN105472465B (zh) * 2014-08-15 2019-11-29 南京中兴新软件有限责任公司 机顶盒升级的方法及装置
CN104363579A (zh) * 2014-10-31 2015-02-18 中国联合网络通信集团有限公司 应用软件在线实现方法及装置
US20160306616A1 (en) * 2015-04-20 2016-10-20 Microsoft Technology Licensing, Llc Firmware update by usb cc
CN104951335B (zh) 2015-05-22 2019-01-04 小米科技有限责任公司 应用程序安装包的处理方法及装置
JP2017045302A (ja) 2015-08-27 2017-03-02 キヤノン株式会社 配信システム、配信システムの制御方法
JP2017187889A (ja) * 2016-04-04 2017-10-12 京セラドキュメントソリューションズ株式会社 設定実行システムおよび設定実行プログラム
CN106789863B (zh) * 2016-04-25 2020-06-26 新华三技术有限公司 一种匹配规则升级方法及装置
CN106648725B (zh) * 2016-09-07 2020-04-21 努比亚技术有限公司 终端、服务器及配置文件升级方法
CN106533744A (zh) * 2016-10-25 2017-03-22 上海斐讯数据通信技术有限公司 一种基于服务器升级策略的路由器升级方法及系统
CN106572372B (zh) * 2016-11-14 2021-06-04 青岛海信宽带多媒体技术有限公司 一种机顶盒升级方法及机顶盒
CN110162314B (zh) * 2018-02-12 2022-03-29 华为云计算技术有限公司 一种软件升级管理的方法、服务器、终端、装置及存储介质
JP6832374B2 (ja) * 2019-02-22 2021-02-24 本田技研工業株式会社 ソフトウェア更新装置、車両及びソフトウェア更新方法
US10936296B2 (en) * 2019-05-07 2021-03-02 Microsoft Technology Licensing, Llc Automated application updates during operating system upgrades

Also Published As

Publication number Publication date
US11645063B2 (en) 2023-05-09
JP7419482B2 (ja) 2024-01-22
WO2019154172A1 (zh) 2019-08-15
KR102441236B1 (ko) 2022-09-06
US20230236823A1 (en) 2023-07-27
EP3745260A4 (en) 2021-03-17
JP7419239B2 (ja) 2024-01-22
JP2023017926A (ja) 2023-02-07
EP3745260A1 (en) 2020-12-02
JP2021513707A (ja) 2021-05-27
CN110162314A (zh) 2019-08-23
US20200379749A1 (en) 2020-12-03
US11809855B2 (en) 2023-11-07
KR20200116519A (ko) 2020-10-12

Similar Documents

Publication Publication Date Title
CN110162314B (zh) 一种软件升级管理的方法、服务器、终端、装置及存储介质
US8365162B2 (en) Method and device arrangement for managing the use profile of a terminal device
US10764805B2 (en) Signal strength measurement method and device
EP3557942A1 (en) Automatically enabling wireless communication
US9312948B2 (en) Method and apparatus for enabling wireless dockees to find and dock with a wireless docking host being used by another dockee
EP3783957B1 (en) Transmission path switching method, computer-readable storage medium and device
JP2020512734A (ja) 通信方法及び通信機器
CN111527767A (zh) 一种网络性能提升的方法及设备
CN113395690A (zh) 蓝牙设备自动连接方法、装置、设备及存储介质
CN112672372A (zh) 一种对应关系配置方法及装置
US20150072662A1 (en) Resumption of data connectivity between mobile devices via switching application
US11665728B2 (en) Multi-band simultaneous switching system and method of using the same
WO2022067544A1 (zh) 一种无线通信方法、终端设备及网络设备
CN110913022A (zh) 移动终端网络文件下载方法、装置、系统及存储介质
CN108462801B (zh) 一种获取流媒体数据的方法、装置及系统
CN111225374B (zh) 一种网络共享设置方法、装置、存储介质及终端
US20230309191A1 (en) Emergency call method and apparatus, storage medium, and terminal
WO2022057829A1 (zh) 信息发送方法、信息接收方法、装置及终端
US20240080654A1 (en) DYNAMIC MANAGEMENT OF A PROVISIONING eSIM FOR A WIRELESS DEVICE
WO2024082191A1 (zh) 软件更新方法及装置
CN110166537B (zh) 一种pdu会话建立方法、网络设备和用户终端
WO2022094852A1 (zh) 设备连接方法、装置、硬件设备及计算机可读存储介质
CN113433833A (zh) 一种家居设备的配置方法及装置
WO2024054333A1 (en) Dynamic management of a provisioning esim for a wireless device
CN115589626A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220215

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Applicant after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd.

GR01 Patent grant
GR01 Patent grant