WO2018077088A1 - 一种应用升级方法及装置 - Google Patents

一种应用升级方法及装置 Download PDF

Info

Publication number
WO2018077088A1
WO2018077088A1 PCT/CN2017/106672 CN2017106672W WO2018077088A1 WO 2018077088 A1 WO2018077088 A1 WO 2018077088A1 CN 2017106672 W CN2017106672 W CN 2017106672W WO 2018077088 A1 WO2018077088 A1 WO 2018077088A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
node
submitted
existing
data
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.)
Ceased
Application number
PCT/CN2017/106672
Other languages
English (en)
French (fr)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to PH1/2019/500935A priority Critical patent/PH12019500935B1/en
Priority to MYPI2019002341A priority patent/MY202747A/en
Publication of WO2018077088A1 publication Critical patent/WO2018077088A1/zh
Priority to US16/395,990 priority patent/US10678532B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/485Task life-cycle, e.g. stopping, restarting, resuming execution

Definitions

  • the present application relates to the field of computer technologies, and in particular, to an application upgrade method and apparatus.
  • a running application will always receive data that is backed by other data sources (such as systems, applications, clients, etc.).
  • the behavior data ie, viewing the article
  • the user A's friend information is queried; User A's behavior data and friend information are returned to the recommended application; thus, the recommendation application can recommend a message similar to "Your friend A has seen the XX article" based on the reflow data to the user A's friend.
  • Such applications require high availability due to the need to provide services to users in real time. However, an application will inevitably need to be upgraded.
  • A1 Manually stopping the old application to receive the returned data from the data source
  • A2 after manually confirming that the unprocessed data in the old application is processed, manually submitting a command to close the old application (ie, a kill command) to the application management module;
  • A3 After manually determining that the application management module completely closes the old application, manually submitting a command to start a new application to the application management module (ie, a start command);
  • A4 Wait for the application management module to start the new application.
  • the entire upgrade process cannot provide services to the user until the new application is started. Moreover, since all links require manual participation, the time required for the entire application upgrade is relatively large, as shown in Figure 1, the time between A1 and A2 is more than 4 minutes, the time between A2 and A3 is more than 3 minutes, and A3 is waiting for A4. The elapsed time is more than 3 minutes, and the entire upgrade process takes more than 10 minutes.
  • the application upgrade method and device provided by the present application solve the problem that the application upgrade in the prior art is time consuming.
  • An application upgrade method according to an embodiment of the present application, where the method is applied to an application management module, where the method includes:
  • the preset close command is triggered to invoke the end function of each node in the existing application
  • the preset close command is triggered, and the end function of each node in the existing application is invoked, which specifically includes:
  • a preset close command is triggered, thereby calling the end function of each node in the existing application.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • the end identifier is broadcast to all the downstream nodes of the current node;
  • the next node is determined as the current node, and the step of performing the processing of the data in the current node and transmitting to the downstream node is returned;
  • the root node In the case that the current node is the last node, the root node returns execution completion information to the application management module, and waits for the application management module to reclaim the process corresponding to each node.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • An application upgrading apparatus according to an embodiment of the present application, where the apparatus is applied to an application management module, where the apparatus includes:
  • Calling unit in the case that the submitted application and the existing application have duplicate names, triggering a preset close command, thereby calling an end function of each node in the existing application;
  • the recovery unit recovers the process occupied by each node when receiving the execution completion information returned by the existing application
  • the startup unit starts a preset startup command when the collection is completed, thereby starting a process corresponding to each node in the submitted application.
  • the calling unit specifically includes:
  • Determining a sub-unit in the case that the submitted application and the existing application have the same name, determining whether the submitted upgrade command for the existing application is received;
  • the calling subunit upon receiving the submitted upgrade command for the existing application, triggers a preset close command, thereby invoking an end function of each node in the existing application.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • a device for shutting down is applied to an application to be upgraded, and the device includes:
  • Processing the data unit processing the data in the current node and transmitting to the downstream node;
  • the broadcast identification unit broadcasts the end identifier to all the downstream child nodes of the current node after the data in the current node is processed and the end identifier broadcasted by all the upstream nodes is received;
  • the control unit determines the next node as the current node and inputs the data into the processing data unit;
  • the root node returns execution completion information to the application management module, and waits for the application management module to collect the process corresponding to each node.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • the application management module (TM) is modified, so that the application management module can allow the user to submit the application with the duplicate name.
  • the existing duplicate application can be automatically upgraded. In this way, the time-consuming problems caused by human intervention in the application upgrade process in the prior art are avoided, thereby greatly reducing the time consumed by the application upgrade.
  • the embodiment of the present application further modifies the end process of the application, so that any node in the processed data and the end identifier broadcasted by all the upstream nodes need to broadcast the end identifier to all downstream nodes;
  • the root node can return the execution completion information to the application management module, and wait for the application management module to reclaim the process corresponding to each node.
  • the identification it is ensured that the data in each node of the application is processed, the integrity of the data processing is ensured, and the situation that may be missed when the data processing is completed is avoided, and the application is greatly reduced, thereby greatly reducing the application. The time it takes to upgrade.
  • FIG. 2 is a flowchart of an application upgrade method according to an embodiment of the present application
  • FIG. 3 is a schematic diagram of prompt information provided by an embodiment of the present application.
  • FIG. 5 is a flowchart of a method for closing an application provided by an embodiment of the present application.
  • FIG. 6 is a hardware structural diagram of a device where an application upgrading apparatus provided by the present application is located;
  • FIG. 7 is a schematic diagram of a module of an application upgrading apparatus according to an embodiment of the present application.
  • FIG. 8 is a hardware structural diagram of a device for shutting down an application device provided by the present application.
  • FIG. 9 is a schematic diagram of a module for shutting down an application device according to an embodiment of the present application.
  • first, second, third, etc. may be used to describe various information in this application, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other.
  • first information may also be referred to as the second information without departing from the scope of the present application.
  • second information may also be referred to as the first information.
  • word "if” as used herein may be interpreted as "when” or “when” or “in response to a determination.”
  • Storm is an open source distributed fault-tolerant real-time computing system that uses Storm to reduce the complexity of parallel batch processing of data.
  • Storm is used in systems that process in real time.
  • JStorm is a system that re-implements Storm-like classes in Java. JStorm inherits all the benefits of Storm, and JStorm is more powerful, stable, and better than Storm.
  • JStorm applications can be deployed in the system's Application Management Module (Topology Manager, TM). JStorm applications and application management modules can communicate with each other and complete application upgrades.
  • Topic Manager Topic Manager
  • JStorm applications and application management modules can communicate with each other and complete application upgrades.
  • FIG. 2 is a flowchart of an application upgrade method according to an embodiment of the present application. The embodiment is described from the application management module side, and includes the following steps:
  • Step 110 Obtain an application name of the submitted application.
  • the user is allowed to submit an application with the same name in the application management module.
  • the application management module may acquire an application name of the submitted application after the user submits the application.
  • Step 120 In the case that the submitted application and the existing application are duplicated, the preset close command is triggered, thereby calling the end function of each node in the existing application.
  • the application manager automatically enters the upgrade process, that is, triggers the preset shutdown command. , thereby calling the end function of each node in the existing application.
  • the end function is used by the node to process the unprocessed data and wait for the process corresponding to the node to be recovered.
  • Step 130 Recover the process occupied by each node when receiving the execution completion information returned by the existing application.
  • the application management module needs to wait for each node in the existing application to process the unprocessed data.
  • Step 140 In the case that the recycling is completed, a preset startup command is triggered, thereby starting the The process corresponding to each node in the application is submitted.
  • the application management module reclaims the process occupied by all the nodes of the existing application, it indicates that the existing application has been completely closed, and then the submitted application may be started;
  • a preset startup command is triggered, thereby starting a process corresponding to each node in the submitted application.
  • the application management module is modified, so that the application management module can allow the user to submit the application with the duplicate name.
  • the existing duplicate application can be automatically upgraded.
  • the time taken for the application upgrade can be greatly reduced (it can be shortened to about 3 minutes), and the problem of requiring more human intervention in the application upgrade process in the prior art is avoided.
  • the application management module automatically upgrades the existing duplicate application, that is, closes the old application (existing application) and starts the new application (submitted application) as long as it detects that the submitted application has a duplicate name.
  • the application upgrade time can be greatly shortened, in actual applications, the submitted application is manually operated, and the human operation often has many uncertain factors.
  • the application submitted by the user is duplicated, it is not an upgrade of the old application. Just name another application that is the same.
  • the application upgrade method provided by the above embodiment directly upgrades the old application, and thus an upgrade error occurs.
  • the step 120 may specifically include the following steps:
  • a preset close command is triggered, thereby calling the end function of each node in the existing application.
  • the application management module when the application management module detects the submission of the application duplicate name, compared with the above embodiment, It does not directly upgrade existing applications, but needs to be determined by the user. After the user determines, an upgrade command can be returned.
  • the application management module triggers the preset close command only when receiving the submitted upgrade command for the existing application, thereby calling the end function of each node in the existing application.
  • the application management module may output a prompt message for determining whether you are upgrading the application, and may also display the duplicated existing application details and the duplicated submission application details. .
  • the application management module is modified, so that the application management module can allow the user to submit the application with the duplicate name, and the two commands that need to be manually submitted are simplified into one upgrade command.
  • the problem in the previous embodiment is avoided by requiring the user to submit an upgrade command, and the time-consuming problem caused by the human participation in the application upgrade process in the prior art can be avoided, thereby greatly reducing the application. The time it takes to upgrade.
  • the application upgrade method described in this application can be applied in a JStorm scenario, that is, the application includes a JStorm application, and correspondingly, the process includes a jvm process.
  • each processing step can be regarded as one node.
  • each node will correspond to a process.
  • a node connected to a data source may be referred to as a root node (spout), and other nodes may be referred to as a child node (bolt).
  • node 1 is the root node
  • nodes 2, 3, and 4 are child nodes.
  • Each data is processed in the order of the nodes.
  • FIG. 5 is a flowchart of a method for shutting down an application according to an embodiment of the present application.
  • the embodiment is described from the application side to be upgraded, and includes the following steps:
  • Step 210 After the end function of the node is invoked by the application management module, stop the root node from receiving the reflowed data, and determine the root node as the current node.
  • the root node connects to the data source, and needs to stop when the application is closed.
  • the root node receives the data backflowed by the data source.
  • Step 220 Process data in the current node and send it to the downstream node.
  • the unprocessed data in the current node needs to be processed, and the processed data is sent to the downstream node.
  • the data processed by the root node 1 in FIG. 4 needs to be sent to the downstream node, that is, the node 2.
  • Step 230 After the data in the current node is processed and the end identifier of all upstream nodes is received, the end identifier is broadcast to all the downstream nodes of the current node.
  • the end identifier is used to indicate that the data processing in the node is completed. For example, node 2 broadcasts the end identifier, indicating that the data in node 2 has been processed.
  • the current node After the current node processes the data, it needs to determine whether the end identifier of all upstream nodes is received. After the data in the current node is processed and the end identifier of all upstream nodes is received, all the downstream nodes of the current node are sent. The node broadcasts the end identifier.
  • Step 240 In the case that the current node has the next node, the next node is determined as the current node, and the process returns to step 220.
  • Step 250 In the case that the current node is the last node, the root node returns execution completion information to the application management module, and waits for the application management module to recover the process corresponding to each node.
  • the root node may be notified, and then the root node returns execution completion information to the application management module, thereby waiting for the application management module to recover. The process corresponding to each node.
  • the end process of the application is modified so that any node in the processed data and the end identifier of all upstream nodes are broadcasted, and the end identifier needs to be broadcast to all downstream nodes;
  • the root node can return the execution completion information to the application management module, and wait for the application management module to reclaim the process corresponding to each node.
  • the identification it is ensured that the data in each node of the application is processed, the integrity of the data processing is ensured, and the situation that may be missed when the data processing is completed is avoided, and the application is greatly reduced, thereby greatly reducing the application. The time it takes to upgrade.
  • the application management module and the application itself can be automatically upgraded, and the entire process does not require manual participation, thereby reducing the time required for application upgrade. purpose.
  • the closed application method described in this application can be applied in a JStorm scenario, that is, the application includes a JStorm application, and correspondingly, the process includes a jvm process.
  • the present application further provides an embodiment of an application upgrade device.
  • An embodiment of the application application upgrading apparatus of the present application can be applied to an application management module.
  • the device embodiment may be implemented by software, or may be implemented by hardware or a combination of hardware and software.
  • the processor of the device in which it is located reads the corresponding computer program instructions in the non-volatile memory into the memory.
  • FIG. 6 a hardware structure diagram of the device where the upgrade device is applied for the present application is implemented in addition to the processor, the network interface, the memory, and the non-volatile memory shown in FIG.
  • the device in which the device is located is usually based on the actual function of the application upgrade, and may include other hardware, and details are not described herein.
  • FIG. 7 is a block diagram of an application upgrading apparatus according to an embodiment of the present application. The embodiment is described from an application management module side.
  • the apparatus includes: an obtaining unit 310, a calling unit 320, a recycling unit 330, and a starting unit 340. .
  • the obtaining unit 310 acquires an application name of the submitted application.
  • the calling unit 320 in the case that the submitted application and the existing application are duplicated, trigger a preset close command, thereby calling an end function of each node in the existing application;
  • the collecting unit 330 recovers the process occupied by each node when receiving the execution completion information returned by the existing application
  • the startup unit 340 when the recovery is completed, triggers a preset startup command, thereby starting a process corresponding to each node in the submitted application.
  • the calling unit 320 specifically includes:
  • Determining a sub-unit in the case that the submitted application and the existing application have the same name, determining whether the submitted upgrade command for the existing application is received;
  • the calling subunit upon receiving the submitted upgrade command for the existing application, triggers a preset close command, thereby invoking an end function of each node in the existing application.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • the present application also provides an embodiment of closing the application device.
  • the embodiment of the application for closing the application device can be applied to the application to be upgraded.
  • the device embodiment may be implemented by software, or may be implemented by hardware or a combination of hardware and software. Taking the software implementation as an example, as a logical means, the processor of the device in which it is located reads the corresponding computer program instructions in the non-volatile memory into the memory. From the hardware level, as shown in FIG. 8 , a hardware structure diagram of the device where the application device is closed according to the present application is implemented in addition to the processor, the network interface, the memory, and the non-volatile memory shown in FIG. 8 .
  • the device in which the device is located is usually based on the actual function of the application, and may include other hardware, and details are not described herein.
  • FIG. 9 is a block diagram of a shutdown application device according to an embodiment of the present application. The embodiment is described from an application side to be upgraded.
  • the device includes: a stop receiving unit 410, a processing data unit 420, and a broadcast identification unit 430.
  • the control unit 440 and the return information unit 450 are included in the shutdown application device.
  • Stopping the receiving unit 410 after the application management module invokes the end function of the node, stopping the root node from receiving the reflowed data, and determining the root node as the current node;
  • Processing data unit 420 processing data in the current node and transmitting to the downstream node;
  • the broadcast identification unit 430 broadcasts the end identifier to all the downstream nodes of the current node after the data in the current node is processed and the end identifier broadcasted by all the upstream nodes is received;
  • the control unit 440 determines the next node as the current node and inputs it into the processing data unit;
  • the root node when the current node is the last node, the root node returns execution completion information to the application management module, and waits for the application management module to collect the process corresponding to each node.
  • the application includes a JStorm application
  • the process includes a jvm process.
  • the application management module (TM) is modified, so that the application management module can allow the user to submit a duplicate application.
  • the existing duplicate application can be automatically upgraded. In this way, the time-consuming problems caused by human intervention in the application upgrade process in the prior art are avoided, thereby greatly reducing the time consumed by the application upgrade.
  • the embodiment of the present application further modifies the end process of the application, so that any node in the processed data and the end identifier broadcasted by all the upstream nodes need to broadcast the end identifier to all downstream nodes;
  • the root node can return the execution completion information to the application management module, and wait for the application management module to reclaim the process corresponding to each node.
  • the identification it is ensured that the data in each node of the application is processed, the integrity of the data processing is ensured, and the situation that may be missed when the data processing is completed is avoided, and the application is greatly reduced, thereby greatly reducing the application. The time it takes to upgrade.
  • the device embodiment since it basically corresponds to the method embodiment, reference may be made to the partial description of the method embodiment.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie may be located A place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the objectives of the present application. Those of ordinary skill in the art can understand and implement without any creative effort.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

