Application active system, application disaster recovery management method, and computer device

By introducing traffic node strategy control to manage traffic distribution in the application active-active system, the problem of fixed existing system architecture is solved, flexible traffic management and high availability are achieved, and the cost of architecture transformation is reduced.

WO2026103837A1PCT designated stage Publication Date: 2026-05-21CHINA TELECOM CLOUD TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
CHINA TELECOM CLOUD TECH CO LTD
Filing Date
2025-11-14
Publication Date
2026-05-21

Smart Images

  • Figure CN2025134862_21052026_PF_FP_ABST
    Figure CN2025134862_21052026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to an application active system, an application disaster recovery management method, and a computer device. The application active system comprises at least one application active architecture and a plurality of data clusters, wherein the data clusters each comprise a gateway component, an application component and a database component, and the application active architecture comprises: a first-level traffic node, which is bound to a gateway component in a corresponding data cluster, and used for controlling, on the basis of a first selection policy, the gateway component to receive traffic, and distributing the traffic entering the gateway component; second-level traffic nodes, which are each bound to an application component in a corresponding data cluster and used for controlling, on the basis of a second selection policy, the application component to receive traffic distributed by the gateway component, and distributing the received traffic of the application component; and third-level traffic nodes, which are each bound to a database component in a corresponding data cluster and used for controlling the database component to receive the traffic distributed by the application component.
Need to check novelty before this filing date? Find Prior Art

Description

Application of active-active systems, application of disaster recovery management methods and computer equipment

[0001] Related applications

[0002] This application claims priority to Chinese patent application filed on November 18, 2024, application number 202411644817.2, entitled "Application Multi-Active System, Application Disaster Recovery Management Method and Computer Equipment", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of computer technology, and in particular to an application active-active system, an application disaster recovery management method, and a computer device. Background Technology

[0004] Application active-active is an advanced form of application disaster recovery technology. It refers to establishing a production system in a data center within the same city or in a different location that partially or completely corresponds to the local production system. All applications within the data center simultaneously provide services to the outside world. When a disaster occurs, the active-active system can switch business traffic within minutes, and users may not even feel the disaster. It is a basic method for achieving business-level disaster recovery.

[0005] However, the architecture of active-active systems in related technologies is all fixed, which makes it difficult to meet the current high availability requirements of businesses. Summary of the Invention

[0006] According to various embodiments of this application, an application active-active system, an application disaster recovery management method, and a computer device are provided.

[0007] In a first aspect, this application provides an application active-active system, the application active-active system comprising at least one application active-active architecture and multiple data clusters, the data clusters comprising gateway components, application components, and database components; the application active-active architecture comprising:

[0008] A primary traffic node is bound to a gateway component in the corresponding data cluster and is used to control the gateway component to receive traffic and distribute traffic entering the gateway component according to a first selection strategy.

[0009] Secondary traffic nodes, bound to application components in the corresponding data cluster, are used to control the application components to receive traffic distributed by the gateway component according to a second selection strategy, and to distribute the traffic received by the application components; and

[0010] The third-level traffic node is bound to the database component in the corresponding data cluster and is used to control the database component to receive traffic distributed by the application component;

[0011] The primary traffic node is further configured to control the corresponding gateway component to distribute traffic to at least one application component in the data cluster, and the secondary traffic node is further configured to control the corresponding application component to distribute traffic to at least one database component in the data cluster.

[0012] In one embodiment, the application active-active architecture corresponds to the data cluster, and the number of application active-active architectures is less than or equal to the number of data clusters.

[0013] In one embodiment, the application component includes an application instance; the secondary traffic node includes secondary traffic sub-nodes, each of the secondary traffic sub-nodes being bound to an application instance in the corresponding data cluster, the secondary traffic sub-nodes being used to control the application instance to receive traffic distributed by the gateway component according to a second sub-selection strategy, and to distribute the traffic received by the application instance; wherein, at least some of the secondary traffic sub-nodes correspond to different second sub-selection strategies.

