A business request processing method, apparatus, electronic device, and medium

By using domain name management services to select the optimal business processing node in a distributed object storage system, the load balancing and disaster recovery issues in multi-site scenarios are solved, enabling seamless switching and efficient processing of business requests.

CN119766832BActive Publication Date: 2025-10-28INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411875604.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-18
Publication Date
2025-10-28
Estimated Expiration
2044-12-18

AI Technical Summary

Technical Problem

Existing distributed object storage systems cannot achieve load balancing in multi-site scenarios, and cannot automatically and quickly switch to another node when one site fails, resulting in business interruption. This is especially true in services such as finance, where they cannot meet the requirement for seamless automatic switching.

Method used

Through the domain name management service, business requests from clients are received, target forwarding rules are determined based on client identifiers, and the optimal node is selected from the business processing nodes of multiple data centers for request forwarding. Rules such as distance priority, network priority, specified priority, and load balancing are supported to achieve load balancing and disaster recovery capabilities across multiple sites.

Benefits of technology

It improves business processing capabilities, read/write performance, and disaster recovery capabilities in multi-site scenarios, avoids interruptions caused by manual business switching, and provides a good user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119766832B_ABST
    Figure CN119766832B_ABST
Patent Text Reader

Abstract

This application relates to the field of distributed system technology, specifically to a business request processing method, apparatus, electronic device, and medium. In this application, after receiving an external request, the domain name management service can determine the optimal target business processing node from multiple business processing nodes across multiple data centers, and then forward the request to that target business processing node so that the target business processing node can parse and respond to the request. The client only needs to send a business request via a domain name. The domain name management service can select the optimal business processing node from multiple business processing nodes corresponding to multiple data centers in the distributed object storage system. Therefore, even if one or more data centers are busy or experiencing failures, the business request can be directly forwarded to business processing nodes in other available data centers, greatly improving business processing capabilities, read / write performance, and disaster recovery capabilities in multi-site scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of distributed system technology, and mainly to a business request processing method, apparatus, electronic device and medium. Background Technology

[0002] Current distributed object storage systems can achieve data synchronization between multiple sites (data centers). Specifically, objects uploaded to one site can be automatically synchronized to other sites. Information such as users and buckets created on the main site can also be automatically synchronized to other sites, ensuring that the metadata of each site is consistent. Furthermore, when there is a data change in any data center, all other data centers will detect the change and perform the same operation, thereby ensuring that the data in all data centers is exactly the same. Objects can be downloaded from any site to achieve the effect of disaster recovery in different locations.

[0003] When users access the object storage system, they can initiate various operation requests to the storage system through the REST API interface. Upon receiving a request from the client, the storage system will respond accordingly. Users can send requests to the object storage REST API interface via IP address or domain name. Requests sent via IP address will only be sent to the node where that IP address resides; if that node fails, the service will be unavailable. Requests sent via domain name will undergo domain name resolution, and after resolution, will be sent to one of the several nodes managed by that domain name.

[0004] In current distributed storage systems, whether using IP addresses or domain names, only one data center can be connected simultaneously. This makes it impossible to connect to multiple data centers at the same time. In multi-site usage scenarios, load balancing between sites cannot be supported. Furthermore, if one site fails, the user's business cannot automatically and quickly switch to another node. The user's business configuration must be modified to connect the business to another site before the business can continue to be used. This operation is relatively complex, and the configuration switching process will cause business interruption, which is unacceptable in some use cases, especially in financial services where there is a great demand for seamless automatic business switching.

[0005] Therefore, there is an urgent need for a new method for handling business requests. Summary of the Invention

[0006] One objective of this application is to provide a service request processing method to solve, or at least partially solve, the problems in the related art. A second objective of this application is to provide a service request processing apparatus; a third objective is to provide an electronic device; and a fourth objective is to provide a medium.

[0007] To achieve the above objectives, the technical solution of this application is as follows:

[0008] A business request processing method is applied to a domain name management service in a distributed object storage system, wherein the distributed object storage system includes multiple data centers, and each data center includes one or more business processing nodes. The method includes:

[0009] Receive a first service request sent by the client via a domain name, the first service request carrying the client identifier;

[0010] The target forwarding rule is determined based on the client identifier;

[0011] Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, a target service processing node is determined from multiple service processing nodes included in multiple data centers. The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node.

[0012] The first service request is assembled based on the source address of the client and the IP address information of the target service processing node to obtain the second service request;

[0013] The second service request is sent to the target service processing node.