一种应用升级方法及装置,所述方法包括:获取被提交应用的应用名(110);在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数(120);在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程(130);在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程(140)。应用本方法,应用管理模块在检测到用户提交了重名应用时,可以自动地对已存在的应用进行升级,由于无需人为参与,所以减少了应用升级所消耗的时间。

Description

一种应用升级方法及装置 技术领域
本申请涉及计算机技术领域,尤其涉及一种应用升级方法及装置。
背景技术
一个系统提供给用户的各种服务其实是由对应的各种应用来支持的。
通常,运行中的应用会一直接收其它数据源(如系统、应用、客户端等)回流的数据。以推荐场景为例,用户A查看了一篇文章,那么该行为数据(即查看这篇文章)就会通过日志回流到系统中,该系统解析日中后,查询用户A的好友信息;接着将用户A的行为数据和好友信息回流到推荐应用中;这样,推荐应用就可以基于回流数据给用户A的好友推荐类似于“您的好友A看过了XX文章”的信息。这种应用由于需要实时地给用户提供服务,所以对可用性要求较高。但是,一个应用不可避免的都会需要进行升级。
现有技术中,应用升级流程如图1所示,在升级过程中,各个环节都需要人工确认后进行操作,包括:
A1:人工停止老应用从数据源接收回流的数据;
A2:在人工确认所述老应用内未处理的数据处理完毕后,人工向应用管理模块提交关闭所述老应用的命令(即kill命令);
A3:在人工确定应用管理模块完全关闭所述老应用后,人工向应用管理模块提交启动新应用的命令(即start命令);
A4:等待应用管理模块启动完毕所述新应用。
如上所述,由于应用是停机升级,所以整个升级过程直到新应用启动完毕之前都无法给用户提供服务。而且,由于各个环节都需要人工参与,所以整个应用升级所需时间比较多,如图1中A1到A2之间耗时大于4分钟,A2到A3之间耗时大于3分钟,A3待A4之间耗时大于3分钟,整个升级过程耗时需要10分钟以上。
综上所述,现有技术中存在有应用升级耗时较多的问题。
发明内容
本申请提供的一种应用升级方法及装置,以解决现有技术中应用升级耗时较多的问题。
根据本申请实施例提供的一种应用升级方法,所述方法应用于应用管理模块,所述方法包括:
获取被提交应用的应用名;
在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数;
在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程;
在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
可选的,在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数,具体包括:
在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
可选的,所述应用包括JStorm应用;
所述进程包括jvm进程。
根据本申请实施例提供的一种关闭应用方法,所述方法应用于待升级的应用,所述方法包括:
在被应用管理模块调用节点的结束函数后,停止根节点接收回流的数据,并将所述根节点确定为当前节点;
处理当前节点内的数据并发送到下游节点;
在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识;
在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点,返回执行所述处理当前节点内的数据并发送到下游节点的步骤;
在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
可选的,所述应用包括JStorm应用;
所述进程包括jvm进程。
根据本申请实施例提供的一种应用升级装置,所述装置应用于应用管理模块,所述装置包括:
获取单元,获取被提交应用的应用名;
调用单元,在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数;
回收单元,在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程;
启动单元,在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
可选的,所述调用单元,具体包括:
判断子单元,在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
调用子单元,在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
可选的,所述应用包括JStorm应用;
所述进程包括jvm进程。
根据本申请实施例提供的一种关闭应用装置,所述装置应用于待升级的应用,所述装置包括:
停止接收单元,在被应用管理模块调用节点的结束函数后,停止根节点 接收回流的数据,并将所述根节点确定为当前节点;
处理数据单元,处理当前节点内的数据并发送到下游节点;
广播标识单元,在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识;
控制单元,在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点后输入到所述处理数据单元中;
返回信息单元,在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
可选的,所述应用包括JStorm应用;
所述进程包括jvm进程。
本申请实施例中,对应用管理模块(Topology Manager,TM)进行改造,使得所述应用管理模块可以允许用户提交重名的应用。如此,在所述应用管理模块检测到用户提交了重名应用时,可以自动地对已存在的重名应用进行升级。这样,避免了现有技术中应用升级过程中需要人为参与所造成的耗时较多的问题,从而大大减少了应用升级所消耗的时间。本申请实施例还对应用的结束流程进行改造,使得任意节点在处理完毕其内的数据以及在接收到全部上游节点广播的结束标识的情况下,需要向下游全部节点广播结束标识;在全部节点都处理完数据后,根节点才可以向应用管理模块返回执行完毕信息,从而等待应用管理模块回收各节点对应的进程。如此,通过结束标识可以确保应用的每一个节点内的数据都处理完毕,保证了数据处理的完整性,避免人为确定数据处理完毕时可能遗漏的情况,而且由于没有人为参与,因此大大减少了应用升级所消耗的时间。
附图说明
图1是现有技术中应用升级方法的流程图;
图2是本申请一实施例提供的应用升级方法的流程图;
图3是本申请一实施例提供的提示信息示意图;
图4是本申请一实施例提供的应用中的各节点示意图;
图5是本申请一实施例提供的关闭应用方法的流程图;
图6是本申请提供的应用升级装置所在设备的一种硬件结构图;
图7是本申请一实施例提供的应用升级装置的模块示意图;
图8是本申请提供的关闭应用装置所在设备的一种硬件结构图;
图9是本申请一实施例提供的关闭应用装置的模块示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以下举例说明本申请实施例可以应用的JStorm的场景中。
Storm是一种开源的分布式容错实时计算系统,使用Storm可以降低并行批量处理数据的复杂度。一般的,Storm被用在对实时处理的系统中。
JStorm是用Java重新实现了类Storm的系统。JStorm继承了Storm的所有优点,并且JStorm比Storm更强大、更稳定、性能更好。
一般的,JStorm应用可以部署在系统的应用管理模块中(Topology Manager,TM)。JStorm应用与应用管理模块之间可以进行通信,并完成应用升级等功能。
请参见图2,为本申请一实施例提供的应用升级方法的流程图,该实施例从应用管理模块侧进行描述,包括以下步骤:
步骤110:获取被提交应用的应用名。
本实施例中,通过对应用管理模块进行改造,允许用户在应用管理模块中提交同名的应用。
所述应用管理模块在用户提交应用后,可以获取被提交应用的应用名。
步骤120:在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
本实施例中,如果用户提供的应用与已存在的应用重名,则说明需要对已存在的重名应用进行升级,并且所述应用管理器自动地进入升级流程,即触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
所述结束函数用于节点处理未处理完毕的数据进而等待回收该节点对应的进程。
步骤130:在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程。
本实施例中,应用管理模块在调用所述已存在的应用中各节点的结束函数后,需要等待所述已存在的应用中各节点处理未处理完毕的数据。
一般的,已存在的应用处理完数据后,会返回一个执行完毕信息;所以应用管理模块在接收到所述已存在的应用返回的执行完毕信息的情况下,则说明所述已存在的应用内未处理完的数据已经都处理完毕了,因此,可以回收所述各节点占用的进程。
步骤140:在回收完毕的情况下,触发预设的启动命令,从而启动所述 被提交应用中各节点对应的进程。
本实施例中,应用管理模块在回收了所述已存在的应用所有节点占用的进程后,则说明所述已存在的应用已经完全关闭了,接着可以启动所述被提交应用了;
具体地,在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
在等待所述被提交应用中各节点对应的进程都启动后,则说明所述被提交应用已经启动。如此,整个应用升级过程结束。
通过本实施例,对应用管理模块进行改造,使得所述应用管理模块可以允许用户提交重名的应用。如此,在所述应用管理模块检测到用户提交了重名应用时,可以自动地对已存在的重名应用进行升级。这样,大大减少了应用升级所消耗的时间(可以缩短到3分钟左右),避免了现有技术中应用升级过程中需要人为参与所造成的耗时较多的问题。
上述实施例中,应用管理模块只要检测到提交应用出现重名时,会自动地对已存在的重名应用进行升级,即关闭老应用(已存在的应用),启动新应用(提交的应用)。这样,虽然可以大大缩短应用升级时间,但是在实际应用中,提交应用是人为操作的,而人为操作往往具有很多不确定因素,例如用户提交的应用虽然重名,但并不是升级老应用的,只是命名相同的另一个应用。这种情况下,通过上述实施例提供的应用升级方法,就会直接对老应用进行升级,这样就会出现升级错误。
为了解决这样问题,在本申请的另一个实施例中,所述步骤120,具体可以包括如下步骤:
在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
本实施例中与上述实施例相比,应用管理模块在检测到提交应用重名时, 不会直接对已存在的应用进行升级,而是需要经过用户确定,用户确定后,可以返回一个升级命令。应用管理模块只有在接收到提交的针对所述已存在的应用的升级命令的情况下,才会触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
如图3所示的提示信息示意图中,应用管理模块可以输出一个用于确定的提示信息“您确定对应用进行升级吗”,还可以显示重名的已存在应用详情和重名的提交应用详情。
通过本实施例,对应用管理模块进行改造,使得所述应用管理模块可以允许用户提交重名的应用,并且将原本需要人工提交的两个命令简化为一个升级命令。如此,通过需要用户提交一个升级命令避免了上一实施例中的问题,而且依然可以避免了现有技术中应用升级过程中需要人为参与所造成的耗时较多的问题,从而大大减少了应用升级所消耗的时间。
在本申请所述的应用升级方法可以应用在JStorm场景中,即所述应用包括JStorm应用,而对应的,所述进程包括jvm进程。
一般的,应用处理输入的数据时,可以分为多个处理步骤,每一个处理步骤都可以视为一个节点。通常,每一个节点都会对应一个进程。其中,与数据源连接的节点可以称为根节点(spout),其它的节点可以称为子节点(bolt)。如图4所示的节点示意图中,节点1即为根节点,节点2、3、4、即为子节点。每一个数据都是按照节点的先后顺序处理的。
现有技术中,在关闭老应用时,需要人工确定老应用内未处理的数据处理完毕。然而,人工确定并不准确,而且需要依靠一定经验来判断,无法保证老应用内未处理的数据完全处理。
为了解决这一问题,请参见图5,为本申请一实施例提供的关闭应用方法的流程图,该实施例从待升级的应用侧进行描述,包括以下步骤:
步骤210:在被应用管理模块调用节点的结束函数后,停止根节点接收回流的数据,并将所述根节点确定为当前节点。
本实施例中,如前所述,根节点了连接数据源,在关闭应用时,需要停 止根节点接收数据源回流的数据。
步骤220:处理当前节点内的数据并发送到下游节点。
本实施例中,当前节点内未处理的数据需要进行处理,并将处理的数据发送到下游节点,图4中根节点1处理的数据,需要发送到下游节点即节点2。
步骤230:在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识。
本实施例中,所述结束标识用于表示节点内的数据处理完毕。例如节点2广播结束标识,说明节点2内的数据处理完毕。
当前节点将数据处理完毕后,需要判断是否接收到上游全部节点广播的结束标识;在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识。
步骤240:在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点,返回执行步骤220。
步骤250:在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
本实施例中,在最后一个节点接收到上游全部节点广播的结束标识后,可以通知根节点,然后,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
通过本实施例,对应用的结束流程进行改造,使得任意节点在处理完毕其内的数据以及在接收到全部上游节点广播的结束标识的情况下,需要向下游全部节点广播结束标识;在全部节点都处理完数据后,根节点才可以向应用管理模块返回执行完毕信息,从而等待应用管理模块回收各节点对应的进程。如此,通过结束标识可以确保应用的每一个节点内的数据都处理完毕,保证了数据处理的完整性,避免人为确定数据处理完毕时可能遗漏的情况,而且由于没有人为参与,因此大大减少了应用升级所消耗的时间。
本实施例中,通过对应用管理模块和应用升级流程的改造,在应用升级时,可以由应用管理模块和应用本身自动地完成升级,整个过程无需人工参与,实现了减少应用升级所需时间的目的。
在本申请所述的关闭应用方法可以应用在JStorm场景中,即所述应用包括JStorm应用,而对应的,所述进程包括jvm进程。
与前述应用升级方法实施例相对应,本申请还提供了一种应用升级装置的实施例。
本申请应用升级装置的实施例可以应用在应用管理模块。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本申请应用升级装置所在设备的一种硬件结构图,除了图6所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据该应用升级的实际功能,还可以包括其他硬件,对此不再赘述。
参见图7,为本申请一实施例提供的应用升级装置的模块图,该实施例从应用管理模块侧进行描述,所述装置包括:获取单元310、调用单元320、回收单元330和启动单元340。
其中,获取单元310,获取被提交应用的应用名;
调用单元320,在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数;
回收单元330,在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程;
启动单元340,在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
在一个可选的实现方式中:
所述调用单元320,具体包括:
判断子单元,在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
调用子单元,在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
在一个可选的实现方式中:
所述应用包括JStorm应用;
所述进程包括jvm进程。
与前述关闭应用方法实施例相对应,本申请还提供了一种关闭应用装置的实施例。
本申请关闭应用装置的实施例可以应用在待升级的应用。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图8所示,为本申请关闭应用装置所在设备的一种硬件结构图,除了图8所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据该关闭应用的实际功能,还可以包括其他硬件,对此不再赘述。
参见图9,为本申请一实施例提供的关闭应用装置的模块图,该实施例从待升级的应用侧进行描述,所述装置包括:停止接收单元410、处理数据单元420、广播标识单元430、控制单元440和返回信息单元450。
其中,停止接收单元410,在被应用管理模块调用节点的结束函数后,停止根节点接收回流的数据,并将所述根节点确定为当前节点;
处理数据单元420,处理当前节点内的数据并发送到下游节点;
广播标识单元430,在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识;
控制单元440,在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点后输入到所述处理数据单元中;
返回信息单元450,在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
在一个可选的实现方式中:
所述应用包括JStorm应用;
所述进程包括jvm进程。
综上所述,本申请实施例中,对应用管理模块(Topology Manager,TM)进行改造,使得所述应用管理模块可以允许用户提交重名的应用。如此,在所述应用管理模块检测到用户提交了重名应用时,可以自动地对已存在的重名应用进行升级。这样,避免了现有技术中应用升级过程中需要人为参与所造成的耗时较多的问题,从而大大减少了应用升级所消耗的时间。本申请实施例还对应用的结束流程进行改造,使得任意节点在处理完毕其内的数据以及在接收到全部上游节点广播的结束标识的情况下,需要向下游全部节点广播结束标识;在全部节点都处理完数据后,根节点才可以向应用管理模块返回执行完毕信息,从而等待应用管理模块回收各节点对应的进程。如此,通过结束标识可以确保应用的每一个节点内的数据都处理完毕,保证了数据处理的完整性,避免人为确定数据处理完毕时可能遗漏的情况,而且由于没有人为参与,因此大大减少了应用升级所消耗的时间。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (10)

  1. 一种应用升级方法,其特征在于,所述方法应用于应用管理模块,所述方法包括:
    获取被提交应用的应用名;
    在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数;
    在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程;
    在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
  2. 根据权利要求1所述的方法,其特征在于,在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数,具体包括:
    在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
    在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
  3. 根据权利要求1所述的方法,其特征在于,所述应用包括JStorm应用;
    所述进程包括jvm进程。
  4. 一种关闭应用方法,其特征在于,所述方法应用于待升级的应用,所述方法包括:
    在被应用管理模块调用节点的结束函数后,停止根节点接收回流的数据,并将所述根节点确定为当前节点;
    处理当前节点内的数据并发送到下游节点;
    在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识 后,向所述当前节点的下游全部子节点广播结束标识;
    在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点,返回执行所述处理当前节点内的数据并发送到下游节点的步骤;
    在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
  5. 根据权利要求1所述的方法,其特征在于,所述应用包括JStorm应用;
    所述进程包括jvm进程。
  6. 一种应用升级装置,其特征在于,所述装置应用于应用管理模块,所述装置包括:
    获取单元,获取被提交应用的应用名;
    调用单元,在所述被提交应用与已存在的应用重名的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数;
    回收单元,在接收到所述已存在的应用返回的执行完毕信息的情况下,回收所述各节点占用的进程;
    启动单元,在回收完毕的情况下,触发预设的启动命令,从而启动所述被提交应用中各节点对应的进程。
  7. 根据权利要求6所述的装置,其特征在于,所述调用单元,具体包括:
    判断子单元,在所述被提交应用与已存在的应用重名的情况下,判断是否接收到提交的针对所述已存在的应用的升级命令;
    调用子单元,在接收到提交的针对所述已存在的应用的升级命令的情况下,触发预设的关闭命令,从而调用所述已存在的应用中各节点的结束函数。
  8. 根据权利要求6所述的装置,其特征在于,所述应用包括JStorm应用;
    所述进程包括jvm进程。
  9. 一种关闭应用装置,其特征在于,所述装置应用于待升级的应用,所述装置包括:
    停止接收单元,在被应用管理模块调用节点的结束函数后,停止根节点接收回流的数据,并将所述根节点确定为当前节点;
    处理数据单元,处理当前节点内的数据并发送到下游节点;
    广播标识单元,在当前节点内的数据处理完毕并且接收到上游全部节点广播的结束标识后,向所述当前节点的下游全部子节点广播结束标识;
    控制单元,在当前节点存在下一个节点的情况下,将下一个节点确定为当前节点后输入到所述处理数据单元中;
    返回信息单元,在当前节点为最后一个节点的情况下,所述根节点向所述应用管理模块返回执行完毕信息,从而等待所述应用管理模块回收各节点对应的进程。
  10. 根据权利要求9所述的装置,其特征在于,所述应用包括JStorm应用;
    所述进程包括jvm进程。