[0014] In one embodiment, the database component includes a data instance, and the third-level traffic node includes a third-level traffic sub-node. Each third-level traffic sub-node is bound to a data instance in the corresponding data cluster. The third-level traffic sub-node is used to control the data instance to receive traffic distributed by the application component.

[0015] In one embodiment, the first selection strategy includes a first write control strategy, which instructs the primary traffic node to control the gateway component to receive traffic.

[0016] In one embodiment, the first selection strategy includes a first distribution control strategy, which instructs the primary traffic node to control the gateway component to distribute traffic to a target application component, wherein the target application component is at least one of the application components included in the data cluster.

[0017] In one embodiment, the first selection strategy includes a first write control strategy and a first distribution control strategy. The first write control strategy is used to instruct the primary traffic node to control the gateway component to receive traffic, and the first distribution control strategy is used to instruct the primary traffic node to control the gateway component to distribute traffic to a target application component, wherein the target application component is at least one application component included in the data cluster.

[0018] In one embodiment, the second selection strategy includes a second write control strategy, which instructs the secondary traffic node to control the application component to receive traffic.

[0019] In one embodiment, the second selection strategy includes a second distribution control strategy, which instructs the secondary traffic node to control the application component to distribute traffic to a target database component, wherein the target database component is at least one of the database components included in the data cluster.

[0020] In one embodiment, the second selection strategy includes a second write control strategy and a second distribution control strategy. The second write control strategy is used to instruct the secondary traffic node to control the application component to receive traffic, and the second distribution control strategy is used to instruct the secondary traffic node to control the application component to distribute traffic to a target database component, wherein the target database component is at least one of the database components included in the data cluster.

[0021] Secondly, this application provides an application disaster recovery management method, applied to the application active-active system described in any of the above embodiments; the method includes:

[0022] Upon receiving an extension instruction, locate the idle data cluster in the application active-active system, where the idle data cluster represents a data cluster without a corresponding application active-active architecture.

[0023] Given that at least one idle data cluster exists, the target data cluster is determined from among the idle data clusters; and

[0024] A target application active-active architecture is built based on the target data cluster, so as to realize traffic interaction between the target data cluster and the other non-idle data clusters through the target application active-active architecture and the application active-active architecture corresponding to the other non-idle data clusters.

[0025] Thirdly, this application provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the application disaster recovery management method described in the above embodiments.

[0026] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the application disaster recovery management method described in the above embodiments.

[0027] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the application disaster recovery management method described in the above embodiments.

[0028] Details of one or more embodiments of this application are set forth in the following drawings and description. Other features, objects, and advantages of this application will become apparent from the specification, drawings, and claims. Attached Figure Description

[0029] To more clearly illustrate the technical solutions in the embodiments of this application or the conventional technology, the drawings used in the description of the embodiments or the conventional technology will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the disclosed drawings without creative effort.

[0030] Figure 1 is a schematic diagram of the structure of the multi-active mode applied in the related technology;

[0031] Figure 2 is a schematic diagram of the structure of a multi-active system applied in some embodiments of this application;

[0032] Figure 3 is a schematic diagram of the structure of a multi-active system applied in some other embodiments of this application;

[0033] Figure 4 is a flowchart illustrating the application of the disaster recovery management method in some embodiments of this application;

[0034] Figure 5 is an internal structure diagram of a computer device in some embodiments. Detailed Implementation

[0035] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0036] Application active-active is an advanced form of application disaster recovery technology. It refers to establishing a production system in a data center within the same city or in a different location that partially or completely corresponds to the local production system. All applications within the data center simultaneously provide services to the outside world. When a disaster occurs, the active-active system can switch business traffic within minutes, and users may not even feel the disaster. It is a basic method for achieving business-level disaster recovery.

