Flow Scheduling Method, Device, Electronic Device and Medium

By configuring a traffic scheduling device in the backup computer room of the cloud computing platform, and forwarding requests to the main computer room using the domain name system and data channels, the problem of service access interruption caused by network abnormalities in the main computer room is solved, the availability of business services is improved and the disaster recovery cost is reduced.

CN116112437BActive Publication Date: 2025-06-20BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310119208.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-01
Publication Date
2025-06-20
Estimated Expiration
2043-02-01

AI Technical Summary

Technical Problem

The network abnormality of the main computer room in the cloud computing platform causes the entire platform to be unable to provide business access to the outside world, affecting the availability of business services.

Method used

By configuring a traffic scheduling device in the backup computer room of the cloud platform, the domain name system is used to obtain the request to be processed, and the request is sent to the main computer room through the data channel between the backup computer room and the main computer room to ensure that the processing results can be returned.

Benefits of technology

It improves the availability of business services, reduces disaster recovery costs, supports only deployment of business services in the main computer room, and reduces resource waste.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116112437B_ABST
    Figure CN116112437B_ABST
Patent Text Reader

Abstract

The present disclosure provides a traffic scheduling method, apparatus, electronic device, and medium, which relate to the field of artificial intelligence technology, specifically to the field of cloud computing, and are applicable to service disaster recovery scenarios. The traffic scheduling method provided by the present disclosure is executed by a standby computer room in a cloud platform, and the cloud platform includes a domain name system, a primary computer room, and a standby computer room; the method includes: obtaining a first request to be processed from the domain name system; the first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room; sending the first request to the primary computer room through a data channel between the standby computer room and the primary computer room, and obtaining a processing result by processing the first request by the primary computer room. The present disclosure can improve the availability of business services and reduce the disaster recovery cost of business services at the same time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of artificial intelligence technology, and particularly to the field of cloud computing. Background Art

[0002] Cloud computing platforms such as cloud mobile phone PaaS (Platform as a Service) platforms can provide business services such as task execution and control scheduling of cloud mobile phones to the outside. The cloud computing platform includes dozens or hundreds of computer rooms distributed in various regions. The business services are generally deployed in the primary computer room. The business services are crucial in the entire cloud computing platform. Once a network failure occurs in the input port of the primary computer room, the entire cloud computing platform will be unable to provide business access to the outside. Summary of the Invention

[0003] The present disclosure provides a traffic scheduling method, apparatus, electronic device, and medium.

[0004] According to one aspect of the present disclosure, there is provided a traffic scheduling method, which is executed by a standby computer room in a cloud platform. The cloud platform includes a domain name system, a primary computer room, and a standby computer room. The method includes:

[0005] Obtaining a first request to be processed from the domain name system; the first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room;

[0006] Sending the first request to the primary computer room through a data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result.

[0007] According to another aspect of the present disclosure, there is provided a traffic scheduling apparatus, which is configured in a standby computer room in a cloud platform. The cloud platform includes a domain name system, a primary computer room, and a standby computer room. The apparatus includes:

[0008] A request obtaining module, configured to obtain a first request to be processed from the domain name system; the first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room;

[0009] A request sending module, configured to send the first request to the primary computer room through a data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result.

[0010] According to another aspect of the present disclosure, there is provided an electronic device, which includes:

[0011] At least one processor; and

[0012] A memory communicatively connected to the at least one processor; wherein,

[0013] The memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to execute the traffic scheduling method according to any one of the embodiments of the present disclosure.

[0014] According to another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause a computer to execute the traffic scheduling method according to any one of the embodiments of the present disclosure.

[0015] According to another aspect of the present disclosure, there is provided a computer program product, including a computer program, which implements the traffic scheduling method according to any one of the embodiments of the present disclosure when executed by a processor.

[0016] According to the technology of the present disclosure, the availability of business services can be improved, and at the same time, the disaster recovery cost of business services can be reduced.

[0017] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. Brief Description of the Drawings

[0018] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:

[0019] Figure 1 is a flowchart of a traffic scheduling method according to an embodiment of the present disclosure;

[0020] Figure 2 is a flowchart of another traffic scheduling method according to an embodiment of the present disclosure;

[0021] Figure 3A is a flowchart of another traffic scheduling method according to an embodiment of the present disclosure;

[0022] Figure 3B is a schematic structural diagram of a cloud computing platform according to an embodiment of the present disclosure;