PCT/CN2017/106672 2016-10-28 2017-10-18 一种应用升级方法及装置 Ceased WO2018077088A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PH1/2019/500935A PH12019500935B1 (en) 2016-10-28 2017-10-18 Method and apparatus for upgrading application
MYPI2019002341A MY202747A (en) 2016-10-28 2017-10-18 Method and apparatus for upgrading application
US16/395,990 US10678532B2 (en) 2016-10-28 2019-04-26 Method and apparatus for upgrading application

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610974024.6A CN106980515B (zh) 2016-10-28 2016-10-28 一种应用升级方法及装置
CN201610974024.6 2016-10-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/395,990 Continuation US10678532B2 (en) 2016-10-28 2019-04-26 Method and apparatus for upgrading application

Publications (1)

Publication Number Publication Date
WO2018077088A1 true WO2018077088A1 (zh) 2018-05-03

Family

ID=59340422

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/106672 Ceased WO2018077088A1 (zh) 2016-10-28 2017-10-18 一种应用升级方法及装置

Country Status (6)

Country Link
US (1) US10678532B2 (zh)
CN (1) CN106980515B (zh)
MY (1) MY202747A (zh)
PH (1) PH12019500935B1 (zh)
TW (1) TWI690849B (zh)
WO (1) WO2018077088A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980515B (zh) 2016-10-28 2020-04-14 阿里巴巴集团控股有限公司 一种应用升级方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140157251A1 (en) * 2012-12-04 2014-06-05 International Business Machines Corporation Software version management
CN105117265A (zh) * 2015-09-17 2015-12-02 北京金山安全软件有限公司 一种文件升级的方法、装置和终端
CN105335183A (zh) * 2014-08-06 2016-02-17 乐视致新电子科技(天津)有限公司 一种软件升级方法及系统
CN105528231A (zh) * 2016-01-21 2016-04-27 华中科技大学 一种基于中间辅助函数的软件动态升级方法及系统
CN105677433A (zh) * 2016-03-15 2016-06-15 深圳创维-Rgb电子有限公司 服务器程序热升级的方法及装置
CN106980515A (zh) * 2016-10-28 2017-07-25 阿里巴巴集团控股有限公司 一种应用升级方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7784044B2 (en) * 2002-12-02 2010-08-24 Microsoft Corporation Patching of in-use functions on a running computer system
US7886287B1 (en) * 2003-08-27 2011-02-08 Avaya Inc. Method and apparatus for hot updating of running processes
WO2007075846A2 (en) * 2005-12-19 2007-07-05 Propero Ltd. Method and system for providing virtualized application workspaces
US8935429B2 (en) * 2006-12-19 2015-01-13 Vmware, Inc. Automatically determining which remote applications a user or group is entitled to access based on entitlement specifications and providing remote application access to the remote applications
US9697042B2 (en) * 2010-07-30 2017-07-04 Sap Se Extensibility of business process and application logic
CN105824618A (zh) * 2016-03-10 2016-08-03 浪潮软件集团有限公司 一种关于Storm使用的实时消息处理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140157251A1 (en) * 2012-12-04 2014-06-05 International Business Machines Corporation Software version management
CN105335183A (zh) * 2014-08-06 2016-02-17 乐视致新电子科技(天津)有限公司 一种软件升级方法及系统
CN105117265A (zh) * 2015-09-17 2015-12-02 北京金山安全软件有限公司 一种文件升级的方法、装置和终端
CN105528231A (zh) * 2016-01-21 2016-04-27 华中科技大学 一种基于中间辅助函数的软件动态升级方法及系统
CN105677433A (zh) * 2016-03-15 2016-06-15 深圳创维-Rgb电子有限公司 服务器程序热升级的方法及装置
CN106980515A (zh) * 2016-10-28 2017-07-25 阿里巴巴集团控股有限公司 一种应用升级方法及装置