[0037] Most mainstream application-based active-active products and services in the industry adopt an architecture-plus-control solution. The architecture typically divides the business into three parts: the access layer, the application layer, and the data layer. The access layer handles business traffic, identifying and distributing it. The application layer contains the main business traffic flow, such as application service calls and application middleware access management, and possesses three core functions: routing, protection, and isolation. The data layer refers to application data storage, synchronization, and switching. Control integrates the aforementioned layered components, orchestrating processes according to the application architecture to achieve traffic allocation while ensuring data consistency.

[0038] Based on the distribution of business data, please refer to Figure 1. Currently, there are three common active-active application modes: single data cluster mode, master-slave data cluster mode, and master-master data cluster mode. Single data cluster mode refers to data layer components building a single cluster locally across data centers (or availability zones), ensuring high availability of business traffic across data centers (or availability zones). Master-slave data cluster mode refers to each center having its own independent data cluster, with the master center providing read and write services, establishing one-way data synchronization, redundancy of business data across centers, and high availability of business traffic across centers. Master-master data cluster mode refers to each center having its own independent data cluster, with business data sharded according to rules, establishing two-way data synchronization or star-shaped data synchronization, and business traffic operating in a closed loop within the center, i.e., a unitized solution.

[0039] Because control is built upon the architecture, implementation requires applications to be modified according to the predetermined architecture to adapt to the corresponding solution. This model requires implementation personnel to follow the pre-defined solution step-by-step, resulting in a high learning and understanding cost. Furthermore, regardless of whether it's a single data cluster, master-slave, or master-master cluster, each architecture corresponds to a dedicated control mechanism. Therefore, once the architecture is determined, it cannot be changed. However, the established architecture may not meet the current high availability requirements of the business. To adapt to business development, it is necessary to re-match the architecture, modify the application, and rebuild the entire multi-active metadata, which is costly.

[0040] In an exemplary embodiment, referring to FIG2, this application provides an application active-active system, which includes at least one application active-active architecture and multiple data clusters. The data clusters include gateway components, application components and database components.

[0041] The application active-active architecture of this application includes at least a first-level traffic node, a second-level traffic node, and a third-level traffic node. The first-level traffic node is bound to a gateway component in the corresponding data cluster and is used to control the gateway component to receive traffic and distribute traffic entering the gateway component according to a first selection strategy. The second-level traffic node is bound to an application component in the corresponding data cluster and is used to control the application component to receive traffic distributed by the gateway component and distribute the traffic received by the application component according to a second selection strategy. The third-level traffic node is bound to a database component in the corresponding data cluster and is used to control the database component to receive traffic distributed by the application component. The first-level traffic node is also used to control the corresponding gateway component to distribute traffic to at least one application component in the data cluster, and the second-level traffic node is also used to control the corresponding application component to distribute traffic to at least one database component in the data cluster.

[0042] In one example, please refer to Figure 2. Figure 2 shows the application active-active architecture and multiple data clusters of this application in a master-master data cluster mode. As can be seen from Figure 2, the first-level traffic nodes correspond to the gateway component in the master-master data cluster; second-level traffic node 1 corresponds to application component 1 in the master-master data cluster; second-level traffic node 2 corresponds to application component 2 in the master-master data cluster; third-level traffic node 1 corresponds to database component 1 in the master-master data cluster; and third-level traffic node 2 corresponds to database component 2 in the master-master data cluster. By defining each traffic node and setting its selection strategy, the traffic nodes can continuously repeat the two questions of "What traffic can I receive?" and "Where should my traffic go?", thereby controlling the traffic allocation of each component in the physical domain.

[0043] Specifically, by defining a first selection strategy on a primary traffic node, the system can control which types of traffic the primary traffic node chooses to receive and which application component it allocates to based on the traffic type. Similarly, by defining a second selection strategy on a secondary traffic node, the system can control which types of traffic the secondary traffic node chooses to receive and which database component it allocates to based on the traffic type. Furthermore, a third selection strategy can be defined for tertiary traffic nodes to control which types of traffic they choose to receive. The first selection strategies on different primary traffic nodes can be different, the second selection strategies on different secondary traffic nodes can be different, and the third selection strategies on different tertiary traffic nodes can be different. Moreover, since primary traffic nodes are bound to the gateway component in their corresponding data cluster, secondary traffic nodes are bound to the application components in their corresponding data cluster, and tertiary traffic nodes are bound to the database components in their corresponding data cluster, the gateway component, application component, and database component can actually manage traffic reception and allocation according to the selection strategies of the corresponding traffic nodes.