[0023] Figure 4 is a schematic structural diagram of a traffic scheduling device according to an embodiment of the present disclosure;

[0024] Figure 5 is a block diagram of an electronic device for implementing the traffic scheduling method according to an embodiment of the present disclosure. Detailed Description of the Embodiments

[0025] The exemplary embodiments of the present disclosure will be described below with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, descriptions of well-known functions and structures are omitted below for clarity and conciseness.

[0026] Figure 1 is a flowchart of a traffic scheduling method provided according to an embodiment of the present disclosure. The embodiment of the present disclosure is applicable to the situation where there is a network anomaly at the input port of the primary computer room. This method can be executed by a traffic scheduling device, which can be implemented in software and / or hardware and is configured in the standby computer room of the cloud computing platform. As Figure 1 shown, the traffic scheduling method of this embodiment may include:

[0027] S101, obtain a first request to be processed from the domain name system; the first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room;

[0028] S102, send the first request to the primary computer room through the data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result.

[0029] Among them, business services are deployed in the primary computer room. Optionally, the business services include a scheduling service and microservices. The scheduling service is used to schedule access traffic and schedule the access traffic to other computer rooms, and other computer rooms process the access traffic based on the microservices deployed in the primary computer room. The microservices are used to support the cloud computing platform to provide services such as resource management, application management, operation and maintenance management, and access management to the outside world.

[0030] Among them, other computer rooms refer to computer rooms in the cloud computing platform other than the primary computer room. Optionally, among all the computer rooms included in the cloud computing platform, business services are only deployed in the primary computer room, and no business services are deployed in other computer rooms.

[0031] Inside the cloud computing platform, other computer rooms in the cloud computing platform are communicatively connected to the primary computer room through internal interfaces. Other computer rooms access the primary computer room through the internal interfaces (private APIs) configured in the primary computer room to access the business services deployed in the primary computer room. Optionally, other computer rooms call the internal interfaces in the http (Hyper Text Transfer Protocol) manner.

[0032] Optionally, other computer rooms with data channels to the primary computer room are backup computer rooms. The number of backup computer rooms is at least one, and the specific number of backup computer rooms is not limited here and is determined according to the actual situation. Without considering communication costs, multiple backup computer rooms can be set up in the cloud computing platform.

[0033] The primary computer room is configured with an input port. The input interface of the primary computer room refers to the network entrance of the primary computer room. Through the input port of the primary computer room, the access traffic obtained from the outside can be input into the primary computer room, and the primary computer room provides business access externally. Inside the cloud computing platform, the backup computer room and the primary computer room perform data interaction based on the data channel. Among them, the data channel between the backup computer room and the primary computer room is a dedicated channel between the two. The data channel is independent of the input port of the primary computer room, and the availability of the data channel has nothing to do with the availability of the input port of the primary computer room. When there is an abnormality in the input interface of the primary computer room, the backup computer room can send a first request to the primary computer room through the data channel.

[0034] Among them, the first request is obtained by rewriting the second request through the domain name system when there is a network abnormality in the input port of the primary computer room. Optionally, the domain name system rewrites the domain name pointed to by the second request. If there is no network abnormality in the input port of the primary computer room, the domain name system does not need to rewrite the second request and directly sends it to the primary computer room through the domain name system.

[0035] The first request and the second request are access requests generated by the user side and are used to request the cloud computing platform to provide business services. There are differences between the domain names pointed to by the first request and the second request. Specifically, the first request points to the domain name of the backup computer room, and the second request points to the domain name of the primary computer room. The first request is sent to the primary computer room through the backup computer room, and the second request is sent to the primary computer room through the domain name system.

[0036] It can be understood that when there is an abnormality in the input interface of the primary computer room, the second request pointing to the primary computer room cannot be input into the primary computer room through the input interface. The first request is obtained by rewriting the domain name pointed to by the second request through the domain name system, so that the first request points to the backup computer room.

[0037] Optionally, an input interface is also configured in the standby computer room. The Domain Name System sends the first request to the standby computer room through the input interface of the standby computer room. The standby computer room sends the first request to the primary computer room through the data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result. This is equivalent to invoking the scheduling service deployed in the primary computer room through the standby computer room to schedule the first request, and using the microservices deployed in the primary computer room to provide matching business services for the first request. It should be noted that only the input port in the primary computer room has a network anomaly, and the business services deployed in the primary computer room, such as the scheduling service and the microservices, are normal.

[0038] In an alternative embodiment, the data channel is obtained by creating a peer connection between the primary computer room and the standby computer room.