[0014] Optionally, the method further includes:

[0015] Create a domain name to receive the first service request;

[0016] Configure the IP address information of one or more data center service processing nodes for the domain name, as well as the forwarding rule configuration parameters for each service processing node;

[0017] Configure forwarding rules for the domain name, including one or more of the following: distance priority rule, network priority rule, specified priority rule, and load balancing rule.

[0018] Optionally, the method further includes:

[0019] Receive a rule configuration request sent by a client via a domain name; the rule configuration request carries one or more forwarding rule identifiers;

[0020] Associate the client identifier of the client with the forwarding rule corresponding to the forwarding rule identifier in the rule configuration request, and save the association table.

[0021] Determining the target forwarding rule based on the client identifier includes:

[0022] Based on the client identifier, the association table is queried, and the forwarding rule associated with the client is determined as the target forwarding rule.

[0023] Optionally, the target forwarding rule is a distance-first rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including:

[0024] Determine the business processing node configured for the domain name;

[0025] Determine the location information of each business processing node in the business processing node of the domain name configuration;

[0026] Determine the location information of the client;

[0027] Based on the location information of the client and the location information of each service processing node, the service processing node closest to the client is determined as the target service processing node.

[0028] Optionally, the target forwarding rule is a network priority rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including:

[0029] Determine the business processing node configured for the domain name;

[0030] Determine the network configuration information of each business processing node in the business processing node configured by the domain name;

[0031] The service processing node with the optimal network configuration is identified as the target service processing node.

[0032] Optionally, the target forwarding rule is a priority-specified rule, which determines the target service processing node from multiple service processing nodes included in multiple data centers based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, including:

[0033] Determine the business processing node configured for the domain name;

[0034] Determine the specified priority of each business processing node in the business processing nodes configured for the domain name;

[0035] The highest priority business processing node is designated as the target business processing node.

[0036] Optionally, the target forwarding rule is a load balancing rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including:

[0037] Determine the business processing node configured for the domain name;

[0038] Query the load information of each business processing node in the business processing node configured for the domain name. The load information represents the real-time business request processing volume of the business processing node and / or the real-time response time of the business processing node.

[0039] Based on the load information of each business processing node configured in the domain name, the business processing node with the lowest load is determined as the target business processing node. The business processing node with the lowest load is the business processing node with the least amount of real-time business request processing and / or the shortest real-time response time.

[0040] A business request processing apparatus is applied to a domain name management service in a distributed object storage system. The distributed object storage system includes multiple data centers, and each data center includes one or more business processing nodes. The apparatus comprises:

[0041] The service request receiving module is used to receive a first service request sent by the client via a domain name, wherein the first service request carries the client identifier.

[0042] The target forwarding rule determination module is used to determine the target forwarding rule based on the client identifier;

[0043] The forwarding IP selection module is used to determine the target service processing node from multiple service processing nodes in multiple data centers based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node. The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node.

[0044] The domain name resolution and forwarding module is used to assemble the first service request into a second service request based on the source address of the client and the IP address information of the target service processing node; and send the second service request to the target service processing node.

[0045] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the service request processing method described above.

[0046] A non-volatile storage medium storing a computer program that, when executed by a processor, implements the business request processing method described above.

[0047] The beneficial effects of this application are:

[0048] In this application, after receiving an external request, the domain name management service can determine the optimal target business processing node from multiple business processing nodes across multiple data centers based on the target forwarding rules corresponding to the client identifier. The IP address of this target business processing node is then used as the forwarding IP address, and the request is forwarded to the corresponding target business processing node. Upon receiving the request, the target business processing node resolves and responds to it. In this application, the client only needs to send a business request via a domain name. The domain name management service can select the optimal business processing node from multiple business processing nodes corresponding to multiple data centers within the distributed object storage system. Therefore, even if one or more data centers are busy or experiencing failures, the business request can be directly forwarded to business processing nodes in other available data centers, greatly improving business processing capabilities, read / write performance, and disaster recovery capabilities in multi-site scenarios. Attached Figure Description

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

[0050] Figure 1 This is a flowchart of a business request processing method described in one embodiment of this application;

[0051] Figure 2 This is a logical diagram of the domain name forwarding rule configuration process in the business request processing method described in one embodiment of this application;

[0052] Figure 3 This is a logical schematic diagram of the business request processing method described in one embodiment of this application;

[0053] Figure 4 This is a schematic diagram of the framework of the service request processing device described in one embodiment of this application.