[0044] As can be seen, the application-active multi-active system of this application does not deviate from the physical underlying layer of application-active multi-active, but rather redesigns the logical organization of application-active multi-active. It decouples the management of the physical domain from the traditional deployment architecture, meaning it does not use the mainstream layered structure of access layer, application layer, and data layer, but instead divides the system by traffic nodes, downplaying hierarchical grouping and emphasizing upstream and downstream links. It also decouples management from specific components, meaning it does not explicitly describe specific multi-active control measures such as access layer routing, RPC error correction, and data write protection, but instead abstracts them uniformly into traffic nodes, ensuring consistency in management. The application-active multi-active system of this application can achieve a consistent perspective on traffic scheduling and business continuity, making it easier for relevant technical personnel to understand and learn.

[0045] Furthermore, this application decouples management and disaster recovery architecture. Regardless of whether it's a basic active-active architecture or a combined active-active architecture, traffic scheduling is uniformly abstracted into a selection strategy, enabling the reconfiguration of data cluster modes. In one example, based on the type of data cluster, it can be divided into single-data clusters, primary-data clusters, and backup-data clusters. A single-data cluster mode refers to a system containing only one single-data cluster; a primary-backup cluster mode refers to a system containing one primary-data cluster and one backup-data cluster; and a primary-primary cluster mode refers to a system containing two primary-data clusters. Assuming the application active-active system includes two independent single-data clusters (the first and second single-data clusters), each corresponding to a different application active-active architecture, by rewriting the second selection strategy of the secondary traffic nodes in the application active-active architecture corresponding to the second single-data cluster, the application components in the second single-data cluster can distribute traffic to the database components in the first single-data cluster. This allows the two independent single-data clusters to be combined into a primary-backup cluster mode, achieving data cluster architecture reconfiguration and expansion to meet the high availability requirements of the business.

[0046] The aforementioned application-active system includes at least one application-active architecture and multiple data clusters. Each data cluster contains a gateway component, application components, and a database component. The application-active architecture includes primary traffic nodes, secondary traffic nodes, and tertiary traffic nodes. Primary traffic nodes are bound to the corresponding gateway component in the data cluster and are used to control the gateway component to receive traffic and distribute traffic entering the gateway component according to a first selection strategy. Primary traffic nodes are also used to control the corresponding gateway component to distribute traffic to at least one application component in the data cluster. Secondary traffic nodes are bound to the corresponding application components in the data cluster and are used to control the application components to receive traffic from the gateway according to a second selection strategy. The secondary traffic node distributes traffic to the application component and distributes the traffic received by the application component. The secondary traffic node is also used to control the corresponding application component to distribute traffic to at least one database component in the data cluster. The tertiary traffic node is bound to the corresponding database component in the data cluster and is used to control the database component to receive the traffic distributed by the application component. This application binds the gateway component, application component and database component in the data cluster to traffic nodes at each level, and controls the control strategy of the traffic nodes to control which component in the data cluster selects to receive traffic and distribute traffic to which component. This enables the architecture reorganization and expansion of each data cluster, thereby adapting to the high availability requirements of the business.

[0047] In one exemplary embodiment, the application active-active architecture corresponds to the data cluster, and the number of application active-active architectures is less than or equal to the number of data clusters.

[0048] In this embodiment, one application active-active architecture can correspond to one data cluster, and the number of application active-active architectures in the application active-active system of this application is less than or equal to the number of data clusters. For example, the data clusters with application active-active architectures in the application active-active system are non-idle data clusters, and the data clusters without application active-active architectures are idle data clusters. Non-idle data clusters can be combined to form a data master-slave cluster mode or a data master-master cluster mode, or they can run independently according to the data single cluster mode. When it is necessary to expand the non-idle data clusters, one or more target data clusters can be found from the idle data clusters and combined with the non-idle data clusters to expand them, thereby adapting to the distribution requirements of business traffic.