[0039] Among them, a peer connection refers to a network connection between two Virtual Private Clouds (VPCs). When the two parties of the peer connection conduct data communication, they do not distinguish which one is the service requester and which one is the service provider. By creating a peer connection between the primary computer room and the standby computer room, a data channel between the two can be obtained. It can be understood that the data channel between the standby computer room and the primary computer room can also be created by other means, not limited to the peer connection method, which is not limited here and is specifically determined according to actual business requirements. It should be noted that regardless of the method of creating the data channel, in the case of an anomaly in the input interface of the primary computer room, the availability of the data channel needs to be ensured. The above technical solution provides a practical data channel creation solution, enabling the standby computer room to invoke the business services deployed in the primary computer room when there is a network anomaly in the input port of the primary computer room, providing technical support for ensuring the availability of business services in the cloud computing platform.

[0040] The embodiments of the present disclosure provide a service disaster recovery solution. By setting up a data channel between the standby computer room and the primary computer room, in the case of a network anomaly in the input port of the primary computer room, the standby computer room can send the first request to be processed obtained from the Domain Name System to the primary computer room through the data channel, and the primary computer room processes the first request to obtain a processing result, improving the availability of business services in the cloud computing platform. The technical solution provided by the embodiments of the present disclosure supports deploying business services only in the primary computer room, which is beneficial to reducing the disaster recovery cost of the cloud computing platform.

[0041] Figure 2 It is a flowchart of another traffic scheduling method provided according to the embodiments of the present disclosure; this embodiment is an alternative solution proposed based on the above embodiment. Specifically, the embodiments of the present disclosure refine how to generate the first request.

[0042] See Figure 2 , the traffic scheduling method provided in this embodiment includes:

[0043] S201, when it is detected through the Domain Name System that there is a network anomaly at the input port of the primary computer room, obtain the alias record of the primary computer room through the Domain Name System.

[0044] The Domain Name System detects the network status of the input port of the primary computer room. If the Domain Name System detects that there is a network anomaly at the input port of the primary computer room, the Domain Name System obtains the alias record of the primary computer room.

[0045] Among them, the alias record (CNAME) allows multiple names to be mapped to the same server IP. In the case where multiple domain names point to the same server IP, one domain name can be set as an A record to point to the server IP, and then other domain names can be set as aliases (i.e., CNAME) and associated with the domain name of the A record. When the server IP address changes, it is not necessary to change the domain name pointing one by one. Only the domain name of the A record needs to be changed to the new IP of the server, and other domain names set as aliases (i.e., CNAME) will automatically point to the new IP address.

[0046] S202, modify the alias record based on the standby domain name of the standby computer room through the Domain Name System to rewrite the domain name pointed to by the second request to obtain the first request.

[0047] The primary computer room is the key computer room for traffic scheduling. The second request in the cloud computing platform will be preferentially input into the primary computer room and then scheduled to other computer rooms through the scheduling service deployed in the primary computer room. That is to say, the second request generally points to the primary domain name. Among them, the primary domain name refers to the domain name of the primary computer room. The Domain Name System modifies the alias record based on the standby domain name of the standby computer room. The standby domain name refers to the domain name of the standby computer room. Specifically, the Domain Name System modifies the A record associated with the alias record based on the standby domain name of the standby computer room. Modify the domain name pointed to by the second request from the primary domain name to the standby domain name.

[0048] By modifying the domain name pointed to by the second request through the Domain Name System, the first request can be obtained. The second request and the first request only differ in the domain name they point to. The second request points to the primary domain name, and the first request points to the standby domain name. The first request is input into the standby computer room through the input port of the standby computer room, and the first request is sent to the primary computer room through the standby computer room, and the primary computer room processes the first request to obtain the processing result.

[0049] In an embodiment of the present disclosure, when a network anomaly is detected at the input port of the primary computer room through the Domain Name System (DNS), the alias record of the primary computer room is obtained through the DNS, the alias record is modified based on the standby domain name of the standby computer room through the DNS, and the domain name pointed to by the second request is rewritten to obtain the first request, so that the first request can be obtained by the standby computer room. The first request is sent to the primary computer room by the standby computer room, and then the primary computer room processes the first request. By modifying the alias record and rewriting the domain name pointed to by the second request, the embodiment of the present disclosure improves the domain name resolution efficiency, shortens the domain name resolution duration, and reduces the impact of the primary-standby switch on the business service.