[0054] Among them, 400 is the service request processing device, 401 is the service request receiving module, 402 is the target forwarding rule determination module, 403 is the forwarding IP selection module, and 404 is the domain name resolution forwarding module. Detailed Implementation

[0055] Exemplary embodiments of this application will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of this application are shown in the drawings, it should be understood that this application may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided to enable a more thorough understanding of this application and to fully convey the scope of this application to those skilled in the art.

[0056] In one embodiment of this application, reference is made to Figure 1 , Figure 1 This is a flowchart of a business request processing method described in one embodiment of this application. Figure 1 As shown, the method includes the following steps:

[0057] S101, Receive a first service request sent by the client via a domain name, the first service request carrying the client identifier.

[0058] S102, determine the target forwarding rule based on the client identifier.

[0059] S103, based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, determine the target service processing node from the multiple service processing nodes included in the multiple data centers.

[0060] The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node.

[0061] S104, the first service request is assembled based on the source address of the client and the IP address information of the target service processing node to obtain the second service request.

[0062] S105, the second service request is sent to the target service processing node.

[0063] In this application, the method is applied to a domain name management service in a distributed object storage system, which includes multiple data centers, and each data center includes one or more business processing nodes.

[0064] In this application, a distributed object storage system refers to a distributed storage system for unstructured data objects.

[0065] In this application, a data center (also known as a site) is a storage system, also known as a storage cluster, with each data center configured with its own storage gateway and storage pool. A data center can have multiple object storage gateway instances.

[0066] In this application, the domain name management service can be configured in any data center, specifically in the main data center.

[0067] In this application, the domain name management service can also be configured independently on an electronic device, which communicates with each data center in the distributed object storage system.

[0068] In this application, multiple data centers in a distributed object storage system can form a multi-site synchronization cluster, and metadata and data between sites can be automatically synchronized.

[0069] In this application, a domain name refers to an identifier on the Internet used to identify and locate a computer, server, or network service on the Internet. It is the part of a URL that follows "http: / / www."; for example, in the URL www.example.com, example.com is the domain name. The main function of a domain name is to map human-readable strings to IP addresses on the Internet, so that people can access websites using more memorable domain names.

[0070] In this application, the domain name management service can manage domain names, configure forwarding rules for clients, and forward business requests sent to the domain name management service according to the set forwarding rules, so as to achieve load balancing or preferential forwarding for multi-site scenarios, multi-data center and multi-business processing nodes, thereby realizing the multi-site multi-active function of the distributed object storage system.

[0071] In this application, in step S101, the client sends a first business request to the domain name management service through a domain name. This domain name is pre-configured by the domain name management service, and resolving this domain name can obtain one or more business processing nodes in each data center.

[0072] In this application, in step S102, the domain name management service can determine the target forwarding rule corresponding to the client currently sending the first service request based on the client identifier. In this application, different clients can be configured with different forwarding rules to meet the actual needs of the clients.

[0073] In this application, in step S103, multiple service processing nodes configured for the domain name and the forwarding rule configuration parameters of each service processing node can be determined based on the domain name, and the optimal service processing node that conforms to the target forwarding rule can be determined as the target processing node based on the target forwarding rule.

[0074] In this application, the target forwarding rule can be one or more of the following: distance priority rule, network priority rule, specified priority rule, and load balancing rule.

[0075] In this application, the domain name management service can determine the priority order of a service processing node under the target forwarding rule based on the forwarding rule configuration parameters of the service processing node (location information of the service processing node, network configuration information of the service processing node, and forwarding priority information of the service processing node).

[0076] For example, for distance-first rules, the distance between the business processing node and the client can be determined based on the location information of the business processing node and the client, and the priority order of each business processing node can be determined based on the distance.

[0077] In this application, in step S104, the domain name management service can assemble the first service request based on the determined IP address information of the target service processing node, changing the request source to the client's source address and determining the target address as the IP address information of the target service processing node. Thus, the second service request assembled in step S105 is forwarded to the optimal IP address, enabling the target service processing node to process the service request, such as uploading or downloading objects. After processing the service request, the target service processing node can directly return a response to the client based on the client's source address. In this application, the IP address information of the service processing node can be a physical IP or a virtual IP.