[0049] In an exemplary embodiment, referring to Figure 3, the application component includes an application instance, and the database component includes a data instance. Secondary traffic nodes include secondary traffic sub-nodes, each bound to an application instance in its corresponding data cluster. These sub-nodes control the application instance's reception of traffic distributed by the gateway component according to a second sub-selection strategy, and distribute the received traffic to the application instance. At least some of the secondary traffic sub-nodes correspond to different second sub-selection strategies. Tertiary traffic nodes include tertiary traffic sub-nodes, each bound to a data instance in its corresponding data cluster. These sub-nodes control the data instance's reception of traffic distributed by the application component.

[0050] In an application, within a data cluster, an application component may include at least one application instance, and a database component may also include at least one data instance. Application instances are bound to secondary traffic sub-nodes in the corresponding active-active application architecture, while data instances are bound to tertiary traffic sub-nodes in the same architecture. Each secondary traffic sub-node has a second sub-selection strategy to control what traffic the corresponding application instance receives and where it is distributed. Each tertiary traffic sub-node may also have a third sub-selection strategy to control what traffic the corresponding data instance receives.

[0051] In an exemplary embodiment, the first selection strategy includes a first write control strategy and / or a first distribution control strategy. The first write control strategy is used to instruct the primary traffic node control gateway component to receive traffic, and the first distribution control strategy is used to instruct the primary traffic node control gateway component to distribute traffic to a target application component, wherein the target application component is an application component included in at least one data cluster.

[0052] The second selection strategy includes a second write control strategy and / or a second distribution control strategy. The second write control strategy is used to instruct the secondary traffic node to control the application component to receive traffic, and the second distribution control strategy is used to instruct the secondary traffic node to control the application component to distribute traffic to the target database component, which is a database component included in at least one data cluster.

[0053] It can be understood that the first write control policy defines what type of traffic the first traffic node receives, thereby enabling the first-level traffic node to control the gateway component to receive the corresponding type of traffic. The first distribution control policy defines which application component the first traffic node will allocate the received traffic to, thereby enabling the first-level traffic node to control the gateway component to allocate traffic to the corresponding application component. Similarly, the second write control policy defines what type of traffic the second traffic node receives, thereby enabling the second-level traffic node to control the application component to receive the corresponding type of traffic. The second distribution control policy defines which database component the second traffic node will allocate the received traffic to, thereby enabling the second-level traffic node to control the application component to allocate traffic to the corresponding database component.

[0054] Similarly, the second sub-selection strategy of the secondary traffic sub-node includes a second write control sub-strategy and / or a second distribution control sub-strategy. The second write control sub-strategy is used to define what type of traffic the secondary traffic sub-node receives, thereby enabling the secondary traffic sub-node to control what type of traffic the corresponding application instance receives. The second distribution control sub-strategy defines which data instance the secondary traffic sub-node will allocate the received traffic to, thereby enabling the secondary traffic sub-node to control the application instance to allocate traffic to the corresponding data instance.

[0055] In applications, for a traffic node or traffic sub-node, you can define its node type (node_type), node group (group_id), write control strategy (enter_strategy), and distribution control strategy (select_strategy). By defining its node type, you can bind it to a specific component or instance. By defining its node group, you can easily configure routing rules.