[0050] In an alternative embodiment, the method further includes: checking the network status of the primary computer room and at least two candidate computer rooms through the DNS; if the DNS detects a network anomaly at the input port of the primary computer room, selecting a standby computer room from the candidate computer rooms based on the inspection results of the candidate computer rooms through the DNS, and determining the standby domain name of the standby computer room.

[0051] Among them, the candidate computer rooms are communicatively connected to the primary computer room through a data channel, and the standby computer room is generated from the candidate computer rooms. The network status of the primary computer room and at least two candidate computer rooms is checked through the DNS to check whether there is a network anomaly at the input ports of the primary computer room and the standby computer room, and the inspection results of the primary computer room and the standby computer room are obtained. Among them, the inspection results include input port network anomaly and input port network anomaly.

[0052] If the inspection result of the primary computer room is an input port network anomaly, a standby computer room is selected from the candidate computer rooms based on the inspection result of the standby computer room through the DNS. Specifically, the DNS selects a candidate computer room with a normal input port inspection result from the candidate computer rooms as the standby computer room to ensure that the cloud computing platform can provide external services.

[0053] The above technical solution checks the network status of the primary computer room and at least two candidate computer rooms through the DNS, can select a standby computer room when a network anomaly is detected at the input port of the primary computer room, and calls the business services deployed in the primary computer room through the standby computer room, improving the fault tolerance and stability of the cloud computing platform.

[0054] Figure 3A is a flowchart of another traffic scheduling method provided according to an embodiment of the present disclosure; this embodiment is an alternative solution proposed on the basis of the above embodiment. Specifically, the present disclosure is applicable to the case where there is a network anomaly at the output port of the primary computer room. See Figure 3A This embodiment provides a traffic scheduling method including:

[0055] S301. When there is a network anomaly at the output port of the primary computer room, obtain the processing result from the primary computer room through the data channel between the standby computer room and the primary computer room.

[0056] Among them, the output port is configured in the primary computer room. Based on the output port, the primary computer room can call the callback microservice to feedback the processing result. The processing result is obtained by the primary computer room processing the second request. Once there is a network anomaly at the output port of the primary computer room, the primary computer room cannot feedback the processing result, which affects the cloud computing platform to provide business services externally.

[0057] When there is a network anomaly at the output port of the primary computer room, the standby computer room obtains the processing result from the primary computer room through the data channel between the standby computer room and the primary computer room.

[0058] S302. Feedback the processing result through the callback microservice deployed in the standby computer room.

[0059] The callback microservice is deployed in both the standby computer room and the primary computer room. The callback microservice is used to call the user interface and feedback the processing result to the user side through the user interface. Optionally, for the primary computer room and the standby computer room that are communicatively connected based on the data channel, the callback microservice is deployed in the HA manner. Among them, HA is the abbreviation of Highly Available, which is the abbreviation of the dual-machine cluster system and is an effective solution to ensure business continuity.

[0060] When there is a network anomaly at the input interface of the primary computer room and it is impossible to call the callback microservice deployed in the primary computer room, the standby computer room obtains the processing result from the primary computer room through the data channel and feedbacks the processing result through the callback microservice deployed in the standby computer room.

[0061] When there is a network anomaly at the output port of the primary computer room in the technical solution of the present disclosure and it is impossible to feedback the processing result through the callback microservice deployed in the primary computer room, the processing result obtained from the primary computer room is feedback to the user side through the callback microservice deployed in the standby computer room, improving the availability of the business service in the cloud computing platform.

[0062] In an optional embodiment, feedbacking the processing result through the callback microservice deployed in the standby computer room includes: the processing result is also associated with a target microservice; the target microservice is selected from the candidate microservices deployed in the primary computer room; based on the association relationship between the candidate microservice and the candidate callback interface in the callback microservice, determine the target callback interface associated with the target microservice; feedback the processing result through the target callback interface.

[0063] Among them, the processing result is obtained by the primary computer room processing the access request, and the processing result needs to be fed back. The microservices are used to support the cloud computing platform to provide business services externally. Different microservices have different business functions, and the microservices can be distinguished based on the business functions. Exemplarily, Microservice 1, Microservice 2, and Microservice 3 can be used for resource management, application management, and operation and maintenance management respectively. The primary computer room determines the target microservice for processing the access request from the candidate microservices in response to the access request, and processes the access request based on the target microservice to obtain the processing result. Among them, the access request can be the first request or the second request. When there is a network anomaly at the input interface of the primary computer room, the access request is the first request; when there is no network anomaly at the input interface of the primary computer room, the access request is the second request.