[0078] In this application, through the domain name management service, business requests can be sent to the optimal business processing nodes in multiple data centers for processing. This allows for the automatic switching of business requests to another data center according to certain rules when one data center fails, without the user's awareness. This not only avoids the tedious operation of manual business switching but also prevents business interruptions caused by manual business switching. It can not only perform load balancing of business across multiple sites but also select the optimal business processing cluster and processing nodes according to set rules, greatly improving business processing capabilities, read and write performance, and disaster recovery capabilities in multi-site scenarios. This provides customers with a good user experience and enriches the functionality of object storage.

[0079] In one embodiment of this application, based on the above embodiments, the method further includes the following steps:

[0080] S201, Create a domain name to receive the first service request.

[0081] S202, configure the IP address information of one or more data center service processing nodes for the domain name, as well as the forwarding rule configuration parameters for each service processing node.

[0082] S203, Configure forwarding rules for the domain name, the forwarding rules include one or more of the following: distance priority rule, network priority rule, specified priority rule and load balancing rule.

[0083] Based on the above steps S201 to S203, the addition, deletion, modification, and query of domain names configured for the domain name management service can be completed.

[0084] Reference Figure 2 This document illustrates a schematic diagram of the domain name forwarding rule configuration process in this application. First, a domain name can be created and forwarding IP information configured. This forwarding IP information includes the IP address information of the service processing nodes, as well as the forwarding rule configuration parameters for each service processing node, such as: IP address, distance from the IP address to the node, interface network configuration, priority, etc. The forwarding rules for this domain name are then further configured. After configuration, the domain name and configured policy information are persisted, completing the configuration of the domain name forwarding rules.

[0085] Specifically, in this application, different domain names can be created for different business requests, and multiple business processing nodes can be configured for each domain name. In this application, multiple business processing nodes configured for the same domain name refer to nodes in different data centers that accept and process the same type of business.

[0086] In this application, different forwarding rules can also be configured for each domain name according to the actual needs of different services. For example, network priority rules can be configured for services with high network bandwidth requirements.

[0087] In this application, when the business processing node changes, the domain name configuration corresponding to the business processing node can also be modified through the domain name management service. Specifically, the business processing node in the domain name configuration can be added or deleted, and the forwarding rule configuration parameters of the business processing node in the domain name configuration can also be modified.

[0088] In this application, since the domain name management service configures the IP address information of multiple business processing nodes in one or more data centers for each domain name, as well as the forwarding rule configuration parameters of each business processing node, the domain name management service can receive business requests sent by clients through domain names and determine the optimal business processing node to process the business request from multiple data centers.

[0089] In this application, in step S203, multiple forwarding rules can be configured for the domain name so that the client can choose according to its own needs. Among them, the load balancing rule can be used as the default forwarding rule. If the client does not select any forwarding rule, the business requests sent by the client are processed based on the default forwarding rule.

[0090] In this application, the algorithm logic for the distance priority rule can be: determining the priority order of each business processing node for the current business request based on the distance between the business processing node and the client. The algorithm logic for the network priority rule can be: determining the priority order of each business processing node for the current business request based on the network configuration of the business processing node. The algorithm logic for the specified priority rule can be: determining the priority order based on the predefined business processing priorities of each business processing node. The algorithm logic for the load balancing rule can be: determining the priority order of each business processing node based on its actual load.

[0091] In one embodiment of this application, based on the above embodiments, the method further includes the following steps:

[0092] S1, receive a rule configuration request sent by the client via a domain name; the rule configuration request carries one or more forwarding rule identifiers.

[0093] S2, associate the client identifier of the client with the forwarding rule corresponding to the forwarding rule identifier in the rule configuration request, and save the association table.

[0094] In this embodiment, step S102 specifically includes: querying the association table based on the client identifier, and determining the forwarding rule associated with the client as the target forwarding rule.

[0095] In this application, users can determine forwarding rules according to their own needs and send rule configuration requests to the domain name management service through a client based on the domain name. The domain name management service receives and records the forwarding rules selected by each client. Thus, upon receiving a business request from a client, the service determines the forwarding rule pre-selected by the client based on the client's identifier.

[0096] In one embodiment of this application, based on the above embodiments, when the target forwarding rule determined in step S102 is a distance-first rule, step S103 includes:

[0097] S1031A, determine the service processing node configured for the domain name.

[0098] S1032A, determine the location information of each business processing node in the business processing node of the domain name configuration.

[0099] S1033A, Determine the location information of the client.

[0100] S1034A, based on the location information of the client and the location information of each service processing node, determine the service processing node closest to the client as the target service processing node.

[0101] In this application, after receiving the first business request sent by the client through a domain name, multiple business processing nodes configured for the domain name can be obtained based on the domain name resolution. These multiple business processing nodes may include business processing nodes of multiple data centers.

