CN114826886A - Application software disaster tolerance method and device and electronic equipment - Google Patents

Application software disaster tolerance method and device and electronic equipment Download PDF

Info

Publication number
CN114826886A
CN114826886A CN202210263372.8A CN202210263372A CN114826886A CN 114826886 A CN114826886 A CN 114826886A CN 202210263372 A CN202210263372 A CN 202210263372A CN 114826886 A CN114826886 A CN 114826886A
Authority
CN
China
Prior art keywords
application
client
cloud
communication connection
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210263372.8A
Other languages
Chinese (zh)
Other versions
CN114826886B (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.)
Alibaba China Co Ltd
Original Assignee
Alibaba China 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 Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN202210263372.8A priority Critical patent/CN114826886B/en
Publication of CN114826886A publication Critical patent/CN114826886A/en
Application granted granted Critical
Publication of CN114826886B publication Critical patent/CN114826886B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • H04L41/0661Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the application software disaster recovery method includes the steps that when a first application running on a client side reaches a preset switching condition, a second application running on a cloud side is connected to the client side through a second communication connection to replace the first application, and the second application is a cloud side version of the first application running on the cloud side. Therefore, according to the method, the second application of the cloud is accessed to the client to replace the first application to continue executing the program aiming at the condition that the first application running on the client meets the preset switching condition, and the fault maintenance time of the first application is saved. And through the second communication connection, the second application displays the display content generated by the cloud execution program on the display interface of the client, and the input information of the input interface of the client is also transmitted to the second application at the cloud, so that the problem that data transmission between the first application and the server is blocked when the first application reaches the preset switching condition is avoided.

Description