[0064] The processing result is associated with the target microservice. In the embodiments of the present disclosure, the candidate callback interfaces in the callback microservice are split according to the architecture of the candidate microservices to obtain the association relationship between the candidate microservices and the candidate callback interfaces in the callback microservice. Based on the association relationship between the two, the target callback interface associated with the target microservice is determined, and the processing result is fed back through the target callback interface. Optionally, the target callback interface is called in the rpc (Remote Procedure Call) manner.

[0065] In the above technical solution, based on the association relationship between the candidate microservices and the candidate callback interfaces in the callback microservice, the target callback interface associated with the target microservice is determined, and the processing result is fed back through the target callback interface, reducing the coupling between the candidate callback interfaces in the callback microservice and improving the fault tolerance of the cloud computing platform.

[0066] Figure 3B It is a schematic structural diagram of a cloud computing platform provided according to an embodiment of the present disclosure. Refer to Figure 3B , the cloud computing platform includes a domain name system, a primary computer room, and a standby computer room. Among them, the domain name system is communicatively connected to the primary computer room and the standby computer room respectively. The domain name system is used to check the network status of the primary computer room and the standby computer room; optionally, the domain name system checks the input interfaces of the primary computer room and the standby computer room to check whether there is a network anomaly at the input interface. The domain name system is also used to distribute traffic to the primary computer room and the standby computer room. During the process of traffic distribution by the domain name system, the primary computer room has the first priority, and the standby computer room has the second priority, where the first priority is higher than the second priority. Specifically, when there is no network anomaly at the input interface of the primary computer room, the traffic is preferentially distributed to the primary computer room; when there is a network anomaly at the input interface of the primary computer room, the traffic will be distributed to the standby computer room.

[0067] When the Domain Name System detects a network anomaly at the input port of the primary computer room, it obtains the alias record of the primary computer room. Optionally, the Domain Name System includes a user domain name system, an authoritative domain name system, and a scheduling domain name system. The user domain name system, in response to an access request sent by the user terminal, obtains the alias record of the primary computer room from the authoritative domain name system. The user domain name system sends the obtained alias record belonging to the primary computer room to the scheduling domain name system. The scheduling domain name system modifies the alias record based on the standby domain name of the standby computer room to rewrite the domain name pointed to by the second request to obtain the first request. Here, the second request points to the primary domain name, and the first request points to the standby domain name. The first request is sent to the primary computer room through the standby computer room, where the primary computer room and the standby computer room are communicatively connected based on a data channel.

[0068] Exemplarily, the second request is example.com, and the second request points to 10.0.0.1. When there is no network anomaly at the input interface of the primary computer room, the user domain name system feeds back 10.0.0.1 to the user terminal; when there is a network anomaly at the input interface of the primary computer room, the user domain name system obtains the alias record of the primary computer room, such as cname.example.com, from the authoritative domain name system, and sends the obtained alias record to the scheduling domain name system. The scheduling domain name system modifies the domain name pointed to by the second request based on the alias record to obtain the first request, such that the first request points to 20.0.0.1, where 10.0.0.1 corresponds to the primary computer room and 20.0.0.1 corresponds to the standby computer room.

[0069] Business services are deployed in the primary computer room, where the business services include a scheduling service and microservices. The scheduling service is used to centrally schedule access requests and schedule the access requests to other computer rooms. Here, the access request can be the first request or the second request. Other computer rooms refer to the computer rooms in the cloud computing platform other than the primary computer room. Machine room services are deployed in other computer rooms, and long connections can be used for communication between machine room services with interaction requirements. The machine room service is used to send synchronous tasks or asynchronous tasks to the ARM devices, which execute and return or report the processing results. Generally, a large number of ARM devices are deployed in each computer room of the cloud computing platform, ranging from dozens to tens of thousands. Other computer rooms in the cloud computing platform access the primary computer room based on the internal interface (Private API) configured in the primary computer room and call the microservices deployed in the primary computer room to facilitate data interaction among the computer rooms within the cloud computing platform. Optionally, other computer rooms call the microservices deployed in the primary computer room in an http manner based on the internal interface.

[0070] The primary computer room is also configured with a public interface (Open API), enabling external users to access the primary computer room and call the microservices deployed in the primary computer room. Optionally, external users can call the microservices deployed in the primary computer room in rpc mode based on the public interface.