[0102] In this application, the location information of the client can be determined based on the client identifier carried in the first service request, and the location information of each service processing node can be determined based on the forwarding rule configuration parameters of each of the multiple service processing nodes configured for the domain name. Then, the distance between each service processing node and the client can be calculated, and the service processing node closest to the client can be selected as the target service processing node.

[0103] In one embodiment of this application, based on the above embodiments, when the target forwarding rule determined in step S102 is a network priority rule, step S103 includes:

[0104] S1031B, Determine the service processing node configured for the domain name.

[0105] S1032B, Determine the network configuration information of each service processing node in the service processing node configured by the domain name.

[0106] S1033B identifies the service processing node with the optimal network configuration as the target service processing node.

[0107] In this application, after receiving the first business request sent by the client through a domain name, multiple business processing nodes configured for the domain name can be obtained based on the domain name resolution. These multiple business processing nodes may include business processing nodes of multiple data centers.

[0108] In this application, the network configuration information of each service processing node can be determined based on the forwarding rule configuration parameters of each of the multiple service processing nodes configured for the domain name. Therefore, the service processing node with the closest network configuration information can be selected as the target service processing node.

[0109] In one embodiment of this application, based on the above embodiments, when the target forwarding rule determined in step S102 is a specified priority rule, step S103 includes:

[0110] S1031C, Determine the service processing node configured for the domain name.

[0111] S1032C, Determine the specified priority of each business processing node in the business processing node of the domain name configuration.

[0112] S1033C specifies the highest priority service processing node as the target service processing node.

[0113] In this application, after receiving the first business request sent by the client through a domain name, multiple business processing nodes configured for the domain name can be obtained based on the domain name resolution. These multiple business processing nodes may include business processing nodes of multiple data centers.

[0114] In this application, the forwarding priority information in the forwarding rule configuration parameters of multiple service processing nodes configured for the domain name can be used to determine the specified priority of each service processing node. Therefore, the service processing node with the highest specified priority can be selected as the target service processing node.

[0115] In one embodiment of this application, based on the above embodiments, when the target forwarding rule determined in step S102 is a load balancing rule, step S103 includes:

[0116] S1031D, Determine the service processing node configured for the domain name.

[0117] S1032D, query the load information of each business processing node in the business processing node configured by the domain name. The load information represents the real-time business request processing volume of the business processing node and / or the real-time response time of the business processing node.

[0118] S1033D, based on the load information of each business processing node configured by the domain name, determine the business processing node with the lowest load from the business processing nodes configured by the domain name as the target business processing node. The business processing node with the lowest load is the business processing node with the least amount of real-time business request processing and / or the shortest real-time response time of the business processing node.

[0119] In this application, after receiving the first business request sent by the client through a domain name, multiple business processing nodes configured for the domain name can be obtained based on the domain name resolution. These multiple business processing nodes may include business processing nodes of multiple data centers.

[0120] In this application, the domain name management service can query the load information of each business processing node. The load information can specifically be the real-time business request processing volume of each business processing node, the real-time response time of each business processing node, or both real-time business request processing volume and real-time response time, to send business requests to the business processing node with the lowest load. This achieves balanced distribution of business requests and maximizes the processing efficiency of the entire distributed object storage system.

[0121] For example, if domain A is configured with service processing nodes a, b, and c, the real-time service request processing volume and real-time response time of each node can be queried. If a node has both the lowest real-time service request processing volume and the lowest real-time response time, that node is selected as the optimal node. If the minimum real-time service request processing volume and the minimum real-time response time are two different nodes, the optimal node can be determined according to a pre-defined load balancing algorithm. For example, if the pre-defined load balancing algorithm prioritizes the node with the lowest real-time response time, then the node with the lowest real-time response time is selected as the optimal node.

[0122] In this application, the domain name management service can also send each received business request sequentially to each business processing node, so that each business processing node can process the business request in turn to achieve balanced distribution of business requests.

[0123] For ease of understanding, an embodiment is also provided in this application, with reference to... Figure 3 , Figure 3 This is a logical schematic diagram of the business request processing method described in the embodiments of this application, such as... Figure 3 As shown, the method includes:

[0124] Step 1: Receive the first business request sent by the client via the domain name.

[0125] Step 2: Determine the target forwarding rules based on the client identifier.

[0126] Step 3: Determine if the target forwarding rule is a distance-first rule. If yes, determine the service processing node closest to the client as the target service processing node and proceed to Step 7. If no, proceed to Step 4.