[0056] In one example, assuming the data cluster includes a gateway component gw1, an application component svr_g1 (including application instances svr1 and svr2), and a data instance db1, then for the primary traffic node corresponding to the gateway component gw1, its node type node_type is defined as gateway, and its node identifier node_id is defined as gw1, to bind this primary traffic node to the gateway component gw1. Furthermore, a first write control policy and / or a first distribution control policy can be defined for this primary traffic node. For example, the first write control policy enter_strategy of this primary traffic node is defined as {"strategy_name": header", "key": op", "value": "*"}, and the first distribution control policy select_strategy of this primary traffic node is defined as {"strategy_name": group", "group_id": "svr_g1"}.

[0057] For the secondary traffic sub-node corresponding to application instance svr1, define its node type node_type as server, define its node identifier node_id as svr1 to bind this secondary traffic sub-node to application instance svr1, define its node group group_id as svr_g1, and also define a second write control sub-policy and / or a second distribution control sub-policy for this secondary traffic sub-node. For example, define the second distribution control sub-policy select_strategy of this secondary traffic sub-node as {"strategy_name": "db_all", "db_id": "db1"}.

[0058] For the secondary traffic sub-node corresponding to the application instance svr2, define its node type node_type as server, define its node identifier node_id as svr2 to bind this secondary traffic sub-node to the application instance svr2, define its node group group_id as svr_g1, and also define a second write control sub-policy and / or a second distribution control sub-policy for this secondary traffic sub-node. For example, define the second distribution control sub-policy select_strategy of this secondary traffic sub-node as {"strategy_name": "db_all", "db_id": "db1"}.

[0059] For the third-level traffic sub-node corresponding to data instance db1, define its node type node_type as database and its node identifier node_id as db1 to bind this third-level traffic sub-node to data instance db1.

[0060] In an exemplary embodiment, referring to Figures 2 and 3, the application multi-active system of this application also includes a control device. Each application component is connected to a corresponding proxy component, and the control component is connected to each proxy component and the gateway component. Specifically, the proxy component may include at least one proxy device, which is connected to the corresponding application instance. The proxy component and the control component implement a mapping channel from the logical domain to the physical domain. This mapping channel is also the management channel for the component instance. The management channel can be divided into two categories: one is an instruction channel, which can be implemented by the control device calling the control interface of the gateway component; the other is a proxy channel, which can be implemented by the control device and the proxy device jointly.

[0061] In one exemplary embodiment, this application provides an application disaster recovery management method, applied to an application active-active system of any of the above embodiments. Referring to FIG4, the method includes steps 401 to 403.

[0062] 401: Upon receiving an extension instruction, search for an idle data cluster in the application active-active system. An idle data cluster indicates that there is no corresponding data cluster for the application active-active architecture.

[0063] It is understandable that data clusters with an application-active architecture configured in an application-active system are non-idle data clusters, while data clusters without such a configuration are idle data clusters. Non-idle data clusters can be combined to form a primary-backup data cluster mode or a primary-primary data cluster mode, or they can operate independently as a single data cluster. When it is necessary to expand a non-idle data cluster, one or more target data clusters can be found from the idle data clusters and combined with the non-idle data cluster to expand it, thereby adapting to the distribution needs of business traffic.

[0064] 402: Given at least one idle data cluster, determine the target data cluster from among the idle data clusters.

[0065] If there are idle data clusters in the system, one or more target data clusters can be determined from the idle data clusters according to the specific instructions received.

[0066] 403: A target application active-active architecture is built for the target data cluster to achieve traffic interaction between the target data cluster and the other non-idle data clusters through the target application active-active architecture and the application active-active architecture corresponding to the other non-idle data clusters.

[0067] Since the idle data cluster does not have a corresponding application active-active architecture, a target application active-active architecture needs to be built for the target data cluster. Then, by defining the node type (node_type), node group (group_id), write control policy (enter_strategy), and distribution control policy (select_strategy) of each traffic node and / or traffic sub-node in the target application active-active architecture, traffic interaction between the target data cluster and at least one of the other non-idle data clusters can be achieved.

[0068] In a detailed embodiment, taking a two-site, three-center application architecture with a local data single cluster and a remote data primary / backup cluster as an example, the construction, expansion, and traffic switching steps of the solution described in this application are illustrated:

[0069] First, an active-active architecture for the application is built based on the single-cluster data model. Traffic nodes in the local single-cluster model are configured, an initial traffic map is generated, and the first-level traffic node [lb1] corresponding to the local load balancer instance is configured with a group round-robin strategy as the first distribution control policy, targeting [g1]. The second-level traffic sub-node [svr1] corresponding to the local application instance is configured, and a group [g1] is defined. The second distribution control sub-policy is a specified database policy, targeting [db1]. The third-level traffic sub-node [db1] corresponding to the local data instance is configured. Then, [lb1] is bound to the local load balancer instance and a command channel is set. [svr1] integrates a proxy device to bind to the application instance and a proxy channel is set. [db1] is bound to the local data instance, only mapped, without setting a channel. Next, the traffic map is refreshed, converting the first distribution control policy of [lb1] into a load balancer configuration and pushing it to the instance through the command channel. The second distribution control sub-policy of [svr1] is converted into a database access address and pushed to the instance through the proxy channel.

[0070] When expanding a local data cluster, configure new traffic nodes in a remote primary / standby cluster mode to generate a traffic map under the new architecture. First, configure the primary traffic node [lb2] of the remote load balancer instance, with the first distribution control strategy being a group round-robin strategy and the target being [g2]. Configure the secondary traffic sub-node [svr2] of the remote application instance, defining the group [g2]. The second distribution control sub-strategy is a specified database strategy, with the target being [db1]. Configure the traffic node [db2] of the remote data instance. Similarly, bind the remote component instance and build a management channel. Bind [lb2] to the remote load balancer instance and set the command channel. Bind the integrated proxy device [svr2] to the remote application instance and set the proxy channel. Bind [db2] to the local data cluster instance, only mapping, without setting a channel. Then, build a one-way synchronous link from [db1] to [db2]. This item is unrelated to the traffic map but related to traffic switching management. Finally, refresh the traffic map, push the rules to the component instance, and the local component does not need to be updated. The first distribution control policy of [lb2] is converted into a load balancing configuration and pushed to the instance through the command channel. The second distribution control sub-policy of [svr2] is converted into a database access address and pushed to the instance through the proxy channel. At this time, both [svr1] and [svr2] read and write [db1].

[0071] In application, the active-active system of this application can also realize traffic switching. In one example, the first distribution control policy of [lb1] can be modified to a conditional grouping policy, and the grayscale identifier [gray] condition target is added as [lb2], with the default target being [g1]. Then, the first distribution control policy of [lb1] is converted into a load balancing configuration and pushed to the instance through the command channel. At this time, if the traffic carrying the grayscale identifier [gray] falls to the local cluster, it will be forwarded to the remote cluster, thereby realizing traffic error correction.

[0072] In another example, the active-active application system of this application can also realize the switching between the primary data cluster and the backup data cluster. For example, the second distribution control sub-policy of [svr1] and [svr2] can be modified to a write-prohibition policy. The rule is pushed to the instance through the proxy channel. At this time, the application instance is completely write-prohibited. Then, after waiting for the data synchronization delay to catch up, the one-way synchronization link from [db2] to [db1] is started. Then, the second distribution control sub-policy of [svr1] and [svr2] can be modified to a specified database policy with [db2] as the target. The rule is pushed to the instance through the proxy channel. At this time, the application reads and writes [db2], thus realizing the switching between the primary data cluster and the backup data cluster.

[0073] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps.

[0074] In one exemplary embodiment, this application provides a computer device including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps of the application disaster recovery management method described in the above embodiments.

[0075] The computer device can be a terminal, and its internal structure can be as shown in Figure 5. The computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements an application disaster recovery management method. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0076] Those skilled in the art will understand that the structure shown in Figure 5 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0077] In one exemplary embodiment, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the application disaster recovery management method described in the above embodiments.