[0071] Optionally, there are association relationships between the microservices deployed in the primary computer room and the internal interface and the public interface respectively. Based on the above association relationships, the internal interface and the public interface can be split to obtain an internal interface group (PrivateAPI group) and a public interface group (Open API group). Before external users and / or other computer rooms call the microservices deployed in the primary computer room, the microservices deployed in the primary computer room and the corresponding internal interface group and public interface group are registered in the registration center in the primary computer room.

[0072] Optionally, callback microservices are deployed in both the primary computer room and the standby computer room, and output interfaces are configured in the primary computer room and the standby computer room. Based on the output interfaces, the callback microservices can be called to feedback the processing results. In the case of a network exception in the input interface of the primary computer room and when it is unable to call the callback microservice deployed in the primary computer room, the standby computer room obtains the processing results from the primary computer room through the data channel and feeds back the processing results through the callback microservice deployed in the standby computer room. Optionally, load balancers are also deployed in the primary computer room and the standby computer room to balance the traffic and achieve high service availability.

[0073] The service disaster recovery solutions provided by related technologies for cloud computing platforms generally include the following two types: 1. Primary and standby deployment of business services: A complete set of business services is deployed in the primary computer room and the standby computer room as primary and standby. In the case of being unable to access the business services in the primary computer room, the standby computer room is switched to provide business services. 2. Multi-active deployment of business services: Business services are scattered and deployed in multiple computer rooms, and data is synchronized between multiple computer rooms. All computer rooms can provide business services. The main disadvantages of the above two solutions are as follows: 1. Primary and standby deployment of business services: Low resource utilization rate, one set of services is in an idle state, and the domain name resolution takes a long time to take effect during the primary and standby switch; 2. Multi-active deployment of business services: The cloud computing platform is very sensitive to the device status, and the network latency caused by cross-regional data synchronization will affect the business.

[0074] In the embodiments of the present disclosure, the business service is deployed in the primary computer room. By creating a data channel between the primary computer room and the standby computer room, in the case where the business service in the primary computer room cannot be accessed, the standby computer room can access the business service in the primary computer room based on the data channel, improving resource utilization. In the embodiments of the present disclosure, the domain name pointing of the access request is modified based on the alias record to achieve primary-standby switching, shortening the effective duration of domain name resolution. The embodiments of the present disclosure support deploying only one set of business services in the cloud computing platform, and the cost required for the solution provided by the present disclosure is only 20% of the primary-standby deployment solution for business services in the related art. The embodiments of the present disclosure effectively reduce the service disaster recovery cost.

[0075] Figure 4 It is a schematic structural diagram of a traffic scheduling device provided according to an embodiment of the present disclosure. The embodiments of the present disclosure are applicable to the situation where there is a network anomaly at the input port of the primary computer room. The device can be implemented by software and / or hardware, and the device can implement the traffic scheduling method described in any embodiment of the present disclosure. As Figure 4 shown, the traffic scheduling device 400 includes:

[0076] A request acquisition module 401, configured to obtain a first request to be processed from the domain name system; the first request is obtained by rewriting a second request through the domain name system in the case where there is a network anomaly at the input port of the primary computer room;

[0077] A request sending module 402, configured to send the first request to the primary computer room through the data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result.

[0078] The embodiments of the present disclosure provide a service disaster recovery solution. By setting a data channel between the standby computer room and the primary computer room, in the case where there is a network anomaly at the input port of the primary computer room, the standby computer room can, through the data channel, obtain a first request to be processed from the domain name system and send the first request to the primary computer room, and the primary computer room processes the first request to obtain a processing result, improving the availability of the business service in the cloud computing platform. The technical solution provided by the embodiments of the present disclosure supports deploying the business service only in the primary computer room, which is beneficial to reducing the disaster recovery cost of the cloud computing platform.

[0079] Optionally, the data channel is obtained by creating a peer connection between the primary computer room and the standby computer room.

[0080] Optionally, the device further includes: a result acquisition module, configured to obtain the processing result from the primary computer room through the data channel between the standby computer room and the primary computer room when there is a network anomaly at the output port of the primary computer room; and a result feedback module, configured to feedback the processing result through the callback microservice deployed in the standby computer room.

[0081] Optionally, the processing result is further associated with a target microservice; the target microservice is selected from candidate microservices deployed in the primary computer room; the result feedback module includes: an interface determination sub-module, configured to determine a target callback interface associated with the target microservice based on the association relationship between the candidate microservice and the candidate callback interfaces in the callback microservice; and a result feedback sub-module, configured to feedback the processing result through the target callback interface.