[0127] Step 4: Determine if the target forwarding rule is a network priority rule. If yes, determine the service processing node with the optimal network configuration as the target service processing node and proceed to Step 7. If no, proceed to Step 5.

[0128] Step 5: Determine if the target forwarding rule is a specified priority rule. If yes, determine the service processing node with the highest specified priority as the target service processing node and proceed to Step 7. If no, proceed to Step 6.

[0129] Step 6: Determine if the target forwarding rule is a load balancing rule. If yes, determine the service processing node with the lowest load as the target service processing node and proceed to Step 7. If no, it is determined that the client has not specified a target forwarding rule, so the load balancing rule is used as the target forwarding rule, and the service processing node with the lowest load is determined as the target service processing node.

[0130] Step 7: Assemble the first service request to obtain the second service request, and send the second service request to the IP address corresponding to the target service processing node.

[0131] Step 8: Determine whether the transmission was successful. If the transmission fails, determine the suboptimal service processing node according to the steps above.

[0132] In one embodiment of this application, based on the above embodiment, in step S203, when configuring multiple forwarding rules for a domain name, the priority of each forwarding rule can also be configured. For example, the priority of the distance priority rule is greater than the network priority rule, which is greater than the specified priority rule, which is greater than the load balancing rule.

[0133] In practical applications, the client can request to configure multiple forwarding rules in step S1, so that the domain name management service associates the client's identifier with multiple forwarding rule representations and saves them.

[0134] Upon receiving a service request from the client, multiple target forwarding rules are identified. If multiple target forwarding rules identify a node as the optimal service processing node, that node can be directly selected as the target processing node. If the optimal service processing nodes for multiple target forwarding rules are different, the node corresponding to the highest priority forwarding rule can be selected as the target processing node. Conversely, if the target processing node fails to send a request, the next highest priority forwarding rule can be selected as the target processing node.

[0135] For example, suppose the target forwarding rules for client 1 include distance-first rules and load balancing rules, and the domain name management service pre-configures the forwarding rule priority for domain A as follows: distance-first rules are greater than load balancing rules, and the multiple business processing nodes configured for domain A are node a, node b, and node c. When the domain name management service receives a business request sent by client 1 through domain A, it determines that the distances between node a, node b, and node c and client 1 are: node a > node b > node c. The load information for each node is: node a > node b > node c. Therefore, based on the forwarding rule priority, node a is selected as the target business processing node. If sending the business request to node a fails, node c is selected as the target business processing node. Thus, this application can comprehensively consider the various forwarding rules selected by the client and the actual situation of each business processing node to determine the optimal business processing node, further improving business processing capabilities, read / write performance, and disaster recovery capabilities in multi-site scenarios.

[0136] In this application, the domain name management service can also monitor the monitoring indicators of multiple business processing nodes included in each data center during the domain name resolution process. Specifically, the monitoring indicators may include: the response time of the business processing node, the business processing success rate of the business processing node, the business traffic of the business processing node, the CPU utilization rate of the data center, the memory utilization rate, and the network bandwidth utilization rate.

[0137] In this application, monitoring the response time of each business processing node can assess its service performance. Monitoring the business processing success rate of each business processing node can detect its service reliability. Monitoring the CPU utilization, memory utilization, and network bandwidth utilization of each data center can determine its load status. Monitoring the traffic of each business processing node can identify abnormal traffic or potential attacks.

[0138] Specifically, thresholds can be set for each monitoring indicator. When a monitoring indicator exceeds the threshold, an anomaly is detected.

[0139] In this application, monitoring indicators of multiple business processing nodes included in each data center are monitored to promptly detect abnormal data centers for anomaly analysis and handling.

[0140] This application can generate real-time reports of monitoring metrics for each business processing node within each data center of a distributed object storage system, displaying the current service status and performance metrics of each business node. Therefore, in the event of an anomaly in a data center, real-time reports can be provided to technical personnel for anomaly analysis and handling.

[0141] In this application, if it is determined that a certain data center is abnormal, all service processing nodes of the data center can be regarded as abnormal. In the process of determining the target service processing node based on the client-side forwarding rules, all service network processing nodes included in the abnormal data center are not considered.

