Server scheduling method and system
By building a hierarchical scheduling analysis model and autonomous learning technology for multi-type servers, different types of servers are divided into levels and split sub-tasks, which solves the problem of low resource utilization efficiency in the existing technology, and realizes efficient allocation of server resources and Quick schedule.
Patent Information
- Application Number
- CN202411338648.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-25
- Publication Date
- 2024-12-20
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
When multi-project, multi-task and multi-service parallelism, the existing server scheduling methods have low resource utilization efficiency, slow compilation speed, and lack effective hierarchical scheduling analysis models, resulting in low scheduling efficiency and errors.
Build a hierarchical scheduling analysis model for multi-type servers, divide different types of servers through independent learning, divide the level or split the sub-tasks, and calculate the task hierarchy and priority indicators based on the compilation attributes of the server resource pool to realize intelligent scheduling and resource pooling of tasks. efficient allocation.
It improves server scheduling efficiency, realizes efficient allocation of server resources, and can quickly allocate matching resource pools and appropriate servers when handling a large number of concurrent construction tasks, so as to maximize the use of server resources.
Smart Images

Figure CN119166312A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of server data processing, and in particular to a server scheduling method and system thereof. Background Art
[0002] As server performance continues to improve, servers can be used to implement concurrent compilation of multiple projects. However, for very large projects, internal server resources are limited, and server compilation time is long, resulting in low compilation efficiency. Moreover, when multiple projects, multiple tasks, and multiple businesses are running in parallel, with limited server resources, it is necessary to maximize the use of existing server resources to meet different types of compilation requirements while ensuring efficiency. In the prior art, the allocation method of directly distributing tasks without a scheduling strategy often results in a slower compilation speed, which makes it impossible to efficiently utilize server resources, resulting in longer compilation time and waiting time, and lower compilation efficiency.
[0003] At present, there are technical solutions for matching scheduling or splitting according to preset priorities, such as patent publication number: CN118349327A discloses a server scheduling method, system and computer equipment. The method includes: according to preset conditions, a plurality of servers of the first type and the second type are graded respectively, and each server of the same type and the same grade belongs to the same resource pool; if a construction task to be scheduled is received, a resource pool is allocated according to the task grade of the construction task, and a target server in the resource pool that matches the task grade for executing the construction task is allocated. And patent publication number: CN116881003A discloses a resource allocation method, device, service equipment and storage medium, the method includes: according to the dependency relationship of tasks in the business line, the task is split into multiple subtasks. Determine whether the task has a resource pool-limited attribute. If the task has a resource pool-limited attribute, the attribute information and priority of each subtask are added to the database and each subtask is pushed into the memory queue of the resource pool. Determine whether the resource pool to which the task belongs is full.
[0004] However, the traditional classification and splitting of different types of servers is still at the stage of simple logical processing, and there is a lack of a model for hierarchical scheduling analysis of different types of servers. When multiple projects, multiple tasks, and multiple businesses are running in parallel, it is often inefficient and prone to matching, scheduling, or splitting errors. For this reason, we propose a server scheduling method and system. Summary of the invention
[0005] In view of the above problems existing in the existing server task scheduling process, the present invention is proposed.
[0006] One object of the present invention is to provide a server scheduling method, which constructs a hierarchical scheduling analysis model for multiple types of servers, and autonomously and intelligently divides different types of servers into levels or splits them into sub-tasks based on multi-task autonomous learning to meet different types of compilation requirements. When processing a large number of concurrent build tasks, matching resource pools and suitable servers can be quickly allocated according to server levels, thereby maximizing the use of server resources, improving server scheduling efficiency, and achieving efficient allocation of server resources.
[0007] In order to solve the above technical problems, the present invention provides the following technical solutions:
[0008] In a first aspect, the present invention provides a server scheduling method, comprising: obtaining and processing server service data, obtaining task data in the server service, and processing the task data to generate processing data according to relationship information of the task data;
[0009] Constructing a hierarchical scheduling analysis model for the server, responding to the task data and processing data in the server business, and based on the compilation attributes of the server resource pool, performing hierarchical analysis and priority index calculation on the task data and processing data and generating analysis results, and performing hierarchical division processing on the task data according to the analysis results and forming task division data;
[0010] In response to the task division data and the analysis results, the server is multi-tasked and scheduled, the processed data is multi-tasked and processed to generate matching scheduling information, and the processed data is matched accordingly according to the matching scheduling information and then multi-tasked and scheduled.
[0011] As a preferred solution of the present invention, the task data is processed, including: presetting relationship information matching the task data of the same type, and associating and grouping the task data of the same type according to the matching relationship information to form the task data of the same type;
[0012] Responding to the task data of the same type and performing hierarchical processing according to the analysis result of the hierarchical scheduling analysis model of the server to form multi-level task data of the same type;
[0013] Splitting the tasks of the same level in the multi-level task data of the same type, specifically splitting the tasks of the same level into multiple subtasks according to the compilation attribute of the server resource pool;
[0014] According to the preset priorities compiled by the server resource pool, multiple subtasks are imported into the memory processing queue in the server resource pool.
[0015] As a preferred solution of the present invention, the processing of the task data further comprises:
[0016] Determine the cache processing status and resource pool capacity of the server resource pool. Specifically, when the server resource pool is cached, if the resource pool capacity is full, find the next resource pool that satisfies the processing of multiple subtasks according to the resource pool compilation attribute and replace the current resource pool. Otherwise, if it is not full, match the resource pool for each subtask according to the resource pool compilation attribute to perform the same-level scheduling and execution;
[0017] Determine the priorities of multiple subtasks in the current memory processing queue, specifically match priority indicators of multiple subtasks of the same level task according to the hierarchical scheduling analysis model of the server, calculate the priority indicators and generate priority analysis results of multiple subtasks in the same level task, sort the priorities of multiple subtasks according to the priority analysis results of the multiple subtasks, and perform same-level scheduling and execution in sequence after sorting.
[0018] As a preferred solution of the present invention, wherein: the server resource pool compilation attribute is a resource pool identifier, and when the task data is processed to generate processing data, it also includes judging whether the task data has a resource pool identifier. If the resource pool identifier is marked, the task data is matched as the resource pool compilation attribute; otherwise, the task data is not matched as the resource pool compilation attribute, and the next resource pool compilation attribute is matched.
[0019] As a preferred solution of the present invention, the priority indicators include: first-come-first-served indicator, shortest job priority indicator, priority scheduling indicator, round-robin scheduling indicator, high response ratio priority scheduling indicator, multi-level feedback queue scheduling indicator and multi-level queue scheduling indicator.
[0020] As a preferred solution of the present invention, wherein: the first-come-first-served indicator allocates CPU time in the order in which the processes arrive, and the processes that arrive first are executed first;
[0021] The shortest job priority indicator is to prioritize the process with the shortest expected execution time;
[0022] The priority scheduling indicator is that each process has a priority, and the process with the highest priority gets the CPU execution time, wherein the dynamic priority is adjusted according to the waiting time and service time of the process;
[0023] The round-robin scheduling indicator is that each process gets CPU time in turn according to the time slice, and after the time slice is used up, the process is put back to the end of the queue and waits for the next round of scheduling;
[0024] The high response ratio priority scheduling indicator is a non-preemptive scheduling algorithm that takes into account both the process waiting time and the execution time, and determines the next process to be scheduled by calculating the response ratio of each process;
[0025] The multi-level feedback queue scheduling indicator is to set multiple ready queues, each queue adopts a different scheduling strategy, and when a new process arrives, it first enters the first-level queue. If it is not completed within the time slice, it enters the next-level queue, and the priority of the process is dynamically adjusted;
[0026] The multi-level queue scheduling indicator is to set multiple queues according to the process type in the system, insert the process into the queue after successful creation, and adopt fixed priority or time slice division between the queues.
[0027] As a preferred solution of the present invention, the priority index is calculated and the priority analysis results of multiple subtasks in the same level task are generated, wherein the priority index is calculated using the following formula:
[0028]
[0029] Among them, X n Calculate the value for the nth priority indicator, is the nth priority index value of the ith priority index; W n is the weight of the nth priority indicator, which is determined by converting the confidence index; R n S is the confidence index of the nth priority indicator data; N is the total number of calculated items of the nth priority indicator data.
[0030] As a preferred solution of the present invention, the hierarchical scheduling analysis model of the server performs hierarchical analysis, specifically according to the task data and processing data to be graded and evaluated, and based on the server status evaluation standard cloud, obtains the status classification of each indicator monitoring data in the data to be graded and evaluated at different time granularities, determines the classification result of the task data according to the status classification of each indicator monitoring data, and forms task data of the same type and level in response to the classification result; and uses the following formula to perform the status classification evaluation of each indicator monitoring data, as follows:
[0031]
[0032] in, is the state classification evaluation value of the kth task data, α is a preset parameter and is used for the classification value to be distributed in the interval (0-1), The kth task data under the i-th priority index for the task data to be graded and evaluated, is the kth task data of the task data to be graded and evaluated under the jth diagnostic status evaluation standard cloud, and K is the total number of calculation items of the kth task data.
[0033] As a preferred solution of the present invention, the multi-task scheduling is specifically performed by scheduling multi-level task data of the same type, building a multi-task scheduling model by evaluating the similarity between the same type of different-level information in the task data and the processing task habits, and completing the multi-task scheduling according to the analysis results of the multi-task scheduling model. The multi-task scheduling model is specifically as follows:
[0034]
[0035] Among them, CBT a,b represents the trust between task data a and b at different levels, eff a,b Indicates the influence between task data a and b at different levels, a,b Represents the vector distance value between task data a and b at different levels, and is the similarity between task data a and b at different levels, diff a,b represents the score difference between task data a and b at different levels, and is the scoring habit of task data a and b at different levels; X a is the a-level task data, X b For b-level task data; |X a ∩X b | represents the data source involved in tasks a and b at different levels; xu represents the u-th data source, X a,b Represents the collection of data sources of level a task data and level b task data; q a,xu ,q b,xu They respectively represent the score value of the current a-level task data for the u-th data source, and the score value of the current b-level task data for the u-th data source.
[0036] In a second aspect, the present invention provides a system based on the above server scheduling method, comprising:
[0037] A server business data acquisition processing module is used to acquire and process server business data, acquire task data in the server business, and process the task data to generate processing data according to the relationship information of the task data. The server business data acquisition processing module includes an acquisition unit and a processing unit;
[0038] A model building module, which builds a hierarchical scheduling analysis model of the server, responds to the task data and processing data in the server business, and based on the server resource pool compilation attribute, performs hierarchical analysis and priority index calculation on the task data and processing data and generates analysis results, and at the same time performs hierarchical division processing on the task data according to the analysis results and forms task division data, wherein the model building module includes a hierarchical analysis unit, a priority index analysis unit, an analysis result generation unit, and a division unit;
[0039] A multi-task scheduling module is used to perform multi-task scheduling of the server in response to the task division data and analysis results, generate matching scheduling information after multi-task execution processing of the processed data, and perform multi-task scheduling after corresponding matching of the processed data according to the matching scheduling information. The multi-task scheduling module includes a matching unit and a multi-task scheduling unit.
[0040] Beneficial effects of the present invention:
[0041] The present invention autonomously and intelligently divides different types of servers into levels or splits them into sub-tasks based on multi-task autonomous learning to meet different types of compilation requirements. Furthermore, when processing a large number of concurrent build tasks, matching resource pools and suitable servers can be quickly allocated according to server levels, thereby maximizing the use of server resources, improving server scheduling efficiency, and achieving efficient allocation of server resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for describing the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative labor. Among them:
[0043] Figure 1 is a flow chart of the method of the present invention;
[0044] Figure 2 A flowchart for processing task data in the method of the present invention;
[0045] Figure 3 It is a schematic diagram of the modular structure of the system of the present invention;
[0046] Figure 4 A flow chart of determining the cache processing status of a server resource pool and the capacity of a resource pool in the method of the present invention;
[0047] Figure 5 The present invention is a flowchart for determining the priorities of multiple subtasks in the current memory processing queue in the method of the present invention. DETAILED DESCRIPTION
[0048] In order to make the purpose, technical solution and advantages of the embodiment of the present invention clearer, the technical solution of the embodiment of the present invention will be clearly and completely described below in conjunction with the drawings of the embodiment of the present invention. Obviously, the described embodiment is a part of the embodiment of the present invention, not all of the embodiments. Based on the described embodiment of the present invention, all other embodiments obtained by ordinary technicians in this field belong to the scope of protection of the present invention.
[0049] Reference Figure 1-Figure 5 , is an embodiment of the present invention, which provides a server scheduling method and system thereof, wherein the technical solution of this embodiment is mainly: by constructing a hierarchical scheduling analysis model for multiple types of servers, and autonomously and intelligently dividing different types of servers into levels or splitting subtasks based on multi-task autonomous learning, different types of compilation requirements can be met, and then when processing a large number of concurrent build tasks, matching resource pools and suitable servers can be quickly allocated according to server levels, so as to maximize the use of server resources, improve server scheduling efficiency, and realize efficient allocation of server resources; compared with traditional allocation scheduling, the method of this embodiment has a good effect when multiple projects, multiple tasks and multiple businesses are in parallel, such as Figure 1 As shown, the details are as follows:
[0050] Obtaining and processing server business data, obtaining task data in the server business, and processing the task data to generate processing data based on the relationship information of the task data;
[0051] Construct a hierarchical scheduling analysis model for servers, respond to task data and processing data in server services, and perform hierarchical analysis and priority index calculation on task data and processing data based on the compilation attributes of server resource pools to generate analysis results. At the same time, hierarchical division and processing of task data are performed according to the analysis results to form task division data.
[0052] In response to the task division data and the analysis results, the server is multi-tasked and scheduled. After the processed data is multi-tasked and processed, matching scheduling information is generated. According to the matching scheduling information, the processed data is matched accordingly and then multi-tasked and scheduled.
[0053] In one embodiment, the processing of the task data specifically includes: presetting relationship information matching the task data of the same type, and associating and grouping the task data of the same type according to the matching relationship information to form the task data of the same type;
[0054] Respond to the same type of task data and perform hierarchical processing according to the analysis results of the hierarchical scheduling analysis model of the server to form multi-level task data of the same type;
[0055] Splitting the same-level tasks in the same-type multi-level task data, specifically splitting the same-level tasks into multiple subtasks according to the compilation attributes of the server resource pool;
[0056] According to the preset priorities compiled by the server resource pool, multiple subtasks are imported into the memory processing queue in the server resource pool.
[0057] In one embodiment, if Figure 4 and Figure 5 As shown, processing the task data also includes:
[0058] Determine the server resource pool cache processing status and resource pool capacity. Specifically, when the server resource pool cache is processing, if the resource pool capacity is full, find the next resource pool that can handle multiple subtasks according to the resource pool compilation attributes and replace the current resource pool. Otherwise, match the resource pool for each subtask according to the resource pool compilation attributes for peer scheduling and execution.
[0059] At the same time, the priorities of multiple subtasks in the current memory processing queue are determined. Specifically, priority indicators of multiple subtasks of the same level task are matched according to the server's hierarchical scheduling analysis model, and priority indicators are calculated and priority analysis results of multiple subtasks in the same level task are generated. According to the priority analysis results of multiple subtasks, the priorities of multiple subtasks are sorted, and after sorting, the same level scheduling and execution are performed in sequence.
[0060] In one embodiment, the server resource pool compilation attribute is preferably a resource pool identifier. When processing the task data to generate processing data, it also includes judging whether the task data has a resource pool identifier. If the resource pool identifier is marked, the task data is matched as the resource pool compilation attribute; otherwise, the task data is not matched as the resource pool compilation attribute, and the next resource pool compilation attribute is matched.
[0061] In one embodiment, specific priority indicators include: first-come-first-served indicator, shortest job priority indicator, priority scheduling indicator, round-robin scheduling indicator, high response ratio priority scheduling indicator, multi-level feedback queue scheduling indicator and multi-level queue scheduling indicator.
[0062] In addition, the first-come, first-served metric of this implementation allocates CPU time in the order in which the processes arrive, and the first-arrived processes are executed first;
[0063] The shortest job first metric is to prioritize the process with the shortest estimated execution time;
[0064] The priority scheduling indicator is that each process has a priority, and the process with the highest priority gets the CPU execution time, where the dynamic priority is adjusted according to the waiting time and service time of the process;
[0065] The round-robin scheduling indicator is that each process gets CPU time in turn according to the time slice. After the time slice is used up, the process is put back to the end of the queue and waits for the next round of scheduling;
[0066] The high response ratio priority scheduling indicator is a non-preemptive scheduling algorithm that takes into account both the waiting time and execution time of the process. It determines the next process to be scheduled by calculating the response ratio of each process.
[0067] The multi-level feedback queue scheduling indicator is to set up multiple ready queues, each queue adopts a different scheduling strategy. When a new process arrives, it enters the first-level queue first. If it is not completed within the time slice, it enters the next-level queue, and the priority of the process is dynamically adjusted;
[0068] The multi-level queue scheduling indicator is to set up multiple queues according to the process type in the system. After the process is successfully created, it is inserted into the queue, and fixed priorities or time slices are used to divide the queues.
[0069] In one embodiment, it is necessary to emphasize that the priority index calculation is performed and the priority analysis results of multiple subtasks in the same level task are generated, wherein the priority index calculation is performed using the following formula, as follows:
[0070]
[0071] Among them, X n Calculate the value for the nth priority indicator, is the nth priority index value of the ith priority index; W n is the weight of the nth priority indicator, which is determined by converting the confidence index; R n S is the confidence index of the nth priority indicator data; N is the total number of calculated items of the nth priority indicator data.
[0072] In one embodiment, the hierarchical scheduling analysis model of the server is further described to perform hierarchical analysis, specifically according to the task data and processing data to be graded and evaluated, and based on the server status evaluation standard cloud, the status classification of each indicator monitoring data in the data to be graded and evaluated at different time granularities is obtained, and the classification result of the task data is determined according to the status classification of each indicator monitoring data, and task data of the same type and level are formed in response to the classification result; the following formula is used to perform the status classification evaluation of each indicator monitoring data, as follows:
[0073]
[0074] in, is the state classification evaluation value of the kth task data, α is a preset parameter and is used for the classification value to be distributed in the interval (0-1), The kth task data under the i-th priority index for the task data to be graded and evaluated, is the kth task data of the task data to be graded and evaluated under the jth diagnostic status evaluation standard cloud, and K is the total number of calculation items of the kth task data.
[0075] In one embodiment, multi-task scheduling is specifically performed by scheduling multi-level task data of the same type, building a multi-task scheduling model by evaluating similarity between information of the same type and different levels in the task data and processing task habits, and completing multi-task scheduling according to the analysis results of the multi-task scheduling model. The multi-task scheduling model is specifically as follows:
[0076]
[0077] Among them, CBT a,b represents the trust between task data a and b at different levels, eff a,b Indicates the influence between task data a and b at different levels, a,b Represents the vector distance value between task data a and b at different levels, and is the similarity between task data a and b at different levels, diff a,b represents the score difference between task data a and b at different levels, and is the scoring habit of task data a and b at different levels; X a is the a-level task data, X b For b-level task data; |X a ∩X b | represents the data source involved in tasks a and b at different levels; xu represents the u-th data source, X a,b Represents the collection of data sources of level a task data and level b task data; q a,xu ,q b,xu They respectively represent the score value of the current a-level task data for the u-th data source, and the score value of the current b-level task data for the u-th data source.
[0078] like Figure 3 As shown, this embodiment further provides a server scheduling method system based on the above server scheduling method, including:
[0079] A server business data acquisition processing module is used to acquire and process server business data, acquire task data in the server business, and process the task data to generate processing data according to the relationship information of the task data. The server business data acquisition processing module includes an acquisition unit and a processing unit;
[0080] A model building module, which builds a hierarchical scheduling analysis model of the server, responds to the task data and processing data in the server business, and based on the compilation attributes of the server resource pool, performs hierarchical analysis and priority index calculation on the task data and processing data and generates analysis results, and at the same time, performs hierarchical division processing on the task data according to the analysis results and forms task division data. The model building module includes a hierarchical analysis unit, a priority index analysis unit, an analysis result generation unit, and a division unit;
[0081] The multi-task scheduling module is used to respond to the task division data and the analysis results to perform multi-task scheduling of the server, generate matching scheduling information after multi-task execution processing of the processed data, and perform multi-task scheduling after corresponding matching of the processed data according to the matching scheduling information. The multi-task scheduling module includes a matching unit and a multi-task scheduling unit.
[0082] In summary, it can be seen that this embodiment can autonomously and intelligently classify or split sub-tasks of different types of servers based on multi-task autonomous learning to meet different types of compilation requirements. When processing a large number of concurrent build tasks, matching resource pools and suitable servers can be quickly allocated according to server levels, thereby maximizing the use of server resources, improving server scheduling efficiency, and achieving efficient allocation of server resources.
[0083] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
[0084] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples, unless they are contradictory.
[0085] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0086] Any process or method description in the flow chart or otherwise described herein can be understood to represent a module, fragment or portion of a code including one or more executable instructions for implementing the steps of a specific logical function or process. And the scope of the preferred embodiment of the present application includes other implementations, in which the functions may not be performed in the order shown or discussed, including in a substantially simultaneous manner or in a reverse order according to the functions involved.
[0087] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, which can be embodied in any computer-readable medium for use by an instruction execution system, apparatus or device (such as a computer-based system, a system including a processor or other system that can fetch instructions from an instruction execution system, apparatus or device and execute instructions), or used in combination with these instruction execution systems, apparatuses or devices.
[0088] It should be understood that the various parts of the present application can be implemented with hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented with software or firmware stored in a memory and executed by a suitable instruction execution system. All or part of the steps of the above embodiment method can be completed by instructing the relevant hardware through a program, which can be stored in a computer-readable storage medium, and when the program is executed, it includes one of the steps of the method embodiment or a combination thereof.
[0089] In addition, each functional unit in each embodiment of the present application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into one module. The above-mentioned integrated module can be implemented in the form of hardware or in the form of a software functional module. If the above-mentioned integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium can be a read-only memory, a disk or an optical disk, etc.
[0090] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of various changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A server scheduling method, characterized in that: include: Acquire and process server business data, acquire task data in the server business, and process the task data to generate processing data according to relationship information of the task data; Constructing a hierarchical scheduling analysis model for the server, responding to the task data and processing data in the server business, and based on the compilation attributes of the server resource pool, performing hierarchical analysis and priority index calculation on the task data and processing data and generating analysis results, and performing hierarchical division processing on the task data according to the analysis results and forming task division data; In response to the task division data and the analysis results, the server is multi-tasked and scheduled, the processed data is multi-tasked and processed to generate matching scheduling information, and the processed data is matched accordingly according to the matching scheduling information and then multi-tasked and scheduled.
2. The server scheduling method according to claim 1, characterized in that: Processing the task data includes: presetting relationship information that matches the task data of the same type, and associating and grouping the task data of the same type according to the matched relationship information to form the task data of the same type; Responding to the task data of the same type and performing hierarchical processing according to the analysis result of the hierarchical scheduling analysis model of the server to form multi-level task data of the same type; Splitting the tasks of the same level in the multi-level task data of the same type, specifically splitting the tasks of the same level into multiple subtasks according to the compilation attribute of the server resource pool; According to the preset priorities compiled by the server resource pool, multiple subtasks are imported into the memory processing queue in the server resource pool.
3. The server scheduling method according to claim 2, characterized in that: Processing the task data further includes: Determine the cache processing status and resource pool capacity of the server resource pool. Specifically, when the server resource pool is cached, if the resource pool capacity is full, find the next resource pool that satisfies the processing of multiple subtasks according to the resource pool compilation attribute and replace the current resource pool. Otherwise, if it is not full, match the resource pool for each subtask according to the resource pool compilation attribute to perform the same-level scheduling and execution; Determine the priorities of multiple subtasks in the current memory processing queue, specifically match priority indicators of multiple subtasks of the same level task according to the hierarchical scheduling analysis model of the server, calculate the priority indicators and generate priority analysis results of multiple subtasks in the same level task, sort the priorities of multiple subtasks according to the priority analysis results of the multiple subtasks, and perform same-level scheduling and execution in sequence after sorting.
4. The server scheduling method according to claim 1, characterized in that: The server resource pool compilation attribute is a resource pool identifier. When processing the task data to generate processing data, it also includes judging whether the task data has a resource pool identifier. If the resource pool identifier is marked, the task data is matched as the resource pool compilation attribute; otherwise, the task data is not matched as the resource pool compilation attribute, and the next resource pool compilation attribute is matched.
5. The server scheduling method according to claim 3, characterized in that: The priority indicators include: first-come-first-served indicator, shortest job priority indicator, priority scheduling indicator, round-robin scheduling indicator, high response ratio priority scheduling indicator, multi-level feedback queue scheduling indicator and multi-level queue scheduling indicator.
6. The server scheduling method according to claim 5, characterized in that: The first-come-first-served indicator allocates CPU time in the order in which the processes arrive, and the first-arrived processes are executed first; The shortest job priority indicator is to prioritize the process with the shortest expected execution time; The priority scheduling indicator is that each process has a priority, and the process with the highest priority gets the CPU execution time, wherein the dynamic priority is adjusted according to the waiting time and service time of the process; The round-robin scheduling indicator is that each process gets CPU time in turn according to the time slice, and after the time slice is used up, the process is put back to the end of the queue and waits for the next round of scheduling; The high response ratio priority scheduling indicator is a non-preemptive scheduling algorithm that takes into account both the process waiting time and the execution time, and determines the next process to be scheduled by calculating the response ratio of each process; The multi-level feedback queue scheduling indicator is to set multiple ready queues, each queue adopts a different scheduling strategy, and when a new process arrives, it first enters the first-level queue. If it is not completed within the time slice, it enters the next-level queue, and the priority of the process is dynamically adjusted; The multi-level queue scheduling indicator is to set multiple queues according to the process type in the system, insert the process into the queue after successful creation, and adopt fixed priority or time slice division between the queues.
7. The server scheduling method according to claim 5, characterized in that: Calculate the priority index and generate the priority analysis results of multiple subtasks in the same level task. The priority index calculation is calculated using the following formula: Among them, X n Calculate the value for the nth priority indicator, is the nth priority index value of the ith priority index; W n is the weight of the nth priority indicator, which is determined by converting the confidence index; R n S is the confidence index of the nth priority indicator data; N is the total number of calculated items of the nth priority indicator data.
8. The server scheduling method according to claim 1, characterized in that: The hierarchical scheduling analysis model of the server performs hierarchical analysis, specifically, according to the task data and processing data to be graded and evaluated, and based on the server status evaluation standard cloud, obtains the status classification of each indicator monitoring data in the data to be graded and evaluated at different time granularities, determines the classification result of the task data according to the status classification of each indicator monitoring data, and forms task data of the same type and level in response to the classification result; the following formula is used to perform the status classification evaluation of each indicator monitoring data, as follows: in, is the state classification evaluation value of the kth task data, α is a preset parameter and is used for the classification value to be distributed in the interval (0-1), The kth task data under the i-th priority index for the task data to be graded and evaluated, is the kth task data of the task data to be graded and evaluated under the jth diagnostic status evaluation standard cloud, and K is the total number of calculation items of the kth task data.
9. The server scheduling method according to claim 1, characterized in that: The multi-task scheduling is specifically performed by scheduling multi-level task data of the same type, building a multi-task scheduling model by evaluating the similarity between the same type of different-level information in the task data and the processing task habits, and completing the multi-task scheduling according to the analysis results of the multi-task scheduling model. The multi-task scheduling model is specifically as follows: Among them, CBT a,b represents the trust between task data a and b at different levels, eff a,b Indicates the influence between task data a and b at different levels, a,b Represents the vector distance value between task data a and b at different levels, and is the similarity between task data a and b at different levels, diff a,b represents the score difference between task data a and b at different levels, and is the scoring habit of task data a and b at different levels; X a is the a-level task data, X b For b-level task data; |X a ∩X b | represents the data source involved in tasks a and b at different levels; xu represents the u-th data source, X a,b Represents the collection of data sources of level a task data and level b task data; q a,xu ,q b,xu They respectively represent the score value of the current a-level task data for the u-th data source, and the score value of the current b-level task data for the u-th data source.
10. A system applied to the server scheduling method according to claim 1, characterized in that: include: A server business data acquisition processing module is used to acquire and process server business data, acquire task data in the server business, and process the task data to generate processing data according to the relationship information of the task data. The server business data acquisition processing module includes an acquisition unit and a processing unit; A model building module, which builds a hierarchical scheduling analysis model of the server, responds to the task data and processing data in the server business, and based on the server resource pool compilation attribute, performs hierarchical analysis and priority index calculation on the task data and processing data and generates analysis results, and at the same time performs hierarchical division processing on the task data according to the analysis results and forms task division data, wherein the model building module includes a hierarchical analysis unit, a priority index analysis unit, an analysis result generation unit, and a division unit; A multi-task scheduling module is used to perform multi-task scheduling of the server in response to the task division data and analysis results, generate matching scheduling information after multi-task execution processing of the processed data, and perform multi-task scheduling after corresponding matching of the processed data according to the matching scheduling information. The multi-task scheduling module includes a matching unit and a multi-task scheduling unit.
Citation Information
Patent Citations
Resource allocation method and device, service equipment and storage medium
CN116881003A
Server scheduling method and system and computer equipment
CN118349327A