[0082] Optionally, the device further includes a request generation module, configured to generate the first request; the request generation module includes: an alias record acquisition sub-module, configured to obtain the alias record of the primary computer room through the domain name system when it is detected through the domain name system that there is a network anomaly at the input port of the primary computer room; and a domain name pointing modification sub-module, configured to modify the alias record based on the standby domain name of the standby computer room through the domain name system to rewrite the domain name pointed to by the second request to obtain the first request.

[0083] Optionally, the device further includes: a network status check module, configured to check the network status of the primary computer room and at least two candidate computer rooms through the domain name system; and a standby computer room determination sub-module, configured to select a standby computer room from the candidate computer rooms and determine the standby domain name of the standby computer room based on the check result of the candidate computer rooms through the domain name system if it is detected through the domain name system that there is a network anomaly at the input port of the primary computer room.

[0084] The traffic scheduling device provided by the embodiments of the present disclosure can execute the traffic scheduling method provided by any embodiment of the present disclosure, and has corresponding functional modules and beneficial effects for executing the traffic scheduling method.

[0085] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision, and disclosure of user information involved all comply with the provisions of relevant laws and regulations and do not violate public order and good customs.

[0086] According to the embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0087] Figure 5FIG. shows a schematic block diagram of an exemplary electronic device 500 that can be used to implement embodiments of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as, laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, personal digital processors, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely exemplary and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0088] As Figure 5 shown, the electronic device 500 includes a computing unit 501 that can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the electronic device 500 can also be stored. The computing unit 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0089] A plurality of components in the electronic device 500 are connected to the I / O interface 505, including: an input unit 506, such as a keyboard, a mouse, etc.; an output unit 507, such as various types of displays, speakers, etc.; a storage unit 508, such as a magnetic disk, an optical disk, etc.; and a communication unit 509, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 509 allows the electronic device 500 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0090] The computing unit 501 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 501 executes the various methods and processes described above, such as the traffic scheduling method. For example, in some embodiments, the traffic scheduling method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 508. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 500 via the ROM 502 and / or the communication unit 509. When the computer program is loaded into the RAM 503 and executed by the computing unit 501, one or more steps of the traffic scheduling method described above can be executed. Alternatively, in other embodiments, the computing unit 501 can be configured to execute the traffic scheduling method by any other suitable means (e.g., by means of firmware).

[0091] Various embodiments of the systems and techniques described above in this document can be implemented in digital electronic circuitry, integrated circuit systems, field-programmable gate arrays (FPGA), application-specific integrated circuits (ASIC), application-specific standard products (ASSP), system-on-a-chip systems (SOC), complex programmable logic devices (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special-purpose or general-purpose programmable processor that receives data and instructions from a storage system, at least one input device, and at least one output device, and transmits the data and instructions to the storage system, the at least one input device, and the at least one output device.

[0092] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to the processor or controller of a general-purpose computer, a special-purpose computer, or other programmable traffic scheduling devices, such that when the program codes are executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program codes can be executed entirely on the machine, partially on the machine, as an independent software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0093] In the context of this disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0094] In order to provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0095] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0096] A computer system can include a client and a server. The client and the server are generally far apart from each other and typically interact through a communication network. The relationship between the client and the server is generated by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, can also be a server of a distributed system, or a server incorporating a blockchain.

[0097] Artificial intelligence is a discipline that studies the use of computers to simulate certain human thinking processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), and it includes technologies at both the hardware and software levels. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include several major directions such as computer vision technology, speech recognition technology, natural language processing technology, machine learning / deep learning technology, big data processing technology, and knowledge graph technology.

[0098] Cloud computing refers to a technical system that accesses an elastic and scalable shared physical or virtual resource pool through a network. The resources can include servers, operating systems, networks, software, applications, and storage devices, etc., and the resources can be deployed and managed in a on-demand and self-service manner. Through cloud computing technology, it can provide efficient and powerful data processing capabilities for the application of technologies such as artificial intelligence and blockchain and model training.

[0099] It should be understood that various forms of processes shown above can be used, steps can be reordered, added, or deleted. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and no limitations are imposed herein.

[0100] The above specific implementation manners do not constitute a limitation to the protection scope of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the protection scope of this disclosure.

Claims