[0142] Furthermore, this application can also determine whether the client's forwarding rules are optimal based on real-time data from monitoring metrics of each business processing node. If the client's forwarding rules do not conform to the actual situation of the business processing nodes in each data center, adjustment information regarding the forwarding rules can be generated to prompt the user to adjust the forwarding rules in order to optimize service performance and load balancing. For example, assuming the user selects the distance-first forwarding rule, but the response time of the business processing node closest to the client exceeds a preset response time threshold, a prompt message can be sent to the client, prompting the client to select other forwarding rules (e.g., network-first rule).

[0143] In one embodiment of this application, reference is made to Figure 4 , Figure 4 This is a schematic diagram of the architecture of the service request processing device 400 described in one embodiment of this application. Figure 4 As shown, the device is applied to a domain name management service in a distributed object storage system. The distributed object storage system includes multiple data centers, and each data center includes one or more business processing nodes. The device includes:

[0144] The service request receiving module 401 is used to receive a first service request sent by the client via a domain name, wherein the first service request carries the client identifier.

[0145] Target forwarding rule determination module 402 is used to determine the target forwarding rule based on the client identifier;

[0146] The forwarding IP selection module 403 is used to determine the target service processing node from multiple service processing nodes included in multiple data centers based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node. The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node.

[0147] The domain name resolution and forwarding module 404 is used to assemble the first service request into a second service request based on the source address of the client and the IP address information of the target service processing node; and send the second service request to the IP address corresponding to the target service processing node.

[0148] Optionally, the device further includes:

[0149] The domain name and forwarding rule management module is used to create a domain name that receives the first service request; configure the IP address information of one or more data center service processing nodes for the domain name, as well as the forwarding rule configuration parameters of each service processing node; configure forwarding rules for the domain name, the forwarding rules including one or more of the following: distance priority rule, network priority rule, specified priority rule and load balancing rule.

[0150] Optionally, the device further includes:

[0151] A configuration request receiving module is used to receive rule configuration requests sent by clients via domain names; the rule configuration request carries one or more forwarding rule identifiers; the client identifier of the client and the forwarding rule corresponding to the forwarding rule identifier in the rule configuration request are associated and saved to obtain an association table;

[0152] Target forwarding rule determination module 402 is specifically used for:

[0153] Based on the client identifier, the association table is queried, and the forwarding rule associated with the client is determined as the target forwarding rule.

[0154] Optionally, the target forwarding rule is a distance-first rule, and the forwarding IP selection module 403 is specifically used for:

[0155] Determine the business processing node configured for the domain name;

[0156] Determine the location information of each business processing node in the business processing node of the domain name configuration;

[0157] Determine the location information of the client;

[0158] Based on the location information of the client and the location information of each service processing node, the service processing node closest to the client is determined as the target service processing node.

[0159] Optionally, the target forwarding rule is a network priority rule, and the forwarding IP selection module 403 is specifically used for:

[0160] Determine the business processing node configured for the domain name;

[0161] Determine the network configuration information of each business processing node in the business processing node configured by the domain name;

[0162] The service processing node with the optimal network configuration is identified as the target service processing node.

[0163] Optionally, the target forwarding rule is a priority-specified rule, and the forwarding IP selection module 403 is specifically used for:

[0164] Determine the business processing node configured for the domain name;

[0165] Determine the specified priority of each business processing node in the business processing nodes configured for the domain name;

[0166] The highest priority business processing node is designated as the target business processing node.

[0167] Optionally, the target forwarding rule is a load balancing rule, and the forwarding IP selection module 403 is specifically used for:

[0168] Determine the business processing node configured for the domain name;

[0169] Query the load information of each business processing node in the business processing node configured for the domain name. The load information represents the real-time business request processing volume of the business processing node and / or the real-time response time of the business processing node.

[0170] Based on the load information of each business processing node configured in the domain name, the business processing node with the lowest load is determined as the target business processing node. The business processing node with the lowest load is the business processing node with the least amount of real-time business request processing and / or the shortest real-time response time.

[0171] This application contains a limited description of the device embodiments; for details, please refer to the above method embodiments, which will not be repeated here.

[0172] In one embodiment of this application, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the above-described service request processing method.

[0173] In one embodiment of this application, a non-volatile storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, it implements the business request processing method as described in the above embodiments.

[0174] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0175] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, embodiments of this application can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of this application can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0176] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0177] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0178] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0179] Although preferred embodiments of the present application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present application.

[0180] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.