Application software disaster tolerance method and device and electronic equipment
Technical Field
The application relates to the technical field of computers, in particular to an application software disaster recovery method, and also relates to an application software disaster recovery device, electronic equipment and a computer storage medium.
Background
In the prior art, some software failures often occur in the application software running on the local terminal device during the running process, for example, a software crash failure occurs on the client, a communication connection failure occurs on a communication link between the client and a software server of the software, and the like. For the software fault, a software version is generally upgraded, and a communication link is waited to recover normal communication, or a maintenance mode such as maintenance by a professional is adopted.
However, the above-mentioned maintenance method for the software failure of the local software has the problems of long maintenance time, low maintenance efficiency, high maintenance professional degree, and the like.
Disclosure of Invention
The embodiment of the application provides an application software disaster recovery method, which is used for solving the problems of long maintenance time, low maintenance efficiency, high maintenance specialty and the like existing in a maintenance mode aiming at software faults in the prior art. The embodiment of the application also relates to an application software disaster recovery device, electronic equipment and a computer storage medium. The application also relates to another application software disaster recovery method and device, electronic equipment and computer storage medium, and also relates to an application software disaster recovery system.
The embodiment of the application provides an application software disaster recovery method, which is applied to a client and comprises the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
Optionally, the step of enabling the first application running on the client to reach the preset switching condition includes: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
Optionally, the detecting that the first application is in an abnormal state includes one or more of the following conditions: detecting that a first communication connection state between the first application and a software server providing services for the first application is in an abnormal connection state; detecting that the first application cannot be started normally; detecting that the first application is damaged; detecting that the first application is a software version with a serious problem; and receiving abnormal alarm information of the first application version.
Optionally, the detecting that the running state of the first application does not meet a preset application running state includes one or more of the following cases: detecting that the running speed of the first application does not meet a preset running speed threshold; detecting that the running state of the first application cannot meet the standard user experience of a user; detecting abnormal information of an operating system operated by the first application; detecting that abnormal communication connection exists between the first application and a geographical area where the first application is located.
Optionally, the detecting that the first communication connection between the first application and the software server providing the remote service for the first application is in an abnormal connection state includes: monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an offline state.
Optionally, the first application is connected to a software server providing services for the first application through a first communication connection, and the method further includes: acquiring a switching link instruction sent by the software server; and establishing a second communication connection with the second application for the client according to the switching link instruction.
Optionally, in the process that the second application accesses the client, the method includes: and the second application and the client perform data synchronization related to the first application.
Optionally, before the second application accesses the client, the method includes: and establishing a monitoring process for monitoring the running state of the first application.
Optionally, the monitoring process is implemented by using a Hook mechanism.
Optionally, the second application arranged in the cloud is accessed to the client, and is implemented by using an application program interface API.
Optionally, the accessing, to the client through a second communication connection, a second application arranged in the cloud in response to the first application running on the client reaching a preset switching condition includes: responding to a first application running on a client to reach a preset switching condition, and sending a first request for establishing communication connection to a cloud server; establishing a second communication connection with the cloud server; and the second communication connection transmits display content output after the second application of the cloud runs and input information provided by an input interface of the client.
The embodiment of the present application further provides an application software disaster recovery method, applied to a cloud server, including: receiving a first request of a first application of a successor client; in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization; and establishing a second communication connection with the client, sending display content output after the second application runs to the client through the second communication connection, and receiving input information provided by an input interface of the client.
Optionally, the method includes: sending a second request message for establishing a communication connection to a software server providing a remote service for the first application; receiving a response message sent by the software server; establishing a third communication connection with the software server according to the response message; the third communication connection is used for obtaining the software service required by the second application from the software server.
Optionally, the method includes: and the second application and the client perform data synchronization related to the first application.
An embodiment of the present application further provides an application software disaster recovery system, including: a client and a cloud server; the client runs a first application; the cloud server is loaded with a cloud version corresponding to the first application, namely a second application; the client executes the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; receiving display content generated by the second application executing program based on the second communication connection, and displaying the display content on a display interface; the input information of the client input interface is transmitted to a second application of the cloud end; the cloud server executes the following steps: receiving a first request of a first application of a successor client, transmitted over a second communication connection; in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization; sending the display content output after the second application runs to the client through the second communication connection; and receiving input information provided by an input interface of the client.
Optionally, the system comprises a software server, wherein the software server provides software service for the first application through a first communication connection; establishing a third communication connection with the cloud server according to the second request message sent by the cloud server; the third communication connection is used for obtaining the software service required by the second application from the software server.
An embodiment of the present application further provides an application software disaster recovery device, which is applied to a client, and includes: the access unit is used for responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; and the transmission unit is used for receiving display content generated by the second application executing program based on the second communication connection, displaying the display content on a display interface, and transmitting the input information of the client input interface to the second application at the cloud end.
Optionally, the step of enabling the first application running on the client to reach the preset switching condition includes: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
Optionally, the detecting that the first application is in an abnormal state includes one or more of the following conditions: detecting that a first communication connection state between the first application and a software server providing services for the first application is in an abnormal connection state; detecting that the first application cannot be started normally; detecting that the first application is damaged; detecting that the first application is a software version with a serious problem; and receiving abnormal alarm information of the first application version.
Optionally, the detecting that the running state of the first application does not meet a preset application running state includes one or more of the following cases: detecting that the running speed of the first application does not meet a preset running speed threshold; detecting that the running state of the first application cannot meet the standard user experience of a user; detecting abnormal information of an operating system operated by the first application; detecting that abnormal communication connection exists between the first application and a geographical area where the first application is located.
Optionally, the detecting that the first communication connection between the first application and the software server providing the remote service for the first application is in an abnormal connection state includes: monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an offline state.
Optionally, the first application is connected to a software server providing services for the first application through a first communication connection, and the apparatus is further configured to: acquiring a switching link instruction sent by the software server; and establishing a second communication connection with the second application for the client according to the switching link instruction.
Optionally, in the process that the second application accesses the client, the method includes: and the second application and the client perform data synchronization related to the first application.
Optionally, before the second application accesses the client, the method includes: and establishing a monitoring process for monitoring the running state of the first application.
Optionally, the monitoring process is implemented by using a Hook mechanism.
Optionally, the second application arranged in the cloud is accessed to the client, and is implemented by using an application program interface API.
Optionally, the accessing, to the client through a second communication connection, a second application arranged in the cloud in response to the first application running on the client reaching a preset switching condition includes: responding to a first application running on a client to reach a preset switching condition, and sending a first request for establishing communication connection to a cloud server; establishing a second communication connection with the cloud server; and the second communication connection transmits display content output after the second application of the cloud runs and input information provided by an input interface of the client.
An embodiment of the present application further provides an application software disaster recovery device, which is applied to a cloud server, and includes: a receiving unit, configured to receive a first request of a first application of a successor client; a starting unit, configured to start a second application in response to the first request; the second application is a cloud version of the first application running in a cloud through application virtualization; and the transmission unit is used for establishing a second communication connection with the client, sending the display content output after the second application is operated to the client through the second communication connection, and receiving the input information provided by the input interface of the client.
Optionally, the method includes: sending a second request message for establishing a communication connection to a software server providing a remote service for the first application; receiving a response message sent by the software server; establishing a third communication connection with the software server according to the response message; the third communication connection is used for obtaining the software service required by the second application from the software server.
Optionally, the method includes: and the second application and the client perform data synchronization related to the first application.
An embodiment of the present application further provides an electronic device, where the electronic device includes: a processor and a memory; the memory stores a computer program, and the processor executes the computer program and then executes the method.
An embodiment of the present application further provides a computer storage medium, where a computer program is stored, and the computer program is executed by a processor to perform the method.
Compared with the prior art, the method has the following advantages:
the embodiment of the application provides an application software disaster recovery method, which is applied to a client and comprises the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
According to the application software disaster recovery method provided by the embodiment of the application software disaster recovery method, when the first application running on the client side reaches the preset switching condition, the second application running on the cloud side is accessed to the client side through the second communication connection to replace the first application, and the second application is a cloud side version of the first application running on the cloud side. At this time, the generated display content obtained by the cloud execution program of the second application is displayed on the display interface of the client through the second communication connection, and meanwhile, the input information in the input interface of the client is also transmitted to the second application through the second communication connection. Therefore, according to the method, the second application of the cloud is adopted to access the client to replace the first application to continue executing the program when the first application running on the client reaches the preset switching condition. In addition, through the second communication connection, the display content generated by the cloud execution program is displayed on the display interface of the client by the second application, and the input information of the input interface of the client is also transmitted to the second application at the cloud, so that the problem that data transmission between the first application and the server is blocked because the first application is not switched after the first application reaches the preset switching condition is solved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments described in the present application, and other drawings can be obtained by those skilled in the art according to the drawings.
Fig. 1 is a first application scenario diagram of an application software disaster recovery method according to an embodiment of the present application.
Fig. 2 is a second application scenario diagram of an application software disaster recovery method according to an embodiment of the present application.
Fig. 3 is a flowchart of an application disaster recovery method according to a first embodiment of the present application.
Fig. 4 is a schematic diagram of an application disaster recovery device according to a second embodiment of the present application.
Fig. 5 is a flowchart of another application disaster recovery method according to a third embodiment of the present application.
Fig. 6 is a schematic diagram of another application software disaster recovery device according to a fourth embodiment of the present application.
Fig. 7 is a logic framework diagram of an application disaster recovery system according to a fifth embodiment of the present application.
Fig. 8 is a schematic view of an electronic device according to a sixth embodiment of the present application.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. This application is capable of implementation in many different ways than those herein set forth and of similar import by those skilled in the art without departing from the spirit of this application and is therefore not limited to the specific implementations disclosed below.
The embodiment of the application firstly provides an application software disaster recovery method and device, an electronic device and a storage device. The embodiment of the application also provides another application disaster recovery method and device, electronic equipment and storage equipment. The following are specific examples.
In the prior art, software applications running on a local terminal device often have software failures during running, for example, a software crash failure occurs on a client, a communication link between the client and a software server providing services for the software fails to be connected, and the like. For the software fault, a software version is generally upgraded, and a communication link is waited to recover normal communication, or a maintenance mode such as maintenance by a professional is adopted.
In the method, the client is upgraded, and the communication link is waited to recover normal communication, or the communication link is maintained by professional personnel, so that the data transmission between the client and the network server is delayed, and the normal use of the application service by a user is influenced.
In order to solve the above technical problem, the present application provides a disaster recovery method for application software. In order to more clearly show the application software disaster recovery method provided by the present application, an application scenario of the application software disaster recovery method provided by the present application is introduced first.
Referring to fig. 1, fig. 1 is a first application scenario diagram of an application disaster recovery method according to an embodiment of the present application. In this scenario embodiment, the first application 101 is an application running on a client, and the second application 102 is a cloud version of the first application running on a cloud through application virtualization. The cloud version refers to a mode of realizing the application of the version of the client to the cloud. In general, the application of the client is realized mainly by a first application arranged on the local client, and when the running speed of the first application of the local client cannot reach a preset condition or an abnormal condition occurs, the cloud version is pulled up at the cloud to replace the first application version execution program of the local client.
The application virtualization is to decouple an application program from an operating system and provide a virtual operating environment for the application program. The technical principle is that based on an Application/server computing A/S architecture (Application Serving A/S architecture), a technology similar to a virtual terminal is adopted to isolate the human-computer interaction logic (operation of an Application program interface, a keyboard and a mouse, audio input and output, a card reader, printout and the like) of an Application program from the computing logic. When a user accesses an application virtualized by a server, the user computer only needs to transmit the human-computer interaction logic to the server side, the server side sets an independent session space for the user, the computing logic of the application program runs in the session space, the changed human-computer interaction logic is transmitted to the client side and is displayed on corresponding equipment of the client side, and therefore the user can obtain the same access feeling as that of running a local application program.
In the embodiment of the application, the second application is a cloud version of the first application running in a cloud based on application virtualization, the computing logic of the second application is in a cloud server, and the second application and the human-computer interaction logic of the user are in a local client. When the user uses the application program at the local client and the running application program is the second application program to replace the first application program, the content of the second application program is transmitted to the local client terminal, and the display content is displayed on the display interface of the local client terminal. When the fact that the user carries out trigger operation on the display content of the display interface is detected, the local client transmits the trigger operation information of the user to a second application; and the second application calculates and processes the feedback content by adopting the calculation logic of the cloud server in the virtual running environment based on the received trigger operation information, transmits the feedback content to the local client, and displays the feedback content through the display page by the local client so as to enable the user to perform subsequent trigger operation. Therefore, the man-machine interaction logic between the second application and the user is realized through the local client, and the calculation logic of the second application is realized in the cloud server.
For the user, the interface presented to the user through the first application and the interface presented to the user through the second application at the local client are consistent, and the user is unaware of changes in the first application and the second application. The first application and the second application are changed in that the computing logic of the first application is based on the local server, and the computing logic of the second application is based on the cloud server.
The software server 103 provides remote services to the first application 101 of the client via a first communication connection. When the first application 101 reaches a preset switching condition, the client establishes a second communication connection with the cloud server 104, and accesses the second application 102 to the client through the second communication connection; and, a third communication connection is established between the software server 103 and the cloud server 104, and through the third communication connection, the software server 103 provides the software service required by the second application 102.
The work allocation of each part in the application software disaster recovery system is described as follows.
Typically, the first application 101 performs local information processing work on the client for facilitating the processing of the client, and the software server 103 obtains information provided by the client through the first communication connection, and performs more complex data processing tasks or provides a database to which the first application 101 needs to access.
When the first application 101 cannot normally run, the second application of the cloud server 104 is started and replaces the first application 101 of the client; at this time, on one hand, the second application 102 transmits, to the client 105, the content that needs to be displayed on the interface during the execution of the second application through the second communication connection, and the information input by the input device of the client 105 is also transmitted to the second application running on the cloud server 104 through the second communication connection; the information processing work originally performed at the first application 101 of the client, in this scenario, is performed entirely by the second application 102, the client merely acting as a display and input device; moreover, a third communication connection is established between the software server 103 and the cloud server 104, and the software server 103 continues to execute the service originally provided by the first application 101, except that the communication transmission object is changed into the cloud server 104.
Meanwhile, in the normal working process of the client, the client establishes a monitoring process for monitoring the running state of the first application in real time in the first application 101. The monitoring process can be implemented by using a Hook mechanism. Hook is a system mechanism provided in Windows to replace "interrupts" under DOS, with chinese translated as a "Hook" or "Hook". After a hook event has occurred for a particular system event, the program that made the hook event will be notified by the system upon the occurrence of the hook event, and can then respond to the event at a first time.
Therefore, the process of the monitoring mechanism detecting the running state of the first application is as follows:
if it is detected that the first application 101 reaches the preset switching condition, the first application 101 cannot normally execute the program or the speed of executing the program cannot meet the preset running speed threshold, and data cannot be normally transmitted between the first application 101 and the software server 103. In order to avoid that the current running state of the first application 101 affects data transmission between the first application 101 and the software server 103, the second application 102 arranged in the cloud replaces the first application 101, and the second application 102 is accessed to the client through the second communication connection. Specifically, the client establishes a second communication connection with the cloud server, through the second communication connection, the second application displays the display content obtained by the cloud execution program on the display interface of the client, and meanwhile, the input information of the input interface of the client is also transmitted to the second application of the cloud.
That is, after the second application establishes a communication connection with the client through the second communication connection, the data processing capability of the cloud server where the second application is located is adopted to process the data that needs to be processed originally by the first application between the local client and the software server. Therefore, the current running state of the first application is prevented from influencing data processing and transmission efficiency, and meanwhile the second application processes data at the cloud end to improve data processing efficiency.
Wherein, the first application running on the client terminal reaches the preset switching condition, which comprises: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
Wherein detecting that the first application is in an abnormal state comprises one or more of:
(1.1) detecting that a first communication connection state between the first application and a software server providing services for the first application is in an abnormal connection state, as shown in fig. 1. In fig. 1, the case where the first application is caused to have an abnormal state is that the first communication connection state between the first application and the software server is in an abnormal connection state.
The method for determining that the first communication connection state between the first application and the software server is in the abnormal connection state may refer to the following description:
for example, monitoring a feedback situation of the software server for a request message of the first application according to preset time, and if it is detected that the first application receives feedback information of the software server within the preset time, determining that a first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server belongs to an offline state.
The detecting that the first application does not receive the feedback information of the software server within the preset time may be that the first application does not receive the feedback information of the software server for a preset number of times continuously within a preset time period.
The first case described above is a case where the first application running on the client terminal reaches a preset switching condition due to the first communication connection between the first application and the software server being in an abnormal connection state.
In addition, the first application running on the client side reaching the preset switching condition may further include that the first application itself has an abnormal condition:
please refer to fig. 2, which is a second application scenario diagram of an application disaster recovery method according to an embodiment of the present application.
(1.2) detecting that the first application cannot be started normally. For example, if the first application cannot normally run after being started within the preset number of times, it is determined that the local application cannot be normally started.
As shown in fig. 2, when the first application 101 is in a state that the first application cannot be normally started, the monitoring mechanism monitors the running state of the first application, and if it is detected that the first application cannot be started within a preset number of times, it is determined that the first application is in an abnormal state, alarm information that the first application is in the abnormal state is sent to the software server, and a request for starting the cloud application is sent to the software server.
(1.3), detecting that the first application is damaged, for example, detecting that an important SDK in the first application is deleted, and the like. SDK is a software tool development kit, which is generally a collection of development tools used by some software engineers to build application software for a particular software package, software framework, hardware platform, operating system, and the like. For example, if a face recognition SDK software toolkit provided for certain instant messaging software is deleted by mistake, the communication software cannot perform face recognition login, and a second application may need to be started.
(1.4) detecting that the first application is a software version with a serious problem, for example, the current software version of the first application belongs to a version with a security vulnerability, and notifying.
(1.5) receiving the abnormal alarm information of the first application version, for example, obtaining the current version of the first application sent by the cloud server has a serious problem.
In addition, detecting that the running state of the first application does not meet a preset application running state includes one or more of the following cases:
(2.1) detecting that the running speed of the first application does not meet a preset running speed threshold value.
(2.2) detecting that the running state of the first application can not meet the standard user experience of the user.
And (2.3) detecting abnormal information of an operating system operated by the first application.
And (2.4) detecting that abnormal communication connection exists between the first application and the geographical area where the first application is located.
The monitoring process detects the running state of the first application in real time, if the first application does not reach the preset switching condition, the first application runs normally, and in the running process, data required by normal running are transmitted between the first application and the software server according to function distribution through first communication connection.
When the first application reaches a preset switching condition, the monitoring process sends alarm information that the first application is in an abnormal state to the software server, and the alarm information can be processed by a local abnormal processing process of the client side or the software server by providing a switching link instruction.
The processing procedure of the local switching first application processing process of the client side is as follows: after receiving alarm information for switching the first application, calling a first application switching processing process located locally at the client, sending a first request for establishing communication connection to a cloud server by the first application switching processing process, starting the second application 102 by the cloud server according to the first request, and establishing a second communication connection between the second application 102 and the client after the second application 102 runs so as to transmit display data and input data between the client and the second application.
The processing process of the exception handling process of the software server comprises the following steps: after receiving the anomaly alarm information, the cloud server 104 sends a switching link instruction to the client, where the switching link instruction may include a switching suggestion prompt at the client, and a user may trigger switching according to the switching suggestion prompt, so that the client sends a first request to the cloud server 104, where the cloud server is expected to take over the first application 101, and a subsequent processing process is completely consistent with a processing process of a local anomaly processing process of the client. Of course, the client may be directly instructed to perform the switching process according to the switching link instruction without the step of prompting the user.
Here, the second application accesses the client and may be implemented through a dedicated application program interface API. An API (Application Programming Interface) is a predefined Interface (e.g. function, HTTP Interface) or a convention for linking different components of a software system. An application program interface to provide applications and a set of routines that developers have access to based on certain software or hardware without accessing source code or understanding details of internal workings. In the technical solution, the API only needs to display the content that needs to be displayed after the second application 102 is run on the client through the API interface, that is, the display interface of the client is utilized; in addition, the input of the client needs to be transmitted to the second application 102, and therefore, it is also possible to use the input interface of the client.
The second application is accessed to the client through a second communication connection, specifically, the client establishes a second communication connection with the second application 102 in the cloud server, through the second communication connection, display content obtained by the second application executing a program at the cloud is sent to the client, and the content is displayed on a display page of the client; and simultaneously, the input information provided by the input interface of the client is also sent to the second application through the second communication connection. The input information of the input interface of the client may be edit information of the input interface of the client by a user, or input information obtained by a selection operation of the user for a plurality of candidate information of the input interface of the client.
In addition, the process that the second application accesses the client further comprises the following steps: the second application performs data synchronization with the client in relation to the first application. That is, the relevant data of the first application is synchronized to the second application. For example, if the first application is a picture processing software and needs to process an image captured locally by the client, the picture to be processed may need to be transmitted to the cloud server through a data synchronization mechanism for processing by the second application 102. The data synchronization may be a transaction that needs to be performed during the second application 102 takes over the first application 101, or a transaction that needs to be performed after taking over according to the operation needs.
In addition, the second application is accessed to the client instead of the first application execution program, wherein the software server may further need to establish a third communication connection with the cloud server, and through the third communication connection, the software server provides the second application with the software service required by the second application.
For example, the software server stores data related to the first application, and when the second application is accessed to the client, data transmission is performed between the client and the second application through the second communication connection. If the relevant data of the first application is related, the data of the first application is synchronized into the second application through a data synchronization unit, and specifically, the software server provides the data relevant to the first application for the second application; at this time, the data synchronization process is performed between the software server and the cloud server through the third communication connection.
When the first application running on the client reaches the preset switching condition, the second application of the cloud is accessed to the client to replace the specific description of the first application execution program.
The embodiment of the application provides an application software disaster recovery method, which is applied to a client and comprises the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
According to the application software disaster recovery method provided by the embodiment of the application software disaster recovery method, when the first application running on the client side reaches the preset switching condition, the second application running on the cloud side is accessed to the client side through the second communication connection to replace the first application, and the second application is a cloud side version of the first application running on the cloud side. At this time, the generated display content obtained by the cloud execution program of the second application is displayed on the display interface of the client through the second communication connection, and meanwhile, the input information in the input interface of the client is also transmitted to the second application through the second communication connection. Therefore, according to the method, the second application of the cloud is accessed to the client to replace the first application to continue executing the program under the condition that the first application running on the client reaches the preset switching condition, and the fault maintenance time of the first application is saved. In addition, through the second communication connection, the display content generated by the cloud execution program is displayed on the display interface of the client by the second application, and the input information of the input interface of the client is also transmitted to the second application at the cloud, so that the problem that data transmission between the first application and the server is blocked when the first application breaks down is avoided.
First embodiment
Fig. 3 is a flowchart of an application disaster recovery method according to a first embodiment of the present application, where the method includes the following steps.
Step S301: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization.
The step is used for establishing a second communication connection when detecting that the first application reaches a preset switching condition, and accessing the second application to the client to replace the first application execution program. Specifically, after the second application establishes communication connection with the client through the second communication connection, the data processing capability of the cloud server where the second application is located is adopted to process the items which need to be processed originally by the first application at the local client.
The application virtualization is to decouple an application program from an operating system and provide a virtual operating environment for the application program. The technical principle is that based on an Application/server computing A/S architecture (Application Serving A/S architecture), a technology similar to a virtual terminal is adopted to isolate the human-computer interaction logic (operation of an Application program interface, a keyboard and a mouse, audio input and output, a card reader, printout and the like) of an Application program from the computing logic. When a user accesses an application virtualized by a server, the user computer only needs to transmit the human-computer interaction logic to the server side, the server side sets an independent session space for the user, the computing logic of the application program runs in the session space, the changed human-computer interaction logic is transmitted to the client side and is displayed on corresponding equipment of the client side, and therefore the user can obtain the same access feeling as that of running a local application program.
In the embodiment of the application, the second application is a cloud version of the first application running in a cloud based on application virtualization, the computing logic of the second application is in a cloud server, and the second application and the human-computer interaction logic of the user are in a local client. When the user uses the application program at the local client and the running application program is the second application program to replace the first application program, the content of the second application program is transmitted to the local client terminal, and the display content is displayed on the display interface of the local client terminal. When the fact that the user carries out trigger operation on the display content of the display interface is detected, the local client transmits the trigger operation information of the user to a second application; and the second application calculates and processes the feedback content by adopting the calculation logic of the cloud server in the virtual running environment based on the received trigger operation information, transmits the feedback content to the local client, and displays the feedback content through the display page by the local client so as to enable the user to perform subsequent trigger operation. Therefore, the human-computer interaction logic between the second application and the user is realized through the local client, and the computing logic of the second application is realized through the cloud server.
For the user, the interface presented to the user through the first application and the interface presented to the user through the second application at the local client are consistent, and the user is unaware of changes in the first application and the second application. The first application and the second application are changed in that the computing logic of the first application is based on the local server, and the computing logic of the second application is based on the cloud server.
And the data obtained by the second application execution program is transmitted between the second application and the client through the second communication connection. The display content obtained by the second application execution program is displayed on the display interface of the client, and the input information of the input interface of the client is transmitted to the second application.
The running state of the first application is detected in real time through a monitoring process, and the monitoring process is established in the local application. The monitoring process is realized by adopting a Hook mechanism. Hook is a system mechanism provided in Windows to replace "interrupts" under DOS, with chinese translated as a "Hook" or "Hook". After a hook event has occurred for a particular system event, the program that made the hook event will be notified by the system upon the occurrence of the hook event, and can then respond to the event at a first time.
Typically, data is transmitted between the first application and the software server over a first communication connection. And when the monitoring process detects that the running state of the first application belongs to the normal state, starting the first application. And performing data processing on the first application, and performing data transmission with the software server through the first communication connection.
When the monitoring process detects that the running state of the first application reaches the preset switching condition, the condition that the first application reaches the preset switching condition is sent to the software server, and at the moment, the second application at the cloud end needs to be started. The second application is accessed to the client over a second communication link. And accessing the second application arranged at the cloud end to the client end, wherein the second application is realized by adopting an Application Program Interface (API).
The responding to the fact that the first application running on the client terminal reaches the preset switching condition, and accessing the second application arranged at the cloud terminal to the client terminal through the second communication connection comprises the following steps: responding to a first application running on a client to reach a preset switching condition, and sending a first request for establishing communication connection to a cloud server; establishing a second communication connection with the cloud server; and the second communication connection transmits display content output after the second application of the cloud runs and input information provided by an input interface of the client.
In addition, the monitoring process detects that the first application reaches a preset switching condition, including: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
Wherein, the first application is detected to be in an abnormal state, including at least one of the following conditions:
(1.1) detecting that a first communication connection state between the first application and a software server serving the first application is in an abnormal connection state.
The situation shown in fig. 1, wherein the detecting that the first communication connection state between the first application and the software server providing services for the first application is in an abnormal connection state includes: monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an offline state.
(1.2) detecting that the first application cannot be started normally. For example, if the first application cannot normally run after being started within the preset number of times, it is determined that the first application cannot be normally started.
(1.3), detecting that the first application is damaged, for example, detecting that an important SDK in the first application is deleted, and the like. SDK is a software tool development kit, which is generally a collection of development tools used by some software engineers to build application software for a particular software package, software framework, hardware platform, operating system, and the like.
(1.4) detecting that the first application is a software version with a serious problem, for example, the current software version of the first application belongs to a version with a security vulnerability, and notifying.
(1.5) receiving the abnormal alarm information of the first application version, for example, obtaining the current version of the first application sent by the cloud server has a serious problem.
In addition, detecting that the running state of the first application does not meet a preset application running state includes one or more of the following cases:
(2.1) detecting that the running speed of the first application does not meet a preset running speed threshold value.
(2.2) detecting that the running state of the first application can not meet the standard user experience of the user.
And (2.3) detecting abnormal information of the operating system operated by the first application.
And (2.4) detecting that abnormal communication connection exists between the first application and the geographical area where the first application is located.
Further, the first application is connected to a software server serving it through a first communication connection, the method further comprising: acquiring a switching link instruction sent by the software server; and establishing a second communication connection with the second application for the client according to the switching link instruction.
After the first application reaches the preset switching condition, the monitoring process sends the condition that the first application reaches the preset switching condition to the software server, and the software server sends the switching link instruction to the first application. And displaying the switching link instruction on a client page of the first application, triggering the switching link instruction by a user, so that the second application establishes communication connection with the client through a second communication link, and transmitting data between the second application and the client through the second communication link.
Step S202: and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
This step is used to transfer data between the second application and the client over the second communication connection. Specifically, the second application generates display content by executing the program at the cloud end, the display content is displayed through a display interface of the client, and input information of an input interface of the client is also transmitted to the second application.
In addition, during the process of accessing the second application to the client, the method includes: and the second application and the client perform data synchronization related to the first application.
In addition, the second application is accessed to the client to replace the first application executive program, wherein the software server also establishes a third communication connection with the cloud server, and the software server provides software services required by the second application for the second application through the third communication connection.
The embodiment of the application provides an application software disaster recovery method, which is applied to a client and comprises the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
According to the application software disaster recovery method provided by the embodiment of the application software disaster recovery method, when the first application running on the client side reaches the preset switching condition, the second application running on the cloud side is accessed to the client side through the second communication connection to replace the first application, and the second application is a cloud side version of the first application running on the cloud side. At this time, the generated display content obtained by the cloud execution program of the second application is displayed on the display interface of the client through the second communication connection, and meanwhile, the input information in the input interface of the client is also transmitted to the second application through the second communication connection. Therefore, according to the method, the second application of the cloud is accessed to the client to replace the first application to continue executing the program under the condition that the first application running on the client reaches the preset switching condition, and the fault maintenance time of the first application is saved. In addition, through the second communication connection, the display content generated by the cloud execution program is displayed on the display interface of the client by the second application, and the input information of the input interface of the client is also transmitted to the second application at the cloud, so that the problem that data transmission between the first application and the server is blocked when the first application breaks down is avoided.
Second embodiment
Corresponding to the embodiments corresponding to the application scenarios of the application software disaster recovery method provided by the present application and the application software disaster recovery method provided by the first embodiment, a second embodiment of the present application provides an application software disaster recovery device. Fig. 4 is a schematic diagram of an application disaster recovery device according to a second embodiment of the present application. Since the apparatus embodiments are substantially similar to the method embodiments, they are described in a relatively simple manner, and reference may be made to some of the descriptions of the method embodiments for relevant points. The device embodiments described below are merely illustrative.
A disaster recovery device for application software according to a second embodiment of the present application, the disaster recovery device comprising:
an accessing unit 402, configured to, in response to that a first application running on a client reaches a preset switching condition, access a second application arranged in a cloud to the client through a second communication connection to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization.
The method comprises the steps of accessing a second application to a client when the first application reaches a preset switching condition, replacing the first application with the second application, processing data by adopting data processing capacity between the second application and a cloud server, and transmitting data between the second application and a software server through a second communication connection.
A transmission unit 402, configured to receive, based on the second communication connection, display content generated by the second application executing a program in the cloud, display the display content on a display interface, and transmit input information of the client input interface to the second application in the cloud.
Optionally, the step of enabling the first application running on the client to reach the preset switching condition includes: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
Optionally, the detecting that the first application is in an abnormal state includes one or more of the following conditions: detecting that a first communication connection state between the first application and a software server providing services for the first application is in an abnormal connection state; detecting that the first application cannot be started normally; detecting that the first application is damaged; detecting that the first application is a software version with a serious problem; and receiving abnormal alarm information of the first application version.
Optionally, the detecting that the running state of the first application does not meet a preset application running state includes one or more of the following cases: detecting that the running speed of the first application does not meet a preset running speed threshold; detecting that the running state of the first application cannot meet the standard user experience of a user; detecting abnormal information of an operating system operated by the first application; detecting that abnormal communication connection exists between the first application and a geographical area where the first application is located.
Optionally, the detecting that the first communication connection state between the first application and the software server providing services for the first application is in an abnormal connection state includes: monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an offline state.
Optionally, the first application is connected to a software server providing services for the first application through a first communication connection, and the apparatus is further configured to: acquiring a switching link instruction sent by the software server; and establishing a second communication connection with the second application for the client according to the switching link instruction.
Optionally, in the process that the second application accesses the client, the method includes: and the second application and the client perform data synchronization related to the first application.
Optionally, before the second application accesses the client, the method includes: and establishing a monitoring process for monitoring the running state of the first application.
Optionally, the monitoring process is implemented by using a Hook mechanism.
Optionally, the second application arranged in the cloud is accessed to the client, and is implemented by using an application program interface API.
Optionally, the accessing, to the client through a second communication connection, a second application arranged in the cloud in response to the first application running on the client reaching a preset switching condition includes: responding to a first application running on a client to reach a preset switching condition, and sending a first request for establishing communication connection to a cloud server; establishing a second communication connection with the cloud server; and the second communication connection transmits display content output after the second application of the cloud runs and input information provided by an input interface of the client.
For example, when a first application located in the cloud of a first geographic area reaches a preset switching condition, a second application in the cloud of a second geographic area is established in communication with the client.
Third embodiment
Corresponding to the embodiment corresponding to the application scenario of the application software disaster recovery method provided by the present application and the application software disaster recovery method provided by the first embodiment, a third embodiment of the present application provides another application software disaster recovery method, which is applied to a cloud server. Fig. 5 is a flowchart of another application disaster recovery method according to a third embodiment of the present application. Since the third embodiment is substantially similar to the first embodiment, it is relatively simple to describe, and reference may be made to some descriptions of the first embodiment for relevant points. The third embodiment described below is merely illustrative.
Step S501: a first request of a first application that takes over a client is received.
The step is used for receiving a first request sent by the client, replacing the first application with the second application, and accessing the second application to the client.
The first request is sent to the cloud server by the client when the first application based on the client reaches a preset switching condition.
Step S502: in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization.
The step is used for starting the second application according to the first request, replacing the first application of the client side, and executing the program.
Step S503: and establishing a second communication connection with the client, sending display content output after the second application runs to the client through the second communication connection, and receiving input information provided by an input interface of the client.
The method comprises the steps of establishing a second communication connection between the cloud server and the client, displaying display content obtained by a second application execution program on a display interface of the client based on the second communication connection, and transmitting input information of an input page of the client to the second application.
And the second application continues to execute the next operation based on the input information provided by the client, and displays the display content obtained by the execution program on the client interface so that the user can perform the next input operation or selection operation based on the page display content.
Optionally, the method includes: sending a second request message for establishing a communication connection to a software server providing a remote service for the first application; receiving a response message sent by the software server; establishing a third communication connection with the software server according to the response message; the third communication connection is used for obtaining the software service required by the second application from the software server.
And the software server establishes a third communication connection with the cloud server, so that the software server provides required software service for the second application.
Optionally, the method includes: and the second application and the client perform data synchronization related to the first application. For example, during the operation of the second application, the data of the first application needs to be acquired, and the data related to the first application can be provided for the second application through the software server, so that the data synchronization of the second application and the first application is achieved.
Fourth embodiment
Corresponding to the embodiment corresponding to the application scenario of the application software disaster recovery method provided by the present application and the other application software disaster recovery method provided by the third embodiment, a fourth embodiment of the present application provides another application software disaster recovery device. Fig. 6 is a schematic diagram of another application software disaster recovery device according to a fourth embodiment of the present application. Since the apparatus embodiments are substantially similar to the method embodiments, they are described in a relatively simple manner, and reference may be made to some of the descriptions of the method embodiments for relevant points. The device embodiments described below are merely illustrative.
A disaster recovery device for application software according to a fourth embodiment of the present application, the disaster recovery device comprising:
a receiving unit 601, configured to receive a first request of a first application of a successor client;
a starting unit 602, configured to start a second application in response to the first request; the second application is a cloud version of the first application running in a cloud through application virtualization;
the transmission unit 603 is configured to establish a second communication connection with the client, send, to the client, display content output after the second application is run through the second communication connection, and receive input information provided by an input interface of the client.
Optionally, the method includes: sending a second request message for establishing a communication connection to a software server providing a remote service for the first application; receiving a response message sent by the software server; establishing a third communication connection with the software server according to the response message; the third communication connection is used for obtaining the software service required by the second application from the software server.
Optionally, the method includes: and the second application and the client perform data synchronization related to the first application.
Fifth embodiment
A fifth embodiment of the present application provides an application software disaster recovery system, which corresponds to the embodiment of the application scenario of the application software disaster recovery method provided in the present application and the application software disaster recovery method provided in the first embodiment. Fig. 7 is a schematic diagram of an application disaster recovery system according to a fifth embodiment of the present application. Since the system embodiments are substantially similar to the method embodiments, they are described in a relatively simple manner, and reference may be made to some of the descriptions of the method embodiments for relevant points. The device embodiments described below are merely illustrative.
The application software disaster recovery system comprises: client 105 and cloud server 104.
The client 105 runs a first application 101; the cloud server 104 is loaded with a cloud version corresponding to the first application, i.e. the second application 102.
The client 105 performs the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; receiving display content generated by the second application executing program based on the second communication connection, and displaying the display content on a display interface; and transmitting the input information of the client input interface to a second application at the cloud end.
The client here functions as:
and if the first application is in a normal state, normally starting a first application execution program at the client, establishing a first communication connection between the first application and the software server, and executing the program by adopting the data processing capacity of the first application and the software server to calculate data.
And if the first application reaches the preset switching condition, sending a first request to the cloud server, requesting the cloud server to establish a second communication connection with the client, and accessing the second application to the client based on the second communication connection. And the second application adopts the data calculation processing capacity of the cloud, executes the program at the cloud, and obtains the display content of the running program to be displayed on the display interface of the client. Meanwhile, the input information of the input page of the client is also transmitted to the second application.
Whether the first application meets the preset switching condition is judged by a starting judgment unit 105-1 in the client 105, and the starting judgment unit is a monitoring process for monitoring the running state of the first application.
The starting judgment unit detects that the first application reaches the preset switching condition within the preset time, and sends the first application reaching the preset switching condition to the client. At this time, the client sends a request to the cloud server to start the second application.
Wherein, detecting that the first application reaches the preset switching condition comprises: detecting that the first application is in an abnormal state; or detecting that the running state of the first application does not meet a preset application running state.
The detecting that the first application is in an abnormal state comprises one or more of the following conditions:
first, it is detected that a first communication connection between the first application and a software server serving the first application is in an abnormal connection state.
The method for judging that the first communication connection between the first application and the software server is in the abnormal connection state can be as follows: monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an offline state.
Second, it is detected that the first application cannot be started normally.
Third, detecting that the first application is damaged.
Fourth, the first application is detected as a software version with a serious problem.
And fifthly, receiving abnormal alarm information of the version of the first application.
The detecting that the running state of the first application does not meet a preset application running state includes one or more of the following conditions:
firstly, detecting that the running speed of the first application does not meet a preset running speed threshold value.
Second, it is detected that the running state of the first application fails to meet a standard user experience of a user.
Thirdly, detecting abnormal information of an operating system operated by the first application.
Fourthly, detecting the condition that abnormal communication connection exists between the first application and the geographical area where the first application is located.
The cloud server 104 performs the following steps: receiving a first request of a first application of a successor client, transmitted over a second communication connection; in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization; sending the display content output after the second application runs to the client through the second communication connection; and receiving input information provided by an input interface of the client.
In addition, the system further comprises a software server 103, wherein the software server provides software service for the first application through a first communication connection; establishing a third communication connection with the cloud server according to the second request message sent by the cloud server; the third communication connection is used for obtaining the software service required by the second application from the software server.
Here, the software server 103 provides the data related to the first application to the second application through the third communication connection, and data synchronization of the second application with the first application is achieved. Therefore, the second application 102 includes a data synchronization unit 102-1 therein for synchronizing data of the first application for the second application.
Sixth embodiment
Corresponding to the methods provided in the first and third embodiments of the present application, a sixth embodiment of the present application also provides an electronic device. Since the sixth embodiment is substantially similar to the above method embodiment provided in this application, the description is relatively simple, and reference may be made to the description of the above method embodiment provided in this application for relevant points. The sixth embodiment described below is merely illustrative.
As shown in fig. 8, fig. 8 is a schematic view of an electronic device according to a sixth embodiment of the present application.
The electronic device includes:
at least one processor 801, at least one communication interface 802, at least one memory 803, and at least one communication bus 804;
optionally, the communication interface 802 may be an interface of a communication module, such as an interface of a WLAN (Wireless Local Area Network) module;
the processor 801 may be a processor CPU or an application Specific Integrated circuit (asic) or one or more Integrated circuits configured to implement embodiments of the present application.
The memory 803 may comprise high-speed RAM memory, and may also include non-volatile memory (non-volatile memory), such as at least one disk memory.
The memory 803 stores a program, and the processor 801 calls the program stored in the memory 803 to execute the above method provided by the embodiment of the present application.
Seventh embodiment
Corresponding to the above method embodiments provided by the present application, the seventh embodiment of the present application further provides a computer storage medium, and since the seventh embodiment is substantially similar to the above method embodiments provided by the present application, the description is relatively simple, and relevant points can be referred to the description of the above method embodiment section provided by the present application. The seventh embodiment described below is merely illustrative.
The computer storage medium stores a computer program that, when executed, implements the methods provided in the above-described method embodiments.
It should be noted that, for the detailed description of the storage medium provided in the seventh embodiment of the present application, reference may be made to the description of the foregoing method embodiment provided in the present application, and details are not repeated here.
Although the present application has been described with reference to the preferred embodiments, it is not intended to limit the present application, and those skilled in the art can make variations and modifications without departing from the spirit and scope of the present application, therefore, the scope of the present application should be determined by the claims that follow.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory. The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
1. Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer-readable medium does not include non-transitory computer-readable storage media (non-transitory computer readable storage media), such as modulated data signals and carrier waves.
2. As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.