1. A traffic scheduling method, which is executed by a standby computer room in a cloud platform. The cloud platform includes a domain name system, a primary computer room, and a standby computer room. The method includes: Obtain a first request to be processed from the domain name system; The first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room; Send the first request to the primary computer room through the data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result; wherein, the data channel is independent of the input port of the primary computer room; Wherein, business services are deployed in the primary computer room, and no business services are deployed in the standby computer room.

2. The method according to claim 1, wherein, The data channel is obtained by creating a peer connection between the primary computer room and the standby computer room.

3. The method according to claim 1, the method further includes: When there is a network anomaly at the output port of the primary computer room, obtain the processing result from the primary computer room through the data channel between the standby computer room and the primary computer room; Feedback the processing result through the callback microservice deployed in the standby computer room.

4. The method according to claim 3, wherein, Feedback the processing result through the callback microservice deployed in the standby computer room, including: The processing result is also associated with a target microservice; the target microservice is selected from the candidate microservices deployed in the primary computer room; Based on the association relationship between the candidate microservice and the candidate callback interface in the callback microservice, determine the target callback interface associated with the target microservice; Feedback the processing result through the target callback interface.

5. The method according to claim 1, wherein, The first request is generated in the following manner: When the domain name system detects a network anomaly at the input port of the primary computer room, obtain the alias record of the primary computer room through the domain name system; Modify the alias record through the domain name system based on the standby domain name of the standby computer room to rewrite the domain name pointed to by the second request to obtain the first request.

6. The method according to claim 5, the method further includes: Check the network status of the primary computer room and at least two candidate computer rooms through the domain name system; If the domain name system detects a network anomaly at the input port of the primary computer room, select a standby computer room from the candidate computer rooms based on the inspection results of the candidate computer rooms through the domain name system, and determine the standby domain name of the standby computer room.

7. A traffic scheduling device, which is configured in a standby computer room of a cloud platform. The cloud platform includes a domain name system, a primary computer room, and a standby computer room. The device includes: A request acquisition module, configured to obtain a first request to be processed from the domain name system; The first request is obtained by rewriting a second request through the domain name system when there is a network anomaly at the input port of the primary computer room; A request sending module, configured to send the first request to the primary computer room through the data channel between the standby computer room and the primary computer room, and the primary computer room processes the first request to obtain a processing result; wherein, the data channel is independent of the input port of the primary computer room; Wherein, business services are deployed in the primary computer room, and no business services are deployed in the standby computer room.

8. The device according to claim 7, wherein, The data channel is obtained by creating a peer connection between the primary computer room and the standby computer room.

9. The device according to claim 7, the device further includes: A result acquisition module, configured to obtain the processing result from the primary computer room through the data channel between the standby computer room and the primary computer room when there is a network anomaly at the output port of the primary computer room; A result feedback module, configured to feedback the processing result through a callback microservice deployed in the standby computer room.

10. The device according to claim 9, wherein, The processing result is also associated with a target microservice; The target microservice is obtained by selecting from candidate microservices deployed in the primary computer room; The result feedback module includes: an interface determination sub-module, configured to determine a target callback interface associated with the target microservice based on the association relationship between the candidate microservice and the candidate callback interface in the callback microservice; A result feedback sub-module, configured to feedback the processing result through the target callback interface.

11. The device according to claim 7, wherein, The device further includes a request generation module, configured to generate the first request; The request generation module includes: An alias record acquisition sub-module, configured to, when a network anomaly is detected in the input port of the primary computer room through the domain name system, acquire the alias record of the primary computer room through the domain name system; A domain name pointing modification sub-module, configured to modify the alias record based on the standby domain name of the standby computer room through the domain name system to rewrite the domain name pointed to by the second request to obtain the first request.

12. The device according to claim 11, the device further comprising: A network status check module, configured to check the network status of the primary computer room and at least two candidate computer rooms through the domain name system; A standby computer room determination sub-module, configured to, if the domain name system detects a network anomaly in the input port of the primary computer room, select a standby computer room from the candidate computer rooms based on the check result of the candidate computer rooms through the domain name system, and determine the standby domain name of the standby computer room.

13. An electronic device, comprising: At least one processor; And A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the traffic scheduling method according to any one of claims 1-6.

14. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause a computer to execute the traffic scheduling method according to any one of claims 1-6.

15. A computer program product, comprising a computer program which, when executed by a processor, implements the traffic scheduling method according to any one of claims 1-6.

Citation Information

Patent Citations

  • Request scheduling method and device, equipment and storage medium

    CN115309497A