Also Published As

Publication number Publication date
CN106980515B (zh) 2020-04-14
TWI690849B (zh) 2020-04-11
TW201816605A (zh) 2018-05-01
US20190250904A1 (en) 2019-08-15
US10678532B2 (en) 2020-06-09
MY202747A (en) 2024-05-19
PH12019500935A1 (en) 2019-12-02
CN106980515A (zh) 2017-07-25
PH12019500935B1 (en) 2022-09-30

Similar Documents

Publication Publication Date Title
US12346723B2 (en) Task processing method, apparatus, and system based on distributed system
US8966318B1 (en) Method to validate availability of applications within a backup image
US9405630B2 (en) Methods and apparatus to perform site recovery of a virtual data center
CN105677433A (zh) 服务器程序热升级的方法及装置
US9983790B2 (en) System management controller and method of configuration file backup and recovery
JP2017529628A (ja) マルチテナントアプリケーションサーバ環境においてパッチングをサポートするためのシステムおよび方法
CN105607972B (zh) 一种异常修复的方法及装置
US9910733B2 (en) Transaction completion in a synchronous replication environment
CN105302676A (zh) 一种分布式文件系统的主备机制数据传输方法及装置
EP4418139A1 (en) Techniques to achieve cache coherency across distributed storage clusters
CN115495161B (zh) Bios选项修改的生效方法和装置、存储介质
CN108897646A (zh) 一种bios芯片的切换方法及基板管理控制器
CN111209265A (zh) 一种数据库切换方法和终端设备
CN116938711A (zh) 固件升级方法、装置、电子设备及存储介质
CN113032477A (zh) 基于gtid的长距离数据同步方法、装置及计算设备
CN107623581B (zh) 服务列表生成方法、装置及系统,获取、上报方法及装置
CN112612635A (zh) 一种应用程序多层级保护方法
CN114640709B (zh) 一种边缘节点的处理方法、装置及介质
CN112130889A (zh) 资源的管理方法和装置、存储介质、电子装置
CN111698558A (zh) 电视软件升级方法、电视终端及计算机可读存储介质
WO2018077088A1 (zh) 一种应用升级方法及装置
CN111090537B (zh) 集群启动方法、装置、电子设备及可读存储介质
CN108521342A (zh) 一种集群的管理方法及装置
CN106850354A (zh) 一种单点故障的处理方法及装置
CN106484460A (zh) 一种中大规模的存储集群系统的安装方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17864441

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17864441

Country of ref document: EP

Kind code of ref document: A1