[0078] In one exemplary embodiment, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the application disaster recovery management method described in the above embodiments.

[0079] 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, data stored, data displayed, 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 the relevant data must comply with relevant regulations.

[0080] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0081] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0082] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A multi-living system, characterized by, The application active-active system includes at least one application active-active architecture and multiple data clusters, wherein the data clusters include gateway components, application components and database components; The application multi-active architecture includes: A primary traffic node is bound to a gateway component in the corresponding data cluster and is used to control the gateway component to receive traffic and distribute traffic entering the gateway component according to a first selection strategy. Secondary traffic nodes, bound to application components in the corresponding data cluster, are used to control the application components to receive traffic distributed by the gateway component according to a second selection strategy, and to distribute the traffic received by the application components; and The third-level traffic node is bound to the database component in the corresponding data cluster and is used to control the database component to receive traffic distributed by the application component; The primary traffic node is further configured to control the corresponding gateway component to distribute traffic to at least one application component in the data cluster, and the secondary traffic node is further configured to control the corresponding application component to distribute traffic to at least one database component in the data cluster.

2. The multi-living system of claim 1, wherein, The application active-active architecture corresponds to the data cluster, and the number of application active-active architectures is less than or equal to the number of data clusters.

3. The multi-living system of claim 1, wherein, The application component includes an application instance; the secondary traffic node includes secondary traffic sub-nodes, each of which is bound to an application instance in the corresponding data cluster. The secondary traffic sub-node is used to control the application instance to receive traffic distributed by the gateway component and to distribute the traffic received by the application instance according to a second sub-selection strategy. At least some of the secondary traffic sub-nodes correspond to different second sub-selection strategies.

