Disaster recovery system, disaster recovery processing method, device, storage medium and program product
By designing two computing systems to provide services to the outside world at the same time and switching to backup resources when service resources fail, the problem of low utilization rate of primary and backup disaster recovery resources in the existing technology is solved, and efficient resource utilization and data consistency are achieved.
Patent Information
- Application Number
- CN202411253325.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-06
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2044-09-06
AI Technical Summary
In the prior art, the resource utilization rate of main disaster recovery is low, resulting in low resource waste and utilization rate.
A disaster recovery system is designed in which two computing systems (the first computing system and the second computing system) provide services to the outside world at the same time and data backup is performed through data synchronization. When the service resource fails, the server will access the backup service resource by establishing a new connection to ensure system continuity and data consistency.
Improve resource utilization, reduce pressure on a single server, and ensure data consistency and system availability.
Smart Images

Figure CN118779159B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computer technology, and in particular to a disaster recovery system, a disaster recovery processing method, a device, a storage medium, and a program product. Background Art
[0002] In order to ensure that the computing system will not lose data and can still provide services to the outside world when it fails due to natural disasters, man-made accidents or other emergencies, the main and backup disaster recovery methods are usually used to solve the failure problem, that is, a main computing system and a backup computing system are configured. The main computing system is responsible for providing daily services, and the backup computing system is in standby mode. When the main computing system fails, the backup computing system can take over the tasks of the main computing system and provide services to the outside world. However, this disaster recovery method does not make efficient use of resources, resulting in resource waste and low resource utilization. Summary of the invention
[0003] The embodiments of the present application provide a disaster recovery system, a disaster recovery processing method, a device, a storage medium and a program product, which are used to solve the problem of low resource utilization of active-standby disaster recovery in the prior art.
[0004] In a first aspect, an embodiment of the present application provides a disaster recovery system, including a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization;
[0005] The first service end is configured to access the first service resource based on an access request through a first connection established with the first service resource; and in the event of a failure of the first service resource, access the second service resource based on the access request through a second connection established with the second service resource;
[0006] The second service end is used to access the first service resource based on the access request through a first connection established with the first service resource; in the event of a failure of the first service resource, access the second service resource based on the access request through a second connection established with the second service resource.
[0007] In a second aspect, an embodiment of the present application provides a disaster recovery system, including a first computing system and a second computing system; a first server and a first message queue are deployed in the first computing system; a second server and a second message queue are deployed in the second computing system; data synchronization is used to perform data backup between the first message queue and the second message queue;
[0008] The first server is configured to publish a first message in the first message queue based on a message publishing request through a first connection established with the first message queue, set a first tag for the first message, and consume the first message with the first tag from the first message queue based on a message consumption request; in the event of a failure of the second message queue, configure the second tag to consume a second message with a second tag from the first message queue according to the message consumption request;
[0009] The second server is used to publish a second message in the second message queue and set the second tag for the second message based on a message publishing request through a second connection established with the second message queue, and consume the second message with the second tag from the second message queue based on a message consumption request; in the event of a failure of the first message queue, configure the first tag and consume the first message with the first tag from the second message queue according to the message consumption request.
[0010] In a third aspect, an embodiment of the present application provides a disaster recovery processing method, which is applied to a disaster recovery system, wherein the disaster recovery system includes a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; the method includes:
[0011] accessing the first service resource based on the access request through the first connection established with the first service resource;
[0012] In case of a failure of the first service resource, the first connection is disconnected, and the second service resource is accessed based on an access request through a second connection established with the second service resource.
[0013] In a fourth aspect, an embodiment of the present application provides a disaster recovery processing method, which is applied to a disaster recovery system, wherein the disaster recovery system includes a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; the method includes:
[0014] receiving an access request from at least one client;
[0015] Distributing the access request to the first server and the second server;
[0016] In case of a failure of the first computing system, sending the access request to the second server;
[0017] In case of a failure of the second computing system, the access request is sent to the first server.
[0018] In the fifth aspect, a computing device is provided in an embodiment of the present application, including a processing component and a storage component; the storage component stores one or more computer instructions; the one or more computer instructions are used to be called and executed by the processing component to implement the disaster recovery processing method described in the third aspect above or the disaster recovery processing method described in the fourth aspect above.
[0019] In a sixth aspect, an embodiment of the present application provides a computer storage medium storing a computer program, which, when executed by a computer, implements the disaster recovery processing method described in the third aspect or the disaster recovery processing method described in the fourth aspect.
[0020] In the seventh aspect, a computer program product is provided in an embodiment of the present application, including a computer program / instruction. When the computer program / instruction is executed by a computer, it implements the disaster recovery processing method described in the third aspect above or the disaster recovery processing method described in the fourth aspect above.
[0021] The embodiment of the present application provides a disaster recovery system, including a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; the first server is used to access the first service resource based on an access request through a first connection established with the first service resource; in the case of a failure of the first service resource, the second service resource is accessed based on an access request through a second connection established with the second service resource; the second server is used to access the first service resource based on an access request through a first connection established with the first service resource; in the case of a failure of the first service resource, the second service resource is accessed based on an access request through a second connection established with the second service resource. In this embodiment, both the first server and the second server can access the service resource based on an access request, which can reduce the pressure on a single server and improve the performance of the system. Since the first computing system and the second computing system can provide services to the outside at the same time, compared with the main computing system providing services to the outside, the disaster recovery computing system is idle on a daily basis and is only enabled when a failure occurs, which improves resource utilization. In addition, both the first server and the second server access the first service resource through the first connection. In the event of a failure of the first service resource, both the first server and the second server access the second service resource through the second connection, thereby ensuring that the two servers access the same service resource and avoiding data overwrite caused by data synchronization between the two service resources due to simultaneous access to the two service resources, thereby ensuring data consistency.
[0022] These and other aspects of the present application will become more clearly understood in the description of the following embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0024] Figure 1 A schematic diagram showing the structure of an embodiment of a disaster recovery system provided by the present application is shown;
[0025] Figure 2 A schematic diagram showing the structure of another embodiment of a disaster recovery system provided by the present application is shown;
[0026] Figure 3 A schematic diagram showing the structure of another embodiment of a disaster recovery system provided by the present application is shown;
[0027] Figure 4A schematic diagram showing the structure of another embodiment of a disaster recovery system provided by the present application is shown;
[0028] Figure 5 A schematic diagram showing the structure of another embodiment of a disaster recovery system provided by the present application is shown;
[0029] Figure 6 A schematic diagram showing the structure of another embodiment of a disaster recovery system provided by the present application is shown;
[0030] Figure 7 A flowchart of an embodiment of a disaster recovery processing method provided by the present application is shown;
[0031] Figure 8 A flowchart of another embodiment of a disaster recovery processing method provided by the present application is shown;
[0032] Fig. 9 A schematic diagram of the structure of an embodiment of a computing device provided by the present application is shown. DETAILED DESCRIPTION
[0033] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0034] It should be noted that the descriptions such as “first” and “second” in this article are used to distinguish different components, messages, devices, modules, etc., and do not represent the order of precedence, nor do they limit “first” and “second” to different types.
[0035] The technical solution of the embodiment of the present application can be applied in disaster recovery scenarios.
[0036] As described in the background technology, the resource utilization rate of the active-standby disaster recovery method is low. In order to improve resource utilization, the inventor thought of configuring two computing systems to participate in providing services to the outside world at the same time. Then, after a series of studies, the inventor proposed the technical solution of this application. The technical solution of this application provides a disaster recovery system, including a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; the first server is used to access the first service resource based on an access request through a first connection established with the first service resource; in the case of a failure of the first service resource, the second service resource is accessed based on a distributed access request through a second connection established with the second service resource; the second server is used to access the first service resource based on an access request through a first connection established with the first service resource; in the case of a failure of the first service resource, the second service resource is accessed based on an access request through a second connection established with the second service resource. In this embodiment, both the first server and the second server can access the service resource based on receiving an access request, which can reduce the pressure of a single server and improve the performance of the system. Since the first computing system and the second computing system can provide services to the outside world at the same time, compared with the main computing system providing services to the outside world, the disaster recovery computing system is idle on a daily basis and is only enabled when a failure occurs, thereby improving resource utilization. In addition, both the first server and the second server access the first service resource through the first connection. In the event of a failure in the first service resource, both the first server and the second server access the second service resource through the second connection, thereby ensuring that the two servers access the same service resource, avoiding data synchronization caused by accessing the two service resources at the same time and causing data overwriting, thereby ensuring data consistency.
[0037] In a practical application, the technical solution of the embodiment of the present application can be applied in a cloud computing scenario. Cloud computing is one of the fastest-growing trends in computer technology, which involves providing hosting services over the Internet. A cloud computing environment provides computing and storage resources as services to end users. End users can make requests to the provided services for processing. The processing capacity of the service is usually limited by the configured resources.
[0038] Cloud computing is a service delivery model that enables on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal management effort or interaction with the service provider.
[0039] In a cloud computing scenario, the first computing system may refer to, for example, a main cloud computer room, the second computing system may refer to a disaster recovery cloud computer room, the first server may refer to a main cloud service application deployed in the main cloud computer room, and the second server may refer to a backup cloud service application deployed in the disaster recovery cloud computer room. The first service resource and the second service resource may refer to cloud product instances provided by the cloud computing environment, respectively. Cloud product instances may include, for example, computing instances, storage instances, database instances, network instances, security instances, etc. The computing instances may include, for example, virtual machine instances, etc. Users may run operating systems and service programs by creating virtual machine instances. Storage instances may include, for example, object storage services for storing unstructured data such as images and texts, or block storage services for providing block-level storage; database instances may include, for example, relational databases (MySQL, PostgreSQL, etc.) or non-relational databases (MongoDB, Cassandra, etc.); network instances may include virtual private clouds (VPCs), load balancers, etc. Security instances may include, for example, firewalls or defense systems, etc. In one implementation, the first server and the second server may refer to service programs running in computing instances, and the first service resources and the second service resources may refer to storage instances or database instances, etc., so that service programs can access them accordingly. In one or more of the following embodiments, the technical solution of the present application will be introduced using a cloud computing environment as an example. Of course, the embodiments of the present application are not limited to a cloud computing environment. On the contrary, the embodiments of the present application can be implemented in combination with any other type of computing environment now known or developed later.
[0040] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0041] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0042] It should be noted that the technical solution of the embodiment of the present application is applicable to a network virtual environment. The users described generally refer to "virtual users". Real users can register a user account in the server through registration to obtain a user identity in the network environment.
[0043] The implementation details of the technical solution of the embodiment of the present application are elaborated in detail below.
[0044] Figure 1 This is a schematic diagram of a structure of an embodiment of a disaster recovery system provided by the present application, and the disaster recovery system may include a first computing system 101 and a second computing system 102; a first server 103 and a first service resource 104 are deployed in the first computing system 101; a second server 105 and a second service resource 106 are deployed in the second computing system 102. The first service resource 104 and the second service resource 106 perform data backup through data synchronization.
[0045] The first server 103 can be used to access the first service resource 104 based on an access request through a first connection established with the first service resource 104; in the event of a failure of the first service resource 104, access the second service resource 106 based on an access request through a second connection established with the second service resource 106.
[0046] The second server 105 can be used to access the first service resource 104 based on an access request through a first connection established with the first service resource 104; in the event of a failure of the first service resource 104, access the second service resource 106 based on an access request through a second connection established with the second service resource 106.
[0047] The access request may come from at least one client 107 .
[0048] Among them, the client 107 can be a browser, an APP (Application), or a web application such as H5 (HyperText Markup Language 5, Hypertext Markup Language Version 5) application, or a light application (also known as a mini-program, a lightweight application) or a cloud application, etc. The client 107 can be deployed in an electronic device and needs to rely on the device to run or some apps in the device to run. For example, the electronic device can have a display screen and support information browsing, such as a personal mobile terminal such as a mobile phone, a tablet computer, a personal computer, a desktop computer, a smart speaker, a smart watch, etc. Various other types of applications can usually be configured in the electronic device, such as human-computer dialogue applications, model training applications, text processing applications, web browser applications, shopping applications, search applications, instant messaging tools, email clients, social platform software, etc. Electronic equipment can refer to a device used by a user, which has the functions of computing, surfing the Internet, communicating, etc. required by the user, such as a mobile phone, a tablet computer, a personal computer, a wearable device, etc. Electronic equipment can generally include at least one processing component and at least one storage component. The electronic device may also include basic configurations such as a network card chip, an IO bus, and audio and video components, which are not limited in this application. Optionally, depending on the implementation form of the electronic device, some peripheral devices may also be included, such as a keyboard, a mouse, an input pen, a printer, etc., which is not limited in this application.
[0049] Among them, the computing system can refer to, for example, a computer room, also known as a data center, etc. It can refer to a space that provides a dedicated operating environment for computers and other network devices, and is used to host IT (Internet technology) hardware facilities such as servers, storage devices, and network devices. The computing system can include many physical machines to run the server or service resources. In the cloud computing scenario, the computing system can be the basis for providing computing, storage, and network resources. The computing system usually has the characteristics of large scale, high availability, and automated operation and maintenance, and provides multiple functions such as computing resources, storage services, and network services.
[0050] The first computing system 101 and the second computing system 102 may be master and backup systems for each other. For example, the first computing system may be a master computing system, and the second computing system 102 may be a backup computing system for the first computing system 101 .
[0051] The first computing system 101 and the second computing system 102 may be physically connected via optical fibers or the like to perform data transmission.
[0052] The first server 103 may run in the first computing system 101. In a cloud computing scenario, the first server 103 may be a service program running in a physical machine of the first computing system 101 or a virtual machine deployed in the physical machine. The second server 105 may serve as a backup server of the first server 103 and run in the second computing system 102. It may be a service program running in a physical machine of the second computing system 102 or a virtual machine deployed in the physical machine.
[0053] Among them, at least one client 107 can be deployed in the user-side system, and a traffic distribution system can be deployed in the user-side system to distribute the access request sent by at least one client 107 to the disaster recovery system. Optionally, the traffic distribution system can distribute the access request of at least one client 107 to the first server 103 and the second server 105 according to a certain forwarding rule. The forwarding rule can, for example, distribute the access request according to the traffic ratio corresponding to the first server 103 and the second server 105, etc. In actual applications, the traffic distribution system can be implemented as a load balancer, etc. Of course, the access requests received by the first server 103 and the second server 105 can also be distributed in a distribution manner, which will be described in detail in the following embodiments.
[0054] The second service resource 106 may be a backup service resource for the first service resource 104 , and data backup is performed between the first service resource 104 and the second service resource 106 through data synchronization.
[0055] In this embodiment, the first server 103 and the second server 105 can both access the service resources based on the access request, which can reduce the pressure on a single server and improve the performance of the system. Since the first computing system 101 and the second computing system 102 can provide services to the outside at the same time, compared with the main computing system providing services to the outside, the disaster recovery computing system is idle on a daily basis and is only enabled in the event of a failure, thereby improving resource utilization. In addition, both the first server 103 and the second server 105 access the first service resource 104 through the first connection. In the event of a failure of the first service resource 104, both the first server 103 and the second server 105 access the second service resource 106 through the second connection, ensuring that the two servers access the same service resource, avoiding simultaneous access to the two service resources resulting in data synchronization of the two service resources causing data overwriting, and ensuring data consistency.
[0056] In some embodiments, the disaster recovery system may further include a control system. The control system may be configured to receive an access request from at least one client 107 and distribute the access request to the first server 103 and the second server 105 .
[0057] That is, an access request from at least one client 107 may be sent to the control system, and the control system distributes the access request to the first server 103 and the second server 105 .
[0058] The control system may be deployed in the first computing system or the second computing system. In addition, the control system may be independent of the first computing system and the second computing system.
[0059] In some embodiments, Figure 2 As shown, Figure 1 The difference between the system architecture shown is that the control system may include a first control system. The first control system may include at least one first control terminal 108, and the at least one first control terminal 108 may be distributed and deployed in the first computing system 101 and the second computing system 102. For example, the at least one first control terminal may include at least one first control terminal deployed in the first computing system 101 and the second computing system 102. In actual applications, the target first control terminal in the at least one first control terminal 108 may distribute the access request from the at least one client 107 to the first server 103 and the second server 105.
[0060] In addition, at least one first control terminal 108 can be used to reselect any first control terminal as a target control terminal when a target first control terminal fails.
[0061] The at least one control terminal 108 may form a cluster, for example, a Raft (a distributed consensus algorithm) cluster, in which the target first control terminal is a leader node (Leader), and the other first control terminals are followers (Followers). In the event of a leader node failure, the follower nodes are transformed into candidate nodes (Candidate) and the leader node is reselected, etc. The target first control terminal and the other first control terminals may report their own health status, etc., through heartbeat messages.
[0062] Among them, the first control terminal 108 can be implemented as a DNS (Domain Name System), for example. The DNS can resolve the domain name used in the access request to the corresponding access address of the first server 103 or the second server 105 according to the mapping relationship between the domain name and the access address such as the IP (Internet Protocol) address stored in it (called A record), and then the access request can be routed to the correct server according to this access address. For example, the first control terminal can also be implemented as an SLB (Global Server Load Balance) to distribute the received access requests to multiple servers, avoid overloading a single server, and improve the overall processing capacity of the disaster recovery system. Of course, the first control terminal can also be implemented as other forms of controllers, etc., so that domain name resolution and traffic scheduling can be performed, etc., and this application does not limit it.
[0063] In some embodiments, the control system may specifically distribute the received access request of at least one client 107 to the first server 103 and the second server 105 according to the routing rule. The routing rule may include one or more of the following implementations: the flow ratios corresponding to the first computing system 101 and the second computing system 102; the access areas corresponding to the first computing system 101 and the second computing system 102; and the access types corresponding to the first computing system 101 and the second computing system 102.
[0064] That is, as an optional implementation method, the control system can distribute the received access requests to the first server 103 and the second server 105 according to the traffic ratios corresponding to the first computing system 101 and the second computing system 102 respectively. For example, 80% of the traffic is distributed to the first server 103 of the first computing system 101, and 20% of the traffic is distributed to the first server 103 of the second computing system 102, and so on. The present application does not limit the traffic ratio.
[0065] As another optional implementation, the control system may distribute the received access request to the first server 103 and the second server 105 according to the access areas corresponding to the first computing system 101 and the second computing system 102, for example, the access areas corresponding to the first computing system 101 and the second computing system 102 may be set according to the geographical locations corresponding to the first computing system 101 and the second computing system 102. The server to distribute the access request may be determined according to whether the source address in the access request conforms to the access areas corresponding to the first computing system 101 and the second computing system 102. For example, the first computing system 101 is located in city A and is responsible for receiving access requests from the northern region, and the second computing system 102 is located in city B and is responsible for receiving access requests from the southern region. If the source address of the access request belongs to the northern region, the access request is distributed to the first server 103 of the first computing system 101, and if the source address of the access request belongs to the southern region, the access request is distributed to the second server 105 of the second computing system 102.
[0066] As another implementation method, the control system can distribute the received access requests to the first server 103 and the second server 105 according to the access types corresponding to the first computing system 101 and the second computing system 102, respectively. For example, the access type can refer to the content type or protocol type of the access request. The first computing system 101 and the second computing system 102 can respectively correspond to access requests of different access types, and distribute the access requests to the corresponding servers according to the access types to which the access requests belong.
[0067] The routing rule may be obtained through user configuration. Therefore, in some embodiments, the control system may also obtain first configuration information configured by the user; the first configuration information may include the routing rule.
[0068] Optionally, the control system may provide a first control interface to obtain first configuration information configured by the user through the control interface.
[0069] In some embodiments, the control system can also be used to output a first fault prompt message when a fault is detected in the first computing system 101 or the first server 103; send the received access request to the second server 105 in response to a first fault switching request triggered by a user; output a second fault prompt message when a fault is detected in the second computing system 102 or the second server 105; send the received access request to the first server 103 in response to a second fault switching request triggered by a user.
[0070] In this embodiment, the control system can automatically detect faults, output fault prompt information to the user, respond to fault switching requests triggered by the user, and promptly switch the server to which the access request is sent, so that the disaster recovery system can still process access requests in the event of a fault, thereby ensuring the continuity of access.
[0071] Optionally, the target first control terminal 108 may output a first fault prompt message when detecting a fault in the first computing system 101 or the first server 103; send the received access request to the second server 105 in response to a first fault switching request triggered by a user; output a second fault prompt message when detecting a fault in the second computing system 102 or the second server 105; and send the received access request to the first server 103 in response to a second fault switching request triggered by a user.
[0072] Of course, the control system may also include a third control system, which includes at least one third control terminal. At least one third control terminal may constitute a Raft cluster. When a target third control terminal among at least one third control terminal detects a failure of the first computing system 101 or the first server 103, it may output a first fault prompt message; in response to a first fault switching request triggered by a user, the received access request may be sent to the second server 105; when a failure of the second computing system 102 or the second server 105 is detected, a second fault prompt message may be output; in response to a second fault switching request triggered by a user, the received access request may be sent to the first server 103.
[0073] At least one third control terminal can be used to reselect any third control terminal as the target third control terminal when the target third control terminal fails.
[0074] In some embodiments, the control system may also be used to synchronize data in the first service resource 104 to the second service resource 106 .
[0075] In addition, the control system can also migrate data in the first service resource 104 to the second service resource 106 when the first computing system fails.
[0076] Optionally, the target third control terminal may synchronize the data in the first service resource 104 to the second service resource 106 ; and in case of a failure of the first computing system, migrate the data in the first service resource 104 to the second service resource 106 .
[0077] In some embodiments, the control system may include a first data synchronization component deployed in the first computing system 101 and a second data synchronization component deployed in the second computing system 102;
[0078] The first data synchronization component may be used to synchronize data in the first service resource 104 to the second service resource 106 .
[0079] The second data synchronization component may be used to migrate data in the second service resource 106 to the first service resource 104 when the first service resource 104 is restored.
[0080] In this embodiment, data synchronization is performed through the first data synchronization component to ensure data consistency, so that when the first service resource fails, the second service resource can continue to provide services. When the first service resource is restored, the data of the second service resource is migrated to the first service resource through the second data synchronization component to ensure data consistency, so that the first service resource can provide services.
[0081] Optionally, the target third control end may call the first data synchronization component to synchronize the data in the first service resource 104 to the second service resource 106, and when the first service resource 104 is restored, call the second data synchronization component to migrate the data in the second service resource 106 to the first service resource 104.
[0082] In some embodiments, in order to reduce the modification of the server, etc., the first service resource may include a first storage resource, and the second service resource may include a second storage resource serving as a backup for the first storage resource.
[0083] The first server 103 can also be used to save the cached data to the first storage resource; the second server 105 can also be used to save the cached data to the first storage resource. For example, the first server 103 and the second server 105 can save the session state to the first storage resource, so that the server does not need to manage the session state, which helps to achieve stateless service.
[0084] In a cloud computing system, the first storage resource and the second storage resource may be cloud storage instances, that is, the first service resource 104 may include a first cloud storage instance; and the second service end 105 resource may include a second cloud storage instance.
[0085] The first server 103 may store cached data in the first cloud storage instance; the second server 105 may store cached data in the first cloud storage instance.
[0086] In some embodiments, the control system may also be used to map the first access domain name of the first service resource 104 and the second access domain name of the second service resource 106 to the same access alias, and configure the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first server 103, the access alias is converted into the first access address of the first service resource 104 according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the second resolution request of the second server 105, the access alias is converted into the first access address of the first service resource 104 according to the weight ratios corresponding to the first access domain name and the second access domain name respectively;
[0087] The first server 103 may also be used to configure an access alias, send a first resolution request to the control system based on the access alias, and establish a first connection with the first service resource 104 according to the first access address fed back by the control system;
[0088] The second server 105 can also be used to configure an access alias, send a second resolution request to the control system based on the access alias, and establish a first connection with the first service resource 104 according to the first access address fed back by the control system.
[0089] Among them, the access alias may refer to a CNAME (Canonical Name, alias). The first access domain name and the second access domain name are both mapped to the same access alias, forming a first CNAME record from the first access domain name to the access alias and a second CNAME record from the second access domain name to the access alias. Among them, the CNAME record is a type of resource record used to point the access alias to the access domain name. Among them, the access address record mapped to the access domain name is an A record, that is, the A record points to the access address corresponding to the access domain name, and the CNAME record points to the access domain name corresponding to the access alias. The access domain name corresponding to the access alias can be determined by parsing the CNAME, and the access address corresponding to the access domain name can be determined by parsing the A record. In actual applications, the access address may refer to an IP address (Internet Protocol Address), for example.
[0090] In addition, the weight ratios corresponding to the first access domain name and the second access domain name can also be configured. For example, the weight ratio of the first access domain name can be configured to be 100%, and the weight ratio of the second access domain name can be configured to be 0%. Through the weight ratio, the access aliases can all be mapped to the first access domain name of the first service resource 104, so that all access requests point to the first service resource 104.
[0091] The first server 103 and the second server 105 only need to configure the access alias, so that a corresponding resolution request can be initiated to the control system based on the access alias. The control system can respond to the first resolution request of the first server 103, and can determine the first access domain name and the second access domain name pointed to by the access alias. According to the weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 100% weight ratio and the second access domain name corresponds to a 0% weight ratio, it can be determined that the access request corresponds to the first access domain name, and the first access address pointed to by the first access domain name can be determined according to the A record of the first access domain name. The first server 103 can establish a first connection with the first service resource 104 based on the first access address fed back by the control system. The control system can respond to the second resolution request of the second server 105, and can determine the first access domain name and the second access domain name pointed to by the access alias. According to the weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 100% weight ratio and the second access domain name corresponds to a 0% weight ratio, so that it can be determined that the access request corresponds to the first access domain name, and the first access address pointed to by the first access domain name can be determined according to the A record of the first access domain name. The second server 105 can then establish a first connection with the first service resource 104 based on the first access address feedback from the control system.
[0092] In this embodiment, by configuring the access alias and mapping the first access domain name and the second access domain name to the weight ratio of the access alias respectively, traffic distribution to the service resource can be achieved, so that both the first server and the second server can access the first service resource.
[0093] Among them, the target first control end can map the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configure the weight ratio corresponding to the first access domain name and the second access domain name respectively; respond to the first resolution request of the first server end, convert the access alias into the first access address of the first service resource according to the weight ratio corresponding to the first access domain name and the second access domain name respectively; respond to the second resolution request of the second server end, convert the access alias into the first access address of the first service resource according to the weight ratio corresponding to the first access domain name and the second access domain name respectively.
[0094] In addition, in some embodiments, Figure 2 As shown, the control system may further include a second control system, and the second control system may include at least one second control terminal 109, wherein the second control terminal may be implemented as, for example, a DNS or SLB, etc. The at least one second control terminal 109 may be in the form of a Raft cluster or the like.
[0095] At least one second control terminal 109 can be distributed and deployed in the first computing system 101 and the second computing system 102; the target second control terminal in at least one second control terminal 109 can be used to map the first access domain name of the first service resource 104 and the second access domain name of the second service resource 106 to the same access alias, and configure the weight ratio corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first service terminal 103, according to the weight ratio corresponding to the first access domain name and the second access domain name respectively, the access alias is converted into the first access address of the first service resource 104; in response to the second resolution request of the second service terminal 105, according to the weight ratio corresponding to the first access domain name and the second access domain name respectively, the access alias is converted into the first access address of the first service resource 104. At least one second control terminal 109 can be used to select any second control terminal as the target second control terminal again in the event of a target second control terminal failure.
[0096] That is, the target first control end can distribute the access request of at least one client 107 to the server end, and the target second control end can be used to respond to the resolution request of the server end, resolve the access address of the service resource and feed it back to the server end, so that the server end can establish a connection with the service resource based on the access address.
[0097] In some embodiments, the control system may also obtain the user's second configuration information, which may include the weight ratios of the first access domain name and the second access domain name, etc. Optionally, the control system may provide a second control interface to obtain the second configuration information configured by the user through the second control interface.
[0098] In addition, in some embodiments, the target third control terminal may obtain the user's first configuration information and second configuration information. For example, the control interface may be provided by the target third control terminal. At least one third control terminal may be used to select any third control terminal as the target third control terminal again in the event of a target third control terminal failure.
[0099] The target third control terminal can call the interface provided by the target first control terminal 108 and the target second control terminal 109 .
[0100] Optionally, the above routing rules can be configured by the user at the target third control terminal, and the target third control terminal can call the interface provided by the target first control terminal 108 to send the routing rules to the target first control terminal 108, so that the target first control terminal 108 can distribute the access request to the server according to the routing rules.
[0101] Optionally, the access alias and the weight ratios corresponding to the first access domain name and the second access domain name can be configured by the user at the target third control terminal, and sent to the target second control terminal by the target third control terminal by calling an interface provided by the target second control terminal.
[0102] At present, since the first access domain name of the first service resource 104 is different from the second access domain name of the second service resource 106, when switching between service resources, it is necessary to change the access domain name and restart the first server and the second server, which requires more modifications and the switching process is cumbersome. In order to reduce modifications and simplify the switching process, in some embodiments, the control system can also update the weight ratios corresponding to the first access domain name and the second access domain name respectively when the first service resource 104 fails, and according to the third resolution request of the first server 103, according to the updated weight ratio, convert the access alias to the second access address of the second service resource 106; in response to the fourth resolution request of the second server 105, according to the updated weight ratio, convert the access alias to the second access address of the second service resource 106.
[0103] The first server 103 may also send a third resolution request to the control system when the first service resource 104 fails, and establish a second connection with the second service resource 106 according to the second access address fed back by the control system.
[0104] The second server 105 may also send a fourth resolution request to the control system when the first service resource 104 fails, and establish a second connection with the second service resource 106 according to the second access address fed back by the control system.
[0105] For example, the weight ratio corresponding to the first access domain name of the first access resource can be updated from 100% to 0%, and the weight ratio corresponding to the second access domain name of the second service resource 106 can be updated from 0% to 100%, so that all access aliases are mapped to the second access domain name of the second service resource 106, and all access requests point to the second service resource 106.
[0106] In the event of a failure of the first service resource 104, the connection between the first server 103 and the first service resource 104 will be disconnected, and the first server 103 can re-initiate a resolution request based on the access alias, that is, can send a third resolution request to the control system; similarly, the connection between the second server 105 and the first service resource 104 will also be disconnected, and the second server 105 can re-send a fourth resolution request to the control system based on the access alias.
[0107] The control system can respond to the third resolution request of the first server 103, and can determine the first access domain name and the second access domain name pointed to by the access alias. According to the updated weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 0% weight ratio and the second access domain name corresponds to a 100% weight ratio. It can be determined that the access request corresponds to the second access domain name, and then according to the A record of the second access domain name, it can be determined that the second access domain name points to the second access address. The second server 105 can establish a second connection with the second service resource 106 based on the second access address feedback from the control system. The control system can respond to the fourth resolution request of the second server 105, and can determine the first access domain name and the second access domain name pointed to by the access alias. According to the updated weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 0% weight ratio and the second access domain name corresponds to a 100% weight ratio. It can be determined that the access request corresponds to the second access domain name, and then according to the A record of the second access domain name, it can be determined that the second access domain name points to the second access address. The second server 105 can establish a second connection with the second service resource 106 based on the second access address feedback from the control system.
[0108] Therefore, the first server 103 and the second server 105 can establish a second connection with the second service resource 106 when the first service resource 104 fails, and access the second service resource 106 instead, so as to avoid service interruption caused by the failure of the first service resource 104 and ensure service continuity and availability. Among them, by configuring the access alias and the weight ratio of the first access domain name and the second access domain name mapped to the access alias, only the weight ratio needs to be modified to realize the switching of service resources, which requires less modification and simplifies the switching process.
[0109] Optionally, when the first service resource fails, the target second control end may update the weight ratios respectively corresponding to the first access domain name and the second access domain name, and convert the access alias into the second access address of the second service resource according to the updated weight ratio based on the third resolution request of the first server end; and convert the access alias into the second access address of the second service resource according to the updated weight ratio in response to the fourth resolution request of the second server end.
[0110] In some embodiments, the first server 103 may also disconnect the first connection established with the first service resource 104 and establish a second connection with the second service resource 106 when the first service resource 104 fails; disconnect the second connection with the second service resource 106 and restore the first connection with the first service resource 104 when the first service resource 104 recovers. The second server 105 may also disconnect the first connection established with the first service resource 104 and establish a second connection with the second service resource 106 when the first service resource 104 fails; disconnect the second connection with the second service resource 106 and restore the first connection with the first service resource 104 when the first service resource 104 recovers.
[0111] In some embodiments, the control system may also be used to output recovery prompt information when detecting the recovery of the first service resource 104; and in response to a fault recovery request triggered by a user, send a recovery switching request to the first server 103 and the second server 105. The first server 103 and the second server 105 may determine that the first service resource 104 is recovered according to the recovery switching request.
[0112] Optionally, the target first control terminal, the target second control terminal or the target third control terminal may output recovery prompt information when detecting that the first service resource 104 is recovered; and in response to the fault recovery request triggered by the user, send a recovery switching request to the first service terminal 103 and the second service terminal 105 respectively. This application does not limit this.
[0113] Among them, when the control system detects the recovery of the first service resource, the recovery prompt information outputted can inform the user of the recovery of the first service resource, which helps the user understand the status of the first service resource and perform operations. For example, the user can trigger a fault recovery request, and then the control system can respond to the fault recovery request and send a recovery switching request to the first server 103 and the second server 105. Then the first server 103 and the second server 105 can determine the recovery of the first service resource 104 according to the recovery switching request, and then the first server 103 and the second server 105 can disconnect the second connection with the second service resource 106 and restore the first connection with the first service resource 104. When the first service resource 104 is normal, the first server 103 and the second server 105 can access the first service resource 104 through the first connection based on the access request, which can improve the consistency of data and improve the reliability and availability of the disaster recovery system.
[0114] In some embodiments, multiple different servers may be deployed in the first computing system 101, such as Figure 3As shown in the structural diagram, a third server 110 can also be deployed in the first computing system 101, and a fourth server 111 as a backup for the third server 110 can also be deployed in the second computing system 102; a third service resource 112 can also be deployed in the first computing system 101, and a fourth service resource 113 as a backup for the third service resource 112 can also be deployed in the second computing system, and data backup is performed between the third service resource 112 and the fourth service resource 113 through data synchronization.
[0115] The control system may also be used to determine a third server 110 associated with the first server 103 and deployed in the first computing system 101 and a fourth server 111 deployed in the second computing system 102 .
[0116] The third server 110 can be used to access the third service resource 112 based on an access request distributed by the control system through a third connection established with the third service resource 112 deployed in the first computing system 101; in the event of a failure of the third service resource 112, the fourth service resource 113 can be accessed based on an access request distributed by the control system through a fourth connection established with the fourth service resource 113 deployed in the second computing system 102.
[0117] The fourth server 111 can be used to access the third service resource 112 based on an access request distributed by the control system through a third connection established with the third service resource 112; in the event of a failure of the third service resource 112, the fourth service resource 113 can be accessed based on an access request distributed by the control system through a fourth connection established with the fourth service resource 113.
[0118] Among them, the first server 103 may have a dependency or collaborative relationship with the third server 110, and the first server 103 may call the interface of the third server 110 to interact with the third server 110. For example, in a cloud computing scenario, the first server may refer to a service program running in a computing instance in a primary cloud computer room, the second server may refer to a service program running in a computing instance in a backup cloud computer room, the third server 110 may refer to a related service program associated with the service program running in the computing instance in the primary cloud computer room, and the fourth server 111 may refer to a related service program running in a computing instance in a backup cloud computer room.
[0119] The control system can also be used to control the third server 110 and the fourth server 111 to establish a fourth connection with the fourth service resource 113 deployed in the second computing system 102 in the event of a failure of the first service resource 104 accessed by the first server 103, so as to access the fourth service resource 113 through the fourth connection based on an access request distributed by the control system.
[0120] Optionally, in the event of a failure of the first server, the target first control terminal, the target second control terminal or the target control terminal may forward the access request sent to the third server 110 to the fourth server 111; in the event of a failure of the first service resource 104 accessed by the first server 103, the third server 110 and the fourth server 111 may be controlled to establish a fourth connection with the fourth service resource 113 so as to access the fourth service resource 113 through the fourth connection based on the access request distributed by the control system. This application does not limit this.
[0121] For example, Figure 3 As shown, when the first service resource 104 accessed by the first server 103 fails, the first server 103 and the second server 105 switch from accessing the first service resource 104 to the second service resource 106, and the third server 110 and the fourth server 111 switch from accessing the third service resource 112 to the fourth service resource 113.
[0122] The first service resource 104 and the third service resource 112 may be the same or different. The first service resource 104 is different from the third service resource 112. When the first service resource 104 accessed by the first server 103 fails, the third service resource 112 accessed by the third server 110 and the fourth server 111 may not fail. The control system may disable the third access address of the third service resource 112, disconnect the third connection between the third server 110 and the fourth server 111 and the third service resource 112, and establish a fourth connection between the third server 110 and the fourth server 111 and the fourth service resource 113.
[0123] The control system may also be configured to forward an access request sent to the third server 110 to the fourth server 111 in the event of a failure of the first server 103 .
[0124] For example, Figure 4 In the structural diagram shown, the first control terminal deployed in the first computing system can send access requests to the first server 103 and the third server 110. The first control terminal deployed in the second computing system can send access requests to the second server 105 and the fourth server 111. In the event of a failure of the first server 103, the access request sent to the first server 103 can be forwarded to the second server 105, and the access request sent to the third server 110 can be forwarded to the fourth server 111.
[0125] In this embodiment, the first server 103 is associated with the third server 110 and the fourth server 111, and the first server 103 and the third server 110 are both deployed in the first computing system 101. In the event of a failure of the first server 103, an access request sent to the first server 103 will be forwarded to the second server 105 in the second computing system 102, and an access request sent to the third server 110 will be forwarded to the fourth server 111 corresponding to the third server 110 in the second computing system 102. This can ensure that the associated servers run on the same computing system, improve data consistency, reduce data transmission delays between associated servers, and help improve system performance. In addition, in the event that the first service resource 104 accessed by the first server 103 fails, the first server 103 switches to accessing the second service resource 106 of the second computing system 102, and the third server 110 and the fourth server 111 switch from accessing the third service resource 112 to the fourth service resource 113 of the second computing system 102, which can ensure that the associated servers access the service resources of the same computing system and avoid accessing service resources across computing systems, which can improve data consistency, reduce data transmission delays, and help improve system performance.
[0126] In actual applications, when the first service resource 104 or the second service resource 106 is not faulty, there will also be some service resource switching requirements, such as in disaster recovery scenarios, or service resource recovery scenarios, etc. In order to disconnect the connection with the service resource, especially when the service resource is a database instance in a cloud product instance, the server often cannot automatically disconnect the connection with the database instance. Therefore, in some embodiments, the control system can also respond to the first service resource 104 switching event, disable the first access address to disconnect the first connection; update the weight ratios corresponding to the first access domain name and the second access domain name, and according to the fifth resolution request of the first server 103, according to the updated weight ratio, convert the access alias to the second access address of the second service resource 106; respond to the sixth resolution request of the second server 105, according to the updated weight ratio, convert the access alias to the second access address of the second service resource 106. Optionally, the target first control end, the target second control end or the target third control may perform subsequent operations in response to the first service resource switching event, and this application does not limit this.
[0127] The first server 103 may also send a fifth resolution request to the control system when the first connection is disconnected, and establish a second connection with the second service resource 106 according to the second access address fed back by the control system.
[0128] The second server 105 may also send a sixth resolution request to the control system when the first connection is disconnected, and establish a second connection with the second server 105 according to the second access address fed back by the control system.
[0129] Among them, in the event of a service resource failure, the connection established between the service resource and the server based on the access address will be automatically disconnected. In the event of a service resource switching, the service resource may not be able to automatically disconnect the connection established with the server based on the access address. Therefore, in this embodiment, in response to the service resource switching event from the first service resource 104 to the second service resource 106, the control system can disconnect the first connection between the first service resource 104 and the first server 103 and the second server 105 by disabling the first access address of the first service resource 104. At the same time, the control system can update the weight ratios corresponding to the first access domain name and the second access domain name, for example, the weight ratio of the first access domain name of the first service resource 104 can be updated from 100% to 0%, and the weight ratio of the second access domain name of the second service resource 106 can be updated from 0% to 100%.
[0130] Furthermore, after the first server 103 is disconnected from the first service resource 104, it can send a fifth resolution request to the control system. The control system can respond to the fifth resolution request to determine the first access domain name and the second access domain name pointed to by the access alias, and according to the updated weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 0% weight ratio and the second access domain name corresponds to a 100% weight ratio. It can be determined that the access request corresponds to the second access domain name, and the second access domain name can be determined to point to the second access address based on the A record of the second access domain name. The first server 103 can then establish a second connection with the second service resource 106 based on the second access address fed back by the control system. The control system can respond to the sixth resolution request of the second server 105, determine the first access domain name and the second access domain name pointed to by the access alias, and according to the updated weight ratios corresponding to the first access domain name and the second access domain name, specifically, the first access domain name corresponds to a 0% weight ratio and the second access domain name corresponds to a 100% weight ratio, so that it can be determined that the access request corresponds to the second access domain name, and then according to the A record of the second access domain name, it can be determined that the second access domain name points to the second access address. The second server 105 can then establish a second connection with the second service resource 106 based on the second access address feedback from the control system.
[0131] The first service resource switching event may be, for example, receiving a switching request for the first service resource 104 triggered by a user.
[0132] In addition, in order to ensure that the first service resource can be used normally when it is restored, in some embodiments, the control system can also enable the first access address when the second connection is established.
[0133] In some embodiments, the control system may also disable the second access address to disconnect the second connection in response to a second service resource switching event; update the first access domain name and the second access domain name to correspond to the first weight ratio respectively, and according to the seventh resolution request of the first server end 103, convert the access alias into the first access address of the first service resource 104 according to the first weight ratio; respond to the eighth resolution request of the second server end 105, convert the access alias into the first access address of the first service resource 104 according to the first weight ratio; optionally, the subsequent operations may be performed by the target first control end, the target second control end or the target third control end in response to the second service resource switching event, which is not limited in the present application.
[0134] The first server 103 may also be used to send a seventh resolution request to the control system when the second connection is disconnected, and to establish a first connection with the first service resource 104 according to the first access address fed back by the control system.
[0135] The second server 105 can also be used to send an eighth resolution request to the control system when the second connection is disconnected, and establish a first connection with the first service resource 104 according to the first access address fed back by the control system.
[0136] Among them, the control system updates the weight ratios corresponding to the first access domain name and the second access domain name respectively. For example, the weight of the first access domain name of the first service resource 104 can be restored from 0% to 100%, and the weight ratio of the second access domain name of the second service resource 106 can be restored from 100% to 0%.
[0137] The second service resource switching event may be, for example, receiving a switching request for the second service resource triggered by a user or receiving a fault recovery request for the first service resource triggered by a user.
[0138] For ease of understanding, take the control system in which the first target control terminal implements traffic distribution and the second target control terminal implements domain name mapping operation as an example. Figure 5In the control diagram of the disaster recovery system shown, taking the cloud computing scenario as an example, it is assumed that the first server 103 and the second server 105 can be service programs deployed in a virtual machine such as ECS (Elastic Compute Service, cloud server), and the first service resource 104 and the second service resource 106 are database instances. The first computing system 101 is the main computer room, and the second computing system 102 is the disaster recovery room. The main computer room and the disaster recovery room are connected through cables such as optical fibers, and network access can be performed through switches such as ISW (Inter-Switch External Access Switch, external network access switch), CSW (Cloud Switch Internal Access Switch, internal network access switch), etc., to achieve network interconnection between the main computer room and the disaster recovery room.
[0139] The target first control terminal 108 can receive access requests from at least one client 107, and distribute the access requests to the first server 103 and the second server 105 according to the routing rules, such as the flow ratios corresponding to the first server 103 and the second server 105, for example, the flow ratio of the first server 103 is 80% and the flow ratio of the second server 105 is 20%. The disaster recovery system can receive access requests from at least one client 107.
[0140] The first server 103 and the second server 105 may be respectively configured with access aliases, and the access aliases point to the first access domain name of the first service resource 104 and the second access domain name of the second service resource 106 .
[0141] The target second control terminal can determine the mapped first access domain name and second access domain name by parsing the access alias, and determine the first access address of the first service resource that the access alias ultimately corresponds to based on the weight ratio.
[0142] The first server 103 and the second server 105 can establish a connection with the first service resource 104 according to the first access address, so as to access the first service resource 104 based on the access request.
[0143] In the event of a failure of the first service resource 104, only the weight ratio needs to be updated to resolve the access alias to the corresponding second access address, so that the first server 103 and the second server 105 can re-establish the connection with the second service resource 106 to access the second service resource 106 based on the access request.
[0144] In a practical application, the service resource can be a message queue, see Figure 6 As shown, Figure 6A structural diagram of another embodiment of a disaster recovery system provided for the present application, the disaster recovery system may include a first computing system 201 and a second computing system 202; a first server 203 and a first message queue 204 are deployed in the first computing system 201; a second server 205 and a second message queue 206 are deployed in the second computing system 202; data backup is performed between the first message queue and the second message queue 206 through data synchronization.
[0145] The first server 203 can be used to publish a first message in the first message queue 204 based on a message publishing request through a first connection established with the first message queue 204, set a first tag for the first message, and consume a first message with a first tag from the first message queue 204 based on a message consumption request; in the event of a failure of the second message queue 206, the second message with a second tag can be consumed from the first message queue 204 according to the message consumption request by configuring the second tag.
[0146] The second server 205 can be used to publish a second message in the second message queue 206 and set a second tag for the second message based on a message publishing request through a second connection established with the second message queue 206, and consume the second message with the second tag from the second message queue 206 based on a message consumption request; in the event of a failure of the first message queue 204, configure the first tag and consume the first message with the first tag from the second message queue 206 according to the message consumption request.
[0147] The first tag may be used to uniquely identify a first message in the first message queue 204, the second tag may be used to uniquely identify a second message in the second message queue 206, and so on.
[0148] In this embodiment, the first computing system and the second computing system can provide services to the outside at the same time. Compared with the main computing system providing services to the outside, the disaster recovery computing system is idle on a daily basis and is only enabled when a fault occurs, thereby improving resource utilization. In addition, the server can implement message filtering through the first tag and the second tag, so that the first server can only access the first message with the first tag, and the second server can only access the second message with the second tag. The first tag and the second tag can ensure data consistency and avoid data overwriting problems caused by data synchronization.
[0149] In the event of a failure in the first message queue 204, the first tag can be configured in the second server 205 so that the first message corresponding to the first tag can continue to be consumed. In the event of a failure in the second message queue 206, the second tag can be configured in the first server 203 so that the second message corresponding to the second tag can continue to be consumed.
[0150] The first server 203 may record the correspondence between the name of the first message queue and the first tag. In the case of a failure of the first message queue 204, since the first message has been synchronized to the second message queue 206, the correspondence between the name of the second message queue and the first tag may be recorded in the second server 205, so that the first message can be consumed by the second server 205. Similarly, the second server 205 may record the correspondence between the name of the second message queue and the second tag. In the case of a failure of the second message queue 206, since the second message has been synchronized to the first message queue 204, the correspondence between the name of the first message queue and the second tag may be recorded in the first server 203, so that the second message can be consumed by the first server 203. The first server 203 may access the first message queue 204 based on the name of the first message queue, and the second message queue 206 may access the second message queue 206 based on the name of the second message queue. Optionally, the message queue name may adopt the access domain name or access address of the message queue.
[0151] In addition, the message publishing request may also specify the topic of the message. In some embodiments, the first server 203 may publish the first message in the first message queue 204 based on the message publishing request through the first connection, and set a first tag for the first message. The first server may publish the first message in the first topic in the first message queue 204 based on the message publishing request through the first connection, and set a first tag for the first message. The first server may record the correspondence between the first message queue name, the topic name, and the first tag.
[0152] The first server 203 consumes the first message with the first tag from the first message queue 204 based on the message consumption request. The first server 203 may consume the first message with the first tag from the first topic in the first message queue 204 based on the message consumption request.
[0153] The second server 205 publishes the second message in the second message queue 206 and sets a second tag for the second message based on the message publishing request through the second connection. It can publish the second message in the second topic of the second message queue 206 and set a second tag for the second message based on the consumption publishing request through the second connection. The second server can record the correspondence between the second message queue name, the topic name and the second tag.
[0154] Optionally, the first message queue 204 may be a first topic synchronized to the second message queue 206. The second message queue 206 may be a second topic synchronized to the second message queue 206. In the event of a failure of the first message queue 204, the corresponding relationship between the first tag, the first topic and the first message queue 204 may be configured in the second server, so that the first message in the first topic can continue to be consumed through the second server. In the event of a failure of the second message queue, the corresponding relationship between the second tag, the second topic and the first message queue may be configured in the first server, so that the second message in the second topic can continue to be consumed through the first server.
[0155] In addition, the first topic and the second topic may also use the same topic name, so that the first message only needs to be synchronized to the second topic of the second message queue 206 , or the second message only needs to be synchronized to the first topic of the first message queue 204 .
[0156] In this embodiment, the server only accesses the message queue deployed in the same computing system, and the data transmission path is short, which can reduce delay and improve system performance. By setting labels, the consistency of the server's production and consumption messages can be guaranteed, and different servers correspond to different labels to avoid the client 207 from receiving duplicate messages. In the event of a failure of the first message queue 204, the first message originally sent to the first server 203 is forwarded to the second server 205. The second server 205 configures the first label so that the second message queue 206 can process the first message with the first label. In the event of a failure of the second message queue 206, the second message originally sent to the second server 205 is forwarded to the first server 203. The first server 203 configures the second label so that the first message queue 204 can process the second message with the second label, thereby realizing the availability of the disaster recovery system.
[0157] In some embodiments, the disaster recovery system may further include a control system.
[0158] The control system may be used to distribute a message publishing request or a message consuming request for target data to the first server 203 and the second server 205 .
[0159] The first server 203 can be used to respond to a message publishing request, publish the first message to the first message queue 204, and set a first tag; respond to a message consumption request, determine the corresponding first tag, and read the second message set with the first tag from the first message queue 204.
[0160] The control system may also be used to synchronize the first message in the first message queue 204 to the second message queue 206 ; and synchronize the second message in the second message queue 206 to the first message queue 204 .
[0161] In some embodiments, the control system may include a first message routing component 208 deployed in the first computing system 201 and a second message routing component 209 deployed in the second computing system 202. The first message routing component 208 may be used to synchronize the first message in the first message queue 204 and its corresponding first tag to the second message queue 206. The first message may carry the first tag.
[0162] The second message routing component 209 may be used to synchronize the second message in the second message queue 206 and its corresponding second tag to the first message queue 204. The second message may carry the second tag.
[0163] For example, in a cloud computing scenario, the first message queue 204 may refer to a message queue instance deployed in a primary cloud computer room, and the second message queue 206 may refer to a message queue instance deployed in a backup cloud computer room. The message queue instance may be, for example, RabbitMQ (an open source message broker and message queue server), RocketMQ (a distributed message middleware), MQTT (Message Queuing Telemetry Transport), or Kafka (a distributed stream processing platform).
[0164] In some embodiments, the control system may also be used to configure the first tag for the second server 205 when the first message queue 204 fails, and to configure the second tag for the first server 203 when the second message queue 206 fails.
[0165] Figure 7 A flowchart of an embodiment of a disaster recovery processing method provided in an embodiment of the present application. The technical solution of this embodiment can be applied to the following examples: Figure 1 or Figure 2 In the disaster recovery system, the technical solution of this embodiment can be executed by the first server or the second server. The method may include the following steps:
[0166] 701: Access a first service resource based on an access request through a first connection established with the first service resource.
[0167] 702: When the first service resource fails, disconnect the first connection, and access the second service resource based on the access request through the second connection established with the second service resource.
[0168] In this embodiment, both the first server and the second server can access the service resource based on the access request, which can reduce the pressure on a single server and improve the performance of the system. Since the first computing system and the second computing system can provide services to the outside world at the same time, compared with the main computing system providing services to the outside world, the disaster recovery computing system is idle on a daily basis and is only enabled in case of a failure, which improves resource utilization. In addition, both the first server and the second server access the first service resource through the first connection. In the event of a failure of the first service resource, both the first server and the second server access the second service resource through the second connection, ensuring that the two servers access the same service resource, avoiding simultaneous access to the two service resources resulting in data synchronization of the two service resources causing data overwriting, and ensuring data consistency.
[0169] In some embodiments, Figure 7 When the technical solution of the illustrated embodiment is executed by the first server, the above-mentioned establishment of the first connection with the first service resource may include: configuring an access alias, sending a first resolution request to the control system based on the access alias, and establishing the first connection with the first service resource according to the first access address fed back by the control system. Among them, the control system may map the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configure the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first server, the access alias is converted into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively.
[0170] In some embodiments, Figure 7 When the technical solution of the illustrated embodiment is executed by the second server, the above-mentioned establishment of the first connection with the first service resource may include: configuring an access alias, sending a second resolution request to the control system based on the access alias, and establishing the first connection with the first service resource according to the first access address fed back by the control system. Among them, the control system may map the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configure the weight ratio corresponding to the first access domain name and the second access domain name respectively; in response to the second resolution request of the second server, according to the weight ratio corresponding to the first access domain name and the second access domain name respectively, the access alias is converted into the first access address of the first service resource.
[0171] In some embodiments, Figure 7When the technical solution of the illustrated embodiment is executed by the first server, it may also include: sending a third resolution request to the control system when the first service resource fails, and establishing a second connection with the second service resource according to the second access address fed back by the control system. Wherein, the control system may update the weight ratios corresponding to the first access domain name and the second access domain name respectively when the first service resource fails, and convert the access alias into the second access address of the second service resource according to the third resolution request and the updated weight ratio.
[0172] In some embodiments, Figure 7 When the technical solution of the illustrated embodiment is executed by the second server, it may also include: sending a fourth resolution request to the control system when the first service resource fails, and establishing a second connection with the second service resource according to the second access address fed back by the control system. Wherein, the control system may update the weight ratios corresponding to the first access domain name and the second access domain name respectively when the first service resource fails, and convert the access alias into the second access address of the second service resource according to the fourth resolution request and the updated weight ratio according to the second service resource.
[0173] In some embodiments, Figure 7 When the technical solution of the illustrated embodiment is executed by the first server, the method may further include: when the first connection is disconnected, sending a fifth resolution request to the control system, and establishing a second connection with a second service resource based on a second access address fed back by the control system.
[0174] In some embodiments, Figure 7 When the technical solution of the illustrated embodiment is executed by the second server, the method may further include: when the first connection is disconnected, sending a sixth resolution request to the control system, and establishing a second connection with a second service resource based on a second access address fed back by the control system.
[0175] In some embodiments, the method may further include: when the first service resource is restored, disconnecting the second connection with the second service resource, and restoring the first connection with the first service resource.
[0176] In some embodiments, the method may further include: determining that the first service resource is restored according to a restoration switching request sent by the control system.
[0177] In some embodiments, the first service resource may include a first cloud storage instance; the second service resource may include a second cloud storage instance. The method may also include: saving the cached data to the first cloud storage instance.
[0178] Figure 8A flowchart of an embodiment of a disaster recovery processing method provided in an embodiment of the present application. The technical solution of this embodiment can be applied to the following examples: Figure 1 or Figure 2 In the disaster recovery system, the technical solution of this embodiment can be executed by a control system. The method may include the following steps:
[0179] 801: Receive an access request from at least one client.
[0180] 802: Distribute the access request to the first server and the second server.
[0181] 803: When the first computing system fails, send the access request to the second server.
[0182] 804: When the second computing system fails, send the access request to the first server.
[0183] In this embodiment, the control system distributes the access request to the first server and the second server. Both the first server and the second server can receive the access request, which can reduce the pressure on a single server and improve the performance of the system. Since the first computing system and the second computing system can provide services to the outside at the same time, compared with the main computing system providing services to the outside, the disaster recovery computing system is idle on a daily basis and is only enabled in the event of a failure, which improves resource utilization.
[0184] In some embodiments, the method may also include: mapping the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configuring the weight ratios corresponding to the first access domain name and the second access domain name respectively; responding to the first resolution request of the first server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; responding to the second resolution request of the second server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively, and feeding back the first access address to the first server and the second server.
[0185] Therefore, both the first server and the second server can establish a connection with the first service resource according to the first access address, and access the first service resource through the first connection.
[0186] In some embodiments, the method may further include: in the event of a failure of the first service resource, updating the weight ratios corresponding to the first access domain name and the second access domain name respectively, and converting the access alias into a second access address of the second service resource according to the updated weight ratio based on the third resolution request of the first server; in response to the fourth resolution request of the second server, converting the access alias into the second access address of the second service resource according to the updated weight ratio,
[0187] The second access address is fed back to the first server and the second server.
[0188] Therefore, both the first server and the second server can establish a connection with the second service resource according to the second access address, and access the second service resource through the second connection.
[0189] In this embodiment, the method maps the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configures the weight ratios corresponding to the first access domain name and the second access domain name respectively, and in response to the resolution request of the first server or the second server, feeds back the access address to the first server or the second server, so that both the first server and the second server can establish a connection according to the access address to access the service resource, thereby ensuring that the two servers access the same service resource, avoiding data synchronization caused by simultaneous access to the two service resources and causing data overwrite, and ensuring data consistency.
[0190] In some embodiments, the method may also include: in response to a first service resource switching event, disabling the first access address to disconnect the first connection; updating the weight ratios corresponding to the first access domain name and the second access domain name, respectively, and in response to the fifth resolution request of the first server, converting the access alias into the second access address of the second service resource according to the updated weight ratio; in response to the sixth resolution request of the second server, converting the access alias into the second access address of the second service resource according to the updated weight ratio.
[0191] The method may also enable the first access address when the second connection is established.
[0192] In some embodiments, distributing the access request to the first server and the second server may include: distributing the access request to the first server and the second server according to a routing rule. The routing rule includes one or more of the following implementations: the traffic ratio corresponding to the first computing system and the second computing system respectively; the access area corresponding to the first computing system and the second computing system respectively; and the access type corresponding to the first computing system and the second computing system respectively.
[0193] In some embodiments, the method may further include: determining a third server associated with the first server and deployed in the first computing system and a fourth server deployed in the second computing system;
[0194] The method may also include: in the event of a failure of the first server, forwarding an access request sent to the third server to a fourth server; in the event of a failure of the first service resource accessed by the first server, controlling the third server and the fourth server to establish a fourth connection with the fourth service resource, so as to access the fourth service resource through the fourth connection based on the access request distributed by the control system.
[0195] In some embodiments, the method may also output first fault prompt information when a first computing system or a first server fails; send a received access request to a second server in response to a first fault switching request triggered by a user; output second fault prompt information when a second computing system or a second server fails; and send a received access request to the first server in response to a second fault switching request triggered by a user.
[0196] In this embodiment, faults can be automatically detected, fault prompt information can be output to the user, and in response to fault switching requests triggered by the user, the server to which the access request is sent can be switched in time. In the event of a fault, the access request can still be processed to ensure the continuity of access.
[0197] In some embodiments, the method may further output recovery prompt information when the first resource is recovered; in response to a fault recovery request triggered by a user, send a recovery switching request to the first server and the second server respectively;
[0198] In some embodiments, the control system may include a first control system; the first control system may include at least one first control terminal, and the at least one control terminal may be respectively deployed in the first computing system and the second computing system;
[0199] Distributing the access request to the first server and the second server may include: using a target first control terminal among the at least one first control terminal to distribute the access request to the first server and the second server;
[0200] Wherein, the method can also reselect any first control terminal as the target first control terminal in the event of a failure of the target first control terminal.
[0201] In some embodiments, the control system may include a second control system, and the second control system may include at least one second control terminal. The at least one second control terminal may be distributed and deployed in the first computing system and the second computing system.
[0202] The above-mentioned mapping of the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configuring the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the second resolution request of the second server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively may include: using a target second control terminal among at least one second control terminal, mapping the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configuring the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the second resolution request of the second server, converting the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively.
[0203] The method can also select any second control terminal as the target second control terminal again when the target second control terminal fails.
[0204] In some embodiments, the method may further include: synchronizing data in the first service resource to the second service resource.
[0205] In some embodiments, the control system may include a first data synchronization component deployed in a first computing system and a second data synchronization component deployed in a second computing system.
[0206] The method may also include: synchronizing data in the first service resource to the second service resource using a first data synchronization component; and migrating data in the second service resource to the first service resource using a second data synchronization component when the first service resource is restored.
[0207] The present application also provides a computing device, such as Fig. 9 As shown, the device may include a storage component 901 and a processing component 902;
[0208] The storage component 901 stores one or more computer instructions, wherein the one or more computer instructions are called and executed by the processing component to implement the following Figure 7 The disaster recovery processing method described in the embodiment shown or Figure 8 The disaster recovery processing method described in the illustrated embodiment.
[0209] Of course, the computing device may also include other components, such as input / output interfaces, display components, communication components, etc.
[0210] The input / output interface provides an interface between the processing component and the peripheral interface module, which may be an output device, an input device, etc. The communication component is configured to facilitate wired or wireless communication between the computing device and other devices.
[0211] The processing component 902 may include one or more processors to execute computer instructions to complete all or part of the steps in the above method. Of course, the processing component may also be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to perform the above method.
[0212] The storage component 901 is configured to store various types of data to support operations at the terminal. The storage component can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0213] It should be noted that the above computing device can be a physical device or an elastic computing host provided by a cloud computing platform, etc. It can be implemented as a distributed cluster consisting of multiple servers or terminal devices, or as a single server or a single terminal device.
[0214] It should be noted that the above computing device is implemented as follows Figure 7 The disaster recovery processing method described in the embodiment shown or Figure 8 In the case of the disaster recovery processing method described in the illustrated embodiment, it can be a physical device or an elastic computing host provided by a cloud computing platform, etc. It can be implemented as a distributed cluster consisting of multiple servers or terminal devices, or as a single server or a single terminal device.
[0215] The present application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a computer, the above-mentioned Figure 7 The disaster recovery processing method described in the embodiment shown or Figure 8 The computer-readable medium may be included in the electronic device described in the above embodiment, or may exist independently without being installed in the electronic device.
[0216] The present application also provides a computer program product, which includes a computer program carried on a computer-readable storage medium. When the computer program is executed by a computer, the computer program can achieve the above-mentioned Figure 7 The disaster recovery processing method described in the embodiment shown or Figure 8 The disaster recovery processing method described in the illustrated embodiment. In such an embodiment, the computer program can be downloaded and installed from a network, and / or installed from a removable medium. When the computer program is executed by a processor, various functions defined in the system of the present application are executed.
[0217] In the above corresponding embodiments, the computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device, or device.
[0218] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0219] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0220] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0221] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A disaster recovery system, characterized in that: The system comprises a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; the first computing system and the second computing system are each other's primary and backup systems; The first service end is configured to access the first service resource based on an access request through a first connection established with the first service resource; and in the event of a failure of the first service resource, access the second service resource based on the access request through a second connection established with the second service resource; The second server is used to access the first service resource based on the access request through a first connection established with the first service resource; in the event of a failure of the first service resource, access the second service resource based on the access request through a second connection established with the second service resource; the access request is obtained by distributing access requests from at least one client to the first server and the second server.
2. The system according to claim 1, characterized in that The disaster recovery system also includes: a control system; The control system is used to receive an access request from at least one client and distribute the access request to the first server and the second server.
3. The system according to claim 2, characterized in that The control system is further used to map the first access domain name of the first service resource and the second access domain name of the second service resource to the same access alias, and configure the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the first resolution request of the first server, convert the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; in response to the second resolution request of the second server, convert the access alias into the first access address of the first service resource according to the weight ratios corresponding to the first access domain name and the second access domain name respectively; The first server is further used to configure the access alias, send a first resolution request to the control system based on the access alias, and establish a first connection with the first service resource according to the first access address fed back by the control system; The second server is further used to configure the access alias, send a second resolution request to the control system based on the access alias, and establish a first connection with the first service resource according to the first access address fed back by the control system.
4. The system according to claim 3, characterized in that The control system is further used to update the weight ratios corresponding to the first access domain name and the second access domain name respectively in the event of a failure of the first service resource, and convert the access alias into the second access address of the second service resource according to the updated weight ratio based on the third resolution request of the first server; and convert the access alias into the second access address of the second service resource according to the updated weight ratio in response to the fourth resolution request of the second server; The first server is further configured to send a third resolution request to the control system when the first service resource fails, and to establish a second connection with the second service resource according to the second access address fed back by the control system; The second server is further configured to send a fourth resolution request to the control system when the first service resource fails, and to establish a second connection with the second service resource according to the second access address fed back by the control system.
5. The system according to claim 3, characterized in that The control system is further used to, in response to a first service resource switching event, disable the first access address to disconnect the first connection; update the weight ratios corresponding to the first access domain name and the second access domain name, respectively, and in response to a fifth resolution request of the first server, convert the access alias into a second access address of the second service resource according to the updated weight ratio; in response to a sixth resolution request of the second server, convert the access alias into the second access address of the second service resource according to the updated weight ratio; The first server is further configured to send a fifth resolution request to the control system when the first connection is disconnected, and to establish a second connection with the second service resource according to the second access address fed back by the control system; The second server is further used to send a sixth resolution request to the control system when the first connection is disconnected, and to establish a second connection with the second server according to the second access address fed back by the control system.
6. The system according to claim 5, characterized in that The control system is further configured to enable the first access address when the second connection is established.
7. The system according to claim 1, characterized in that The first service end is further configured to disconnect the first connection established with the first service resource and establish a second connection with the second service resource when the first service resource fails; disconnect the second connection with the second service resource and restore the first connection with the first service resource when the first service resource is restored; The second service end is also used to disconnect the first connection established with the first service resource and establish a second connection with the second service resource when the first service resource fails; and disconnect the second connection with the second service resource and restore the first connection with the first service resource when the first service resource is restored.
8. The system according to claim 2, characterized in that The control system specifically distributes the received access request of at least one client to the first server and the second server according to the routing rule; The routing rules include one or more of the following implementations: The flow ratios corresponding to the first computing system and the second computing system respectively; The access areas corresponding to the first computing system and the second computing system respectively; The first computing system and the second computing system respectively correspond to access types.
9. The system according to claim 2, characterized in that The control system is further used to determine a third server associated with the first server and deployed in the first computing system and a fourth server deployed in the second computing system; The third server is configured to access the third service resource based on the access request distributed by the control system through a third connection established with the third service resource deployed in the first computing system; and in the event of a failure of the third service resource, access the fourth service resource based on the access request distributed by the control system through a fourth connection established with the fourth service resource deployed in the second computing system; The fourth service end is used to access the third service resource based on the access request distributed by the control system through the third connection established with the third service resource; in the event of a failure of the third service resource, access the fourth service resource based on the access request distributed by the control system through the fourth connection established with the fourth service resource; The control system is also used to forward the access request sent to the third server to the fourth server in the event of a failure of the first server; and to control the third server and the fourth server to establish a fourth connection with the fourth service resource in the event of a failure of the first service resource accessed by the first server, so as to access the fourth service resource through the fourth connection based on the access request distributed by the control system.
10. The system according to claim 2, characterized in that The control system is further configured to output first fault prompt information when the first computing system or the first server fails; send the received access request to the second server in response to a first fault switching request triggered by a user; and output second fault prompt information when the second computing system or the second server fails; In response to the second failover request triggered by the user, the received access request is sent to the first server.
11. The system according to claim 2, characterized in that The control system includes a first control system; the first control system includes at least one first control terminal, and the at least one control terminal is respectively deployed in the first computing system and the second computing system; The target first control terminal among the at least one first control terminal is used to distribute the access request of the client to the first server and the second server; The at least one first control end is used to reselect any first control end as the target first control end when the target first control end fails.
12. The system according to claim 2, characterized in that The control system includes: a first data synchronization component deployed in the first computing system and a second data synchronization component deployed in the second computing system; The first data synchronization component is used to synchronize the data in the first service resource to the second service resource; The second data synchronization component is used to migrate the data in the second service resource to the first service resource when the first service resource is restored.
13. The system according to any one of claims 1 to 12, characterized in that: The first service resource includes a first cloud storage instance; the second service resource includes a second cloud storage instance; The first server is further used to save the cached data to the first cloud storage instance; the second server is further used to save the cached data to the first cloud storage instance.
14. A disaster recovery system, characterized in that: The system comprises a first computing system and a second computing system; a first server and a first message queue are deployed in the first computing system; a second server and a second message queue are deployed in the second computing system; data synchronization is used to perform data backup between the first message queue and the second message queue; The first server is configured to publish a first message in the first message queue based on a message publishing request through a first connection established with the first message queue, set a first tag for the first message, and consume the first message with the first tag from the first message queue based on a message consumption request; in the event of a failure of the second message queue, configure a second tag to consume a second message with the second tag from the first message queue according to the message consumption request; The second server is used to publish a second message in the second message queue and set the second tag for the second message based on a message publishing request through a second connection established with the second message queue, and consume the second message with the second tag from the second message queue based on a message consumption request; in the event of a failure of the first message queue, configure the first tag and consume the first message with the first tag from the second message queue according to the message consumption request.
15. The system according to claim 14, characterized in that Also includes control systems; The control system is used to distribute a message publishing request or a message consumption request for target data to the first server and the second server.
16. A disaster recovery processing method, characterized in that: Applied to a disaster recovery system, the disaster recovery system includes a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; The first computing system and the second computing system are mutually active and standby systems; the method comprises: accessing the first service resource based on the access request through the first connection established with the first service resource; In the event of a failure of the first service resource, the first connection is disconnected, and the second service resource is accessed based on an access request through a second connection established with the second service resource; the access request is obtained by distributing an access request from at least one client to the first server and the second server.
17. A disaster recovery processing method, characterized in that: Applied to a disaster recovery system, the disaster recovery system includes a first computing system and a second computing system; a first server and a first service resource are deployed in the first computing system; a second server and a second service resource are deployed in the second computing system; data backup is performed between the first service resource and the second service resource through data synchronization; The first computing system and the second computing system are each other's active and standby systems; The method comprises: receiving an access request from at least one client; Distribute the access request to the first server and the second server; the first server is used to access the first service resource based on the access request through the first connection established with the first service resource; the second server is used to access the first service resource based on the access request through the first connection established with the first service resource; In the event of a failure of the first computing system, sending the access request to the second server, so that the second server can access the second service resource based on the access request through a second connection established with the second service resource; In case of a failure of the second computing system, the access request is sent to the first server.
18. A computing device, characterized in that It includes a processing component and a storage component; the storage component stores one or more computer instructions; the one or more computer instructions are used to be called and executed by the processing component to implement the disaster recovery processing method as claimed in claim 16 or the disaster recovery processing method as claimed in claim 17.
19. A computer storage medium, characterized in that: A computer program is stored, and when the computer program is executed by a computer, the disaster recovery processing method according to claim 16 or the disaster recovery processing method according to claim 17 is implemented.
20. A computer program product, characterized in that It includes a computer program / instruction, which, when executed by a computer, implements the disaster recovery processing method as described in claim 16 or the disaster recovery processing method as described in claim 17.
Citation Information
Patent Citations
Access request processing method and device, computer equipment and storage medium
CN117041350A