[0181] The above provides a detailed description of a business request processing method, apparatus, electronic device, and medium. Specific examples have been used to illustrate the principles and embodiments of this application. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in specific embodiments and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A business request processing method, characterized in that, The method is applied to a domain name management service in a distributed object storage system, which includes multiple data centers, and each data center includes one or more business processing nodes. The method includes: Receive a first service request sent by the client via a domain name, the first service request carrying the client identifier; The target forwarding rule is determined based on the client identifier; Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, a target service processing node is determined from multiple service processing nodes included in multiple data centers. The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node. The first service request is assembled based on the source address of the client and the IP address information of the target service processing node to obtain the second service request; Send the second service request to the target service processing node; The method further includes: Create a domain name to receive the first service request; Configure the IP address information of one or more data center service processing nodes for the domain name, as well as the forwarding rule configuration parameters for each service processing node; Configure forwarding rules for the domain name, including one or more of the following: distance priority rule, network priority rule, specified priority rule, and load balancing rule; The method further includes: Receive a rule configuration request sent by a client via a domain name; the rule configuration request carries one or more forwarding rule identifiers; Associate the client identifier of the client with the forwarding rule corresponding to the forwarding rule identifier in the rule configuration request, and save the association table. Determining the target forwarding rule based on the client identifier includes: Based on the client identifier, the association table is queried, and the forwarding rule associated with the client is determined as the target forwarding rule.

2. The business request processing method according to claim 1, characterized in that, The target forwarding rule is a distance-first rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including: Determine the business processing node configured for the domain name; Determine the location information of each business processing node in the business processing node of the domain name configuration; Determine the location information of the client; Based on the location information of the client and the location information of each service processing node, the service processing node closest to the client is determined as the target service processing node.

3. The business request processing method according to claim 1, characterized in that, The target forwarding rule is a network priority rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including: Determine the business processing node configured for the domain name; Determine the network configuration information of each business processing node in the business processing node configured by the domain name; The service processing node with the optimal network configuration is identified as the target service processing node.

4. The business request processing method according to claim 1, characterized in that, The target forwarding rule is a priority-specified rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including: Determine the business processing node configured for the domain name; Determine the specified priority of each business processing node in the business processing nodes configured for the domain name; The highest priority business processing node is designated as the target business processing node.

5. The business request processing method according to claim 1, characterized in that, The target forwarding rule is a load balancing rule. Based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node, the target service processing node is determined from multiple service processing nodes included in multiple data centers, including: Determine the business processing node configured for the domain name; Query the load information of each business processing node in the business processing node configured for the domain name. The load information represents the real-time business request processing volume of the business processing node and / or the real-time response time of the business processing node. Based on the load information of each business processing node configured in the domain name, the business processing node with the lowest load is determined as the target business processing node. The business processing node with the lowest load is the business processing node with the least amount of real-time business request processing and / or the shortest real-time response time.

6. A service request processing apparatus, characterized in that, The device is used for domain name management services in a distributed object storage system, which includes multiple data centers, each data center including one or more business processing nodes. The device includes: The service request receiving module is used to receive a first service request sent by the client via a domain name, wherein the first service request carries the client identifier. The target forwarding rule determination module is used to determine the target forwarding rule based on the client identifier; The forwarding IP selection module is used to determine the target service processing node from multiple service processing nodes in multiple data centers based on the domain name, the target forwarding rule, and the forwarding rule configuration parameters of each service processing node. The forwarding rule configuration parameters of the service processing node include: the location information of the service processing node, the network configuration information of the service processing node, and the forwarding priority information of the service processing node. The domain name resolution and forwarding module is used to assemble the first service request into a second service request based on the source address of the client and the IP address information of the target service processing node; and send the second service request to the target service processing node. The device further includes: The domain name and forwarding rule management module is used to create a domain name that receives the first service request; configure the IP address information of one or more data center service processing nodes for the domain name, as well as the forwarding rule configuration parameters for each service processing node; configure forwarding rules for the domain name, the forwarding rules including one or more of the following: distance priority rule, network priority rule, specified priority rule and load balancing rule; A configuration request receiving module is used to receive rule configuration requests sent by clients via domain names; the rule configuration request carries one or more forwarding rule identifiers; the client identifier of the client and the forwarding rule corresponding to the forwarding rule identifier in the rule configuration request are associated and saved to obtain an association table; The target forwarding rule determination module is specifically used for: Based on the client identifier, the association table is queried, and the forwarding rule associated with the client is determined as the target forwarding rule.

7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the business request processing method as described in any one of claims 1-5.

8. A non-volatile storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the business request processing method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Server security defense method and system, communication equipment and storage medium

    CN112565318A

  • Data processing method and device, gateway and readable storage medium

    CN116939040A