Scheduling processing method and device, computer equipment, readable storage medium and program product
By adopting the method of multi-threading processing of multiple application requests in the big data cluster scheduler, candidate nodes are randomly selected to determine the target node, which solves the problems of high scheduling conflict rate and low efficiency, and realizes more efficient resource utilization and scheduling processing.
Patent Information
- Application Number
- CN202411721812.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-28
- Publication Date
- 2025-03-18
AI Technical Summary
The prior art is prone to generate a large number of scheduling conflicts when multiple application requests generate multiple scheduling decisions, which affects the scheduling processing efficiency.
By processing multiple application requests through multiple threads, each thread processes one application request, and obtains a set of available nodes based on the node resource information during the processing process, randomly selects the target number of candidate nodes from it, and determines the target node used to process the application request.
It reduces multi-threaded scheduling conflicts, improves scheduling and processing efficiency, and improves the overall resource utilization rate of the cluster.
Smart Images

Figure CN119645599A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud computing technology, and in particular to a scheduling processing method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Art
[0002] With the development of technologies such as the Internet, the Internet of Things, and artificial intelligence, the amount of data has exploded, and the demand for data processing has also increased. Traditional single machines or small-scale clusters cannot meet the challenges of big data scenarios. In order to effectively process massive amounts of data, it is necessary to build a large-scale distributed computing platform that uses the parallel computing capabilities of multiple servers to achieve data storage, analysis, mining, and other operations.
[0003] In order to effectively manage and schedule these data processing tasks, a special software system is needed, namely the big data cluster scheduler. The big data cluster scheduler is a software system used to manage and schedule large-scale data processing tasks. It can realize the functions of resource allocation, task execution, fault recovery, monitoring, etc. of the data center. It can dynamically allocate and adjust the resources of the data center according to the characteristics and requirements of the task to ensure efficient execution of the task and load balancing.
[0004] Based on the current scheduling processing method, when there are multiple application requests generating multiple scheduling decisions, a large number of scheduling conflicts are likely to occur, which also affects the scheduling processing efficiency. Summary of the invention
[0005] Based on this, it is necessary to provide a scheduling processing method, apparatus, computer equipment, computer-readable storage medium and computer program product to address the above technical issues.
[0006] In a first aspect, the present application provides a scheduling processing method, comprising:
[0007] A resource information determination module, used to determine the node resource information of each node in the cluster;
[0008] A multi-thread processing module, used for processing multiple application requests through multiple threads; one thread processes one application request;
[0009] A target determination module is used to obtain an available node set according to the node resource information of each node when each thread processes the respective application request, randomly select a target number of candidate nodes from the available node set, and determine the target node for processing the application request according to the target number of candidate nodes.
[0010] In one of the embodiments, determining the node resource information of each node in the cluster includes: for each node in the cluster, after receiving the heartbeat packet information of the node, storing the node resource information in the heartbeat packet information to obtain the node resource information of each node in the cluster.
[0011] In one of the embodiments, determining the target node for processing the application request based on the target number of candidate nodes includes: determining the target node from the target number of candidate nodes based on feature information of the application request and the node resource information of each of the target number of candidate nodes.
[0012] In one of the embodiments, determining the target node from the target number of candidate nodes based on the characteristic information of the application request and the node resource information of the target number of candidate nodes includes: obtaining the matching degree of each of the target number of candidate nodes based on the characteristic information of the application request and the node resource information of the target number of candidate nodes; and determining the candidate node with the higher matching degree as the target node.
[0013] In one of the embodiments, after determining the target node for processing the application request based on the target number of candidate nodes, the method further includes: if the target node is not a conflicting node, assigning the application request to the target node for processing; if the target node is a conflicting node, returning to execute the steps of obtaining an available node set based on the node resource information of each node, randomly selecting a target number of candidate nodes from the available node set, and determining the target node for processing the application request based on the target number of candidate nodes, so as to re-determine the target node.
[0014] In one embodiment, the target number is two.
[0015] In a second aspect, the present application further provides a scheduling processing device, including:
[0016] A resource determination module, used to determine the node resource information of each node in the cluster;
[0017] A request processing module, used for processing multiple application requests through multiple threads; one thread processes one application request;
[0018] A node determination module is used to obtain an available node set according to the node resource information of each node when each thread processes the respective application request, randomly select a target number of candidate nodes from the available node set, and determine a target node for processing the application request according to the target number of candidate nodes.
[0019] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0020] Determine the node resource information of each node in the cluster; process multiple application requests through multiple threads; one thread processes one application request; when each thread processes its own application request, obtain an available node set according to the node resource information of each node, randomly select a target number of candidate nodes from the available node set, and determine a target node for processing the application request according to the target number of candidate nodes.
[0021] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0022] Determine the node resource information of each node in the cluster; process multiple application requests through multiple threads; one thread processes one application request; when each thread processes its own application request, obtain an available node set according to the node resource information of each node, randomly select a target number of candidate nodes from the available node set, and determine a target node for processing the application request according to the target number of candidate nodes.
[0023] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:
[0024] Determine the node resource information of each node in the cluster; process multiple application requests through multiple threads; one thread processes one application request; when each thread processes its own application request, obtain an available node set according to the node resource information of each node, randomly select a target number of candidate nodes from the available node set, and determine a target node for processing the application request according to the target number of candidate nodes.
[0025] The above-mentioned scheduling processing method, device, computer equipment, computer-readable storage medium and computer program product determine the node resource information of each node in the cluster, and process multiple application requests through multiple threads; one thread processes one application request; when each thread processes its own application request, an available node set is obtained according to the node resource information of each node, a target number of candidate nodes are randomly selected from the available node set, and a target node for processing the application request is determined according to the target number of candidate nodes. This scheme can process multiple application requests simultaneously through multiple threads, and when each thread processes its own application request, a certain number of candidate nodes can be randomly selected to determine the target node for processing the application request, which can reduce multi-thread scheduling conflicts, improve scheduling processing efficiency, and also improve the overall resource utilization of the cluster. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0027] Figure 1 An application environment diagram of a scheduling processing method in an embodiment;
[0028] Figure 2 It is a flowchart of scheduling processing in related technologies;
[0029] Figure 3 A schematic diagram of a flow chart of a scheduling processing method in one embodiment;
[0030] Figure 4 A schematic flow chart of a scheduling processing method in another embodiment;
[0031] Figure 5 A flowchart of a scheduling processing method in another embodiment;
[0032] Figure 6 is a structural block diagram of a scheduling processing device in one embodiment;
[0033] Figure 7 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0034] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0035] The scheduling processing method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. The application environment may include a terminal and a server. The terminal may communicate through the server. The data storage system may store data that the server needs to process. The data storage system may be integrated on the server, or may be placed on the cloud or other network servers. Among them, the terminal may be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, IoT devices, and portable wearable devices. IoT devices may be smart speakers, smart TVs, smart air conditioners, smart car-mounted devices, projection devices, etc. Portable wearable devices may be smart watches, smart bracelets, head-mounted devices, etc. Head-mounted devices may be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. The server may be a server cluster or a cloud server that provides cloud computing services.
[0036] In the related art, Figure 2 , YARN (Yet Another Resource Negotiator) is the current mainstream big data resource management framework. The resource scheduler can monitor the heartbeat packet information sent by each node. After receiving the heartbeat packet information, it can extract the node resource information it carries, and then traverse the application requests (application requests of the application program) stored in its queue (parent queue, leaf queue), and give priority to matching high-priority application requests. When the node's resources can meet the application request, the node can be allocated to this application request for processing. YARN3.0 also introduced an optimistic lock design mode, which can perform multiple scheduling at the same time, and finally centrally determine the validity of the decision. If there is no conflict between multiple scheduling, the scheduling is valid. If there is a scheduling conflict, the later scheduling is invalid and re-scheduling is performed. It can be seen that when there are multiple application requests that generate multiple scheduling decisions, when matching all nodes in the cluster to obtain the best node, multiple scheduling decisions are very likely to select the same best node, resulting in a large number of scheduling conflicts, which also affects the scheduling processing efficiency.
[0037] In this regard, an embodiment of the present application provides a scheduling processing method that can reduce multi-thread scheduling conflicts and improve scheduling processing efficiency.
[0038] The scheduling processing method of the present application is described below in conjunction with various embodiments and corresponding drawings.
[0039] In an exemplary embodiment, Figure 3 As shown, a scheduling processing method is provided, which can be applied to Figure 1 In the server shown, the method may include the following steps:
[0040] Step S301, determining node resource information of each node in the cluster.
[0041] In this step, the scheduler in the server may store the node resource information of each node in the cluster, or may update the node resource information of each node. The scheduler may construct a view of the node resource information of each node in the cluster.
[0042] Step S302: Process multiple application requests through multiple threads, wherein one thread processes one application request.
[0043] In the traditional scheduling processing method, the scheduler processes application requests in a serial manner according to the heartbeat packet information (heartbeat packet) of the node, which has a slow running speed and low processing efficiency. Compared with the traditional scheduling processing method, this step uses multiple threads to process the application requests of the application in parallel. Moreover, unlike the traditional scheduling processing method in which the heartbeat packet information (heartbeat packet) of the node is received each time, it is used to match the application request. In this step, each of the multiple threads in operation processes an application request, and when processing the application request, it is not allocated and processed based on a fixed node, but can be allocated and processed based on a node set containing multiple nodes in the cluster.
[0044] Step S303, when each thread processes its own application request, obtains an available node set according to the node resource information of each node, randomly selects a target number of candidate nodes from the available node set, and determines a target node for processing the application request according to the target number of candidate nodes.
[0045] This step is applicable to each thread's processing of its own application request.
[0046] In this regard, in the traditional scheduling processing method, the scheduler needs to match the best node for the application request among all the nodes in the cluster to run the application request each time, but the result of such matching usually makes the nodes selected by different threads the same, which will cause conflicts, and because the same node is selected every time, the conflict rate will be very high. For example, if the application requests processed by multiple threads are all computing-intensive application requests, they will tend to use the node with more computing resources among all the nodes in the cluster as the target node, which will cause multiple threads to select the target node, resulting in resource conflicts.
[0047] Different from the traditional scheduling processing method, in this step, when each thread processes its own application request, the thread can read the node resource information of each node stored in the controller, and obtain the available node set according to the node resource information of each node. Among them, the available node set is a set of available nodes, and the available nodes can be nodes in the cluster whose load meets the requirements (such as low load, etc.), and the available nodes can also be all nodes in the cluster. Thus, the thread can randomly select a target number of available nodes from the available node set as candidate nodes. In some embodiments, the target number can be, for example, two, that is, the thread can randomly select two available nodes from the available node set as candidate nodes. Then, the thread can determine the target node for processing the application request from the target number of candidate nodes based on the target number of candidate nodes, for example, a candidate node with the lowest load among the target number of candidate nodes can be selected as the target node.
[0048] Therefore, the matching processing method adopted in this step can not only reduce the imbalance of the system by an order of magnitude, that is, it can reduce the resource conflict rate using multi-threading by an order of magnitude, but also avoid matching all nodes every time, saving the calculation amount of each allocation.
[0049] The scheduling processing method of this embodiment determines the node resource information of each node in the cluster, and processes multiple application requests through multiple threads; one thread processes one application request; when each thread processes its own application request, it obtains an available node set based on the node resource information of each node, randomly selects a target number of candidate nodes from the available node set, and determines the target node for processing the application request based on the target number of candidate nodes. This solution can process multiple application requests simultaneously through multiple threads, and when each thread processes its own application request, it can randomly select a certain number of candidate nodes to determine the target node for processing the application request, which can reduce multi-thread scheduling conflicts, improve scheduling processing efficiency, and also improve the overall resource utilization of the cluster.
[0050] In an exemplary embodiment, determining the node resource information of each node in the cluster in step S301 may include:
[0051] For each node in the cluster, after receiving the heartbeat packet information of the node, the node resource information in the heartbeat packet information is stored to obtain the node resource information of each node in the cluster.
[0052] In this embodiment, for each node in the cluster, the scheduler can receive the heartbeat packet information of each node. Different from the scheduler in the related art that matches the application request each time after receiving the heartbeat packet information of the node, the scheduler in this embodiment stores the node resource information in the heartbeat packet information after receiving the heartbeat packet information of the node, and can update the stored node resource information of the node based on the node resource information in the received heartbeat packet information of the node, without having to match the application request each time after receiving the heartbeat packet information.
[0053] In an exemplary embodiment, determining the target node for processing the application request according to the target number of candidate nodes in step S303 includes:
[0054] A target node is determined from the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes.
[0055] In this embodiment, after determining, for example, two candidate nodes, the thread can determine, based on the characteristic information of the application request and the node resource information of each of the two candidate nodes, a candidate node with node resource information and the characteristic information of the application request as the target node. For example, based on the node resource information, a candidate node that can meet the computing resource requirements, latency, etc. (characteristic information) of the application request can be selected from the two candidate nodes to be the target node, thereby selecting a candidate node that is compatible with the application request from the target number of candidate nodes and determining it as the target node.
[0056] In an exemplary embodiment, determining the target node from the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes may include:
[0057] According to the feature information of the application request and the node resource information of the target number of candidate nodes, the matching degree of the target number of candidate nodes is obtained; and the candidate nodes with higher matching degree are determined as target nodes.
[0058] Combination Figure 4 The solution of this embodiment can use multi-threading and cluster-based node sets to match target nodes for application requests of applications, instead of allocating on a single node as in the related art. In this embodiment, each thread can determine a corresponding matching degree for each candidate node based on the feature information of the application request and the node resource information of the randomly selected, for example, two candidate nodes. The matching degree indicates the degree of matching between each candidate node and the application request. The candidate nodes can be sorted according to the size of the matching degree, and the candidate node with the (relatively) highest matching degree is selected from the two candidate nodes as the target node.
[0059] In an exemplary embodiment, after determining the target node for processing the application request according to the target number of candidate nodes in step S303, the method of the present application further includes:
[0060] If the target node is not a conflicting node, the application request is assigned to the target node for processing; if the target node is a conflicting node, the step of returning to execute is to obtain an available node set based on the node resource information of each node, randomly select a target number of candidate nodes from the available node set, and determine the target node for processing the application request based on the target number of candidate nodes to redetermine the target node.
[0061] In this embodiment, considering that the conflict rate can be effectively reduced by randomly selecting a target number (for example, two) of candidate nodes, the resource conflicts that may be generated by some threads can be further processed to improve the stability and reliability of the cluster. Figure 5 After determining the target node of the application request, the thread can submit the application request and its corresponding target node to the accounting node (Commiter) of the cluster. The accounting node can check whether there is a resource conflict, that is, it can determine whether the target node is a conflicting node. If the target node is not a conflicting node, the application request can be allocated to the target node for processing, and the node resource information in the scheduler can be updated; if the target node is a conflicting node, the accounting node can reject the thread's allocation. At this time, the thread returns to execute step S303 to obtain an available node set according to the node resource information of each node, randomly select a target number of candidate nodes from the available node set, and determine the target node for processing the application request according to the target number of candidate nodes, so that the target node can be re-determined until the allocation is successful or cannot be allocated.
[0062] On the whole, the scheduling processing method of the embodiment of the present application can solve technical problems in related technologies such as high scheduling conflict rate and low efficiency of big data cluster schedulers. Multi-threading can be used based on the random selection of, for example, two nodes in the node set of the cluster and the target node for processing application requests can be determined therefrom, thereby effectively reducing scheduling conflicts in high-concurrency scenarios such as a large number of scheduling requests, improving cluster scalability, optimizing the overall efficiency of the scheduler, and matching nodes with application requests based on their characteristic information, thereby optimizing the running quality and success rate of cluster applications and improving cluster resource utilization.
[0063] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0064] Based on the same inventive concept, the embodiment of the present application also provides a scheduling processing device for implementing the scheduling processing method involved above. The implementation solution provided by the device to solve the problem is similar to the implementation solution recorded in the above method, so the specific limitations in one or more scheduling processing device embodiments provided below can refer to the above limitations on the scheduling processing method, and will not be repeated here.
[0065] In an exemplary embodiment, Figure 6 As shown, a scheduling processing device is provided, and the device 600 may include:
[0066] Resource determination module 601, used to determine node resource information of each node in the cluster;
[0067] The request processing module 602 is used to process multiple application requests through multiple threads; one thread processes one application request;
[0068] The node determination module 603 is used to obtain an available node set according to the node resource information of each node when each thread processes the respective application request, randomly select a target number of candidate nodes from the available node set, and determine the target node for processing the application request according to the target number of candidate nodes.
[0069] In an exemplary embodiment, the resource determination module 601 is used to store the node resource information in the heartbeat packet information after receiving the heartbeat packet information of each node in the cluster, so as to obtain the node resource information of each node in the cluster.
[0070] In an exemplary embodiment, the node determination module 603 is used to determine the target node from the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes.
[0071] In an exemplary embodiment, the node determination module 603 is used to obtain the matching degree of each of the target number of candidate nodes based on the characteristic information of the application request and the node resource information of each of the target number of candidate nodes; and determine the candidate node with the higher matching degree as the target node.
[0072] In an exemplary embodiment, the node determination module 603 is also used to assign the application request to the target node for processing if the target node does not belong to a conflicting node; if the target node belongs to a conflicting node, return to execute the steps of obtaining an available node set based on the node resource information of each node, randomly selecting a target number of candidate nodes from the available node set, and determining the target node for processing the application request based on the target number of candidate nodes, so as to redetermine the target node.
[0073] In an exemplary embodiment, the number of targets is two.
[0074] Each module in the above-mentioned scheduling processing device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module above.
[0075] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 7 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data such as node resource information. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a scheduling processing method is implemented.
[0076] Those skilled in the art will understand that Figure 7The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0077] In one embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above method embodiments when executing the computer program.
[0078] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0079] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0080] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0081] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0082] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0083] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A scheduling processing method, characterized in that: The method comprises: Determine the node resource information of each node in the cluster; Processing multiple application requests through multiple threads; one thread processes one application request; When each of the threads processes its respective application request, an available node set is obtained according to the node resource information of each of the nodes, a target number of candidate nodes are randomly selected from the available node set, and a target node for processing the application request is determined according to the target number of candidate nodes.
2. The method according to claim 1, characterized in that The determining of node resource information of each node in the cluster includes: For each of the nodes in the cluster, after receiving the heartbeat packet information of the node, the node resource information in the heartbeat packet information is stored to obtain the node resource information of each of the nodes in the cluster.
3. The method according to claim 1, characterized in that The determining the target node for processing the application request according to the target number of candidate nodes includes: The target node is determined from the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes.
4. The method according to claim 3, characterized in that The determining the target node from the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes includes: Obtaining a matching degree of each of the target number of candidate nodes according to the feature information of the application request and the node resource information of each of the target number of candidate nodes; The candidate node with a higher matching degree is determined as the target node.
5. The method according to claim 1, characterized in that After determining the target node for processing the application request according to the target number of candidate nodes, the method further includes: If the target node is not a conflicting node, assigning the application request to the target node for processing; If the target node is a conflicting node, return to execute the steps of obtaining an available node set according to the node resource information of each node, randomly selecting a target number of candidate nodes from the available node set, and determining a target node for processing the application request according to the target number of candidate nodes to redetermine the target node.
6. The method according to any one of claims 1 to 5, characterized in that The target number is two.
7. A scheduling processing device, characterized in that: The device comprises: A resource determination module, used to determine the node resource information of each node in the cluster; A request processing module, used for processing multiple application requests through multiple threads; one thread processes one application request; A node determination module is used to obtain an available node set according to the node resource information of each node when each thread processes the respective application request, randomly select a target number of candidate nodes from the available node set, and determine a target node for processing the application request according to the target number of candidate nodes.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.