Claims (14)

1. An application software disaster recovery method is applied to a client, and is characterized by comprising the following steps:
responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization;
and receiving display content generated by the second application executing program on the basis of the second communication connection, displaying the display content on a display interface, and transmitting input information of the client input interface to the second application at the cloud.
2. The disaster recovery method for application software according to claim 1, wherein the reaching of the predetermined switching condition for the first application running on the client comprises:
detecting that the first application is in an abnormal state;
alternatively, the first and second liquid crystal display panels may be,
and detecting that the running state of the first application does not meet a preset application running state.
3. The method according to claim 2, wherein the detecting that the first application is in an abnormal state comprises:
monitoring the feedback condition of the software server for the request message of the first application according to preset time, and if the first application is detected to receive the feedback information of the software server within the preset time, determining that the first communication connection between the first application and the software server is in a normal state; and if the first application is not detected to receive the feedback message of the software server within the preset time, determining that the first communication connection between the first application and the software server is in an off-line state.
4. The application software disaster recovery method of claim 1, wherein said first application is connected to a software server serving said first application through a first communication connection, said method further comprising: acquiring a switching link instruction sent by the software server;
and establishing a second communication connection with the second application for the client according to the switching link instruction.
5. The method for disaster recovery of application software according to claim 1, wherein during the process of accessing the second application to the client, the method comprises: and the second application and the client perform data synchronization related to the first application.
6. The method according to claim 1, comprising, before the second application accesses the client, the steps of: and establishing a monitoring process for monitoring the running state of the first application.
7. The method of claim 1, wherein accessing the second application disposed in the cloud to the client is implemented using an Application Program Interface (API).
8. The method for disaster recovery of application software according to claim 1, wherein the accessing a second application disposed in a cloud to the client through a second communication connection in response to a first application running on the client reaching a preset switching condition comprises:
responding to a first application running on a client to reach a preset switching condition, and sending a first request for establishing communication connection to a cloud server;
establishing a second communication connection with the cloud server; and the second communication connection transmits display content output after the second application of the cloud runs and input information provided by an input interface of the client.
9. An application software disaster recovery method is applied to a cloud server, and is characterized by comprising the following steps:
receiving a first request of a first application of a successor client;
in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization;
and establishing a second communication connection with the client, sending display content output after the second application runs to the client through the second communication connection, and receiving input information provided by an input interface of the client.
10. The application software disaster recovery method according to claim 9, comprising:
sending a second request message for establishing a communication connection to a software server providing a remote service for the first application;
receiving a response message sent by the software server;
establishing a third communication connection with the software server according to the response message; the third communication connection is used for obtaining the software service required by the second application from the software server.
11. An application disaster recovery system, comprising: a client and a cloud server;
the client runs a first application; the cloud server is loaded with a cloud version corresponding to the first application, namely a second application;
the client executes the following steps: responding to that a first application running on a client reaches a preset switching condition, and accessing a second application arranged at a cloud end to the client through a second communication connection so as to replace the first application; the second application is a cloud version of the first application running in a cloud through application virtualization; receiving display content generated by the second application executing program based on the second communication connection, and displaying the display content on a display interface; the input information of the client input interface is transmitted to a second application of the cloud end;
the cloud server executes the following steps: receiving a first request of a first application of a successor client, transmitted over a second communication connection;
in response to the first request, launching a second application; the second application is a cloud version of the first application running in a cloud through application virtualization;
sending the display content output after the second application runs to the client through the second communication connection; and receiving input information provided by an input interface of the client.
12. The application software disaster recovery system of claim 11, comprising a software server providing software services for said first application through a first communication connection; establishing a third communication connection with the cloud server according to the second request message sent by the cloud server; the third communication connection is used for obtaining the software service required by the second application from the software server.
13. An electronic device, characterized in that the electronic device comprises: a processor and a memory;
the memory stores a computer program, and the processor executes the computer program to perform the method of any one of claims 1-10.
14. A computer storage medium, characterized in that it stores a computer program which, when executed by a processor, performs the method of any one of claims 1-10.
CN202210263372.8A 2022-03-17 2022-03-17 Disaster recovery method and device for application software and electronic equipment Active CN114826886B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210263372.8A CN114826886B (en) 2022-03-17 2022-03-17 Disaster recovery method and device for application software and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210263372.8A CN114826886B (en) 2022-03-17 2022-03-17 Disaster recovery method and device for application software and electronic equipment