4. The multi-living system of claim 1, wherein, The database component includes a data instance, and the three-level traffic node includes three-level traffic sub-nodes. Each of the three-level traffic sub-nodes is bound to a data instance in the corresponding data cluster. The three-level traffic sub-nodes are used to control the data instance to receive traffic distributed by the application component.

5. The multi-living system of claim 1, wherein, The first selection strategy includes a first write control strategy, which is used to instruct the primary traffic node to control the gateway component to receive traffic.

6. The multi-living system of claim 1, wherein, The first selection strategy includes a first distribution control strategy, which is used to instruct the primary traffic node to control the gateway component to distribute traffic to the target application component, wherein the target application component is at least one of the application components included in the data cluster.

7. The multi-living system of claim 1, wherein, The first selection strategy includes a first write control strategy and a first distribution control strategy. The first write control strategy is used to instruct the first-level traffic node to control the gateway component to receive traffic. The first distribution control strategy is used to instruct the first-level traffic node to control the gateway component to distribute traffic to the target application component. The target application component is at least one application component included in the data cluster.

8. The multi-living system of claim 1, wherein, The second selection strategy includes a second write control strategy, which is used to instruct the secondary traffic node to control the application component to receive traffic.

9. The multi-living system of claim 1, wherein, The second selection strategy includes a second distribution control strategy, which instructs the secondary traffic node to control the application component to distribute traffic to a target database component, wherein the target database component is at least one of the database components included in the data cluster.

10. The multi-living system of claim 1, wherein, The second selection strategy includes a second write control strategy and a second distribution control strategy. The second write control strategy is used to instruct the secondary traffic node to control the application component to receive traffic, and the second distribution control strategy is used to instruct the secondary traffic node to control the application component to distribute traffic to a target database component, wherein the target database component is at least one of the database components included in the data cluster.

11. A method for applying disaster management, the method comprising: Applied to the application multi-active system according to any one of claims 1-10; the method includes: Upon receiving an extension instruction, locate the idle data cluster in the application active-active system, where the idle data cluster represents a data cluster without a corresponding application active-active architecture. Given that at least one idle data cluster exists, the target data cluster is determined from among the idle data clusters; and A target application active-active architecture is built based on the target data cluster, so as to realize traffic interaction between the target data cluster and the other non-idle data clusters through the target application active-active architecture and the application active-active architecture corresponding to the other non-idle data clusters.

12. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method of claim 11.

13. A computer readable storage medium having stored thereon a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method of claim 11.

14. A computer program product comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method of claim 11.