Publications (2)

Publication Number Publication Date
CN114826886A true CN114826886A (en) 2022-07-29
CN114826886B CN114826886B (en) 2024-03-15

Family

ID=82529019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210263372.8A Active CN114826886B (en) 2022-03-17 2022-03-17 Disaster recovery method and device for application software and electronic equipment

Country Status (1)

Country Link
CN (1) CN114826886B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013129529A1 (en) * 2012-02-28 2013-09-06 Keepdata株式会社 Backup system
US20130326513A1 (en) * 2011-12-20 2013-12-05 WatchDox, Ltd. Method and system for cross-operating systems execution of software applications
CN105704249A (en) * 2016-04-18 2016-06-22 广州优达信息科技有限公司 Composite cloud desktop system
CN106648730A (en) * 2016-09-26 2017-05-10 北京小米移动软件有限公司 Processing method and device of abnormal application
CN107533694A (en) * 2015-04-23 2018-01-02 微软技术许可有限责任公司 Added based on the file of cloud to the intelligence of communication
CN109783122A (en) * 2019-01-29 2019-05-21 重庆邮电大学 A kind of software security upgrade method and system based on V2X roadside device
CN109815057A (en) * 2019-01-25 2019-05-28 维沃移动通信有限公司 A kind of data back up method and mobile terminal
CN111526251A (en) * 2020-05-26 2020-08-11 卢泽民 Method for simultaneously solving several problems along with increasing kinds of household equipment
CN113101670A (en) * 2021-04-15 2021-07-13 网易(杭州)网络有限公司 Version switching method and device
WO2021184219A1 (en) * 2020-03-17 2021-09-23 Oppo广东移动通信有限公司 Method for connecting to cloud end, and terminal device
US20220067106A1 (en) * 2020-09-03 2022-03-03 Microsoft Technology Licensing, Llc Prediction-based action-recommendations in a cloud system

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130326513A1 (en) * 2011-12-20 2013-12-05 WatchDox, Ltd. Method and system for cross-operating systems execution of software applications
WO2013129529A1 (en) * 2012-02-28 2013-09-06 Keepdata株式会社 Backup system
CN107533694A (en) * 2015-04-23 2018-01-02 微软技术许可有限责任公司 Added based on the file of cloud to the intelligence of communication
CN105704249A (en) * 2016-04-18 2016-06-22 广州优达信息科技有限公司 Composite cloud desktop system
CN106648730A (en) * 2016-09-26 2017-05-10 北京小米移动软件有限公司 Processing method and device of abnormal application
CN109815057A (en) * 2019-01-25 2019-05-28 维沃移动通信有限公司 A kind of data back up method and mobile terminal
CN109783122A (en) * 2019-01-29 2019-05-21 重庆邮电大学 A kind of software security upgrade method and system based on V2X roadside device
WO2021184219A1 (en) * 2020-03-17 2021-09-23 Oppo广东移动通信有限公司 Method for connecting to cloud end, and terminal device
CN111526251A (en) * 2020-05-26 2020-08-11 卢泽民 Method for simultaneously solving several problems along with increasing kinds of household equipment
US20220067106A1 (en) * 2020-09-03 2022-03-03 Microsoft Technology Licensing, Llc Prediction-based action-recommendations in a cloud system
CN113101670A (en) * 2021-04-15 2021-07-13 网易(杭州)网络有限公司 Version switching method and device

Also Published As

Publication number Publication date
CN114826886B (en) 2024-03-15

Similar Documents

Publication Publication Date Title
CN108427616B (en) Background program monitoring method and monitoring device
US9384114B2 (en) Group server performance correction via actions to server subset
US10298469B2 (en) Automatic asynchronous handoff identification
EP3575975B1 (en) Method and apparatus for operating smart network interface card
US10452469B2 (en) Server performance correction using remote server actions
EP3126961A1 (en) Monitoring of node.js applications
CN113407383B (en) Main and standby system switching method and device, server and main and standby system
US11360832B2 (en) Operation method of robot operating system and a robot control method
CN113900834B (en) Data processing method, device, equipment and storage medium based on Internet of things technology
CN111143031A (en) Method and device for changing capacity of virtual machine
EP2975524B1 (en) Information processing device
CN110881224B (en) Network long connection method, device, equipment and storage medium
EP3699731B1 (en) Method and device for calling input method, and server and terminal
US10191844B2 (en) Automatic garbage collection thrashing monitoring
CN112235300B (en) Cloud virtual network vulnerability detection method, system, device and electronic equipment
US20150067139A1 (en) Agentless monitoring of computer systems
CN114826886B (en) Disaster recovery method and device for application software and electronic equipment
CN114244700A (en) Port processing method and device, electronic equipment and computer readable storage medium
CN112416698B (en) Expansion method and device of monitoring system, storage medium and electronic equipment
CN113472553B (en) Fault injection system and method
CN115858222B (en) Virtual machine fault processing method, system and electronic equipment
US9935856B2 (en) System and method for determining end user timing
JP2018160773A (en) Monitoring device and monitoring program
JP2018160020A (en) Monitoring system, program and monitoring method
US20230315497A1 (en) Waiting period determination using an agent

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant