Server load determination method and device, equipment and medium
By determining the benchmark server and non -base standard server in the server cluster, calculating the computing power weight weight of each server and predicting the use data of the computing power, solving the problem of insufficient load prediction caused by the differences in the processing capacity of each server cluster, and realized the accuracy of the cluster load. Balance of prediction and processing ability.
Patent Information
- Application Number
- CN202411539689.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2025-01-28
AI Technical Summary
In a server cluster, the processing power and efficiency of each server processor are different, resulting in insufficient load prediction based solely on the current load situation, resulting in poor overall processing power.
By determining the benchmark server and non -base standard server, use data to calculate the computing power weight of each server based on the historical computing power of the benchmark server, and predict the computing power of the computing power during the predicted period, so as to determine the load of each server.
The accurate prediction of the server cluster load is achieved, the overall business processing capacity of the cluster is balanced, and the overall processing capacity caused by the difference in processing capacity is not enough.
Smart Images

Figure CN119376947A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of server clusters, and in particular to a method, device, equipment and medium for determining server load. Background Art
[0002] In a server cluster, there are multiple servers with different processor types, and the application types corresponding to the multiple servers may also be different to a certain extent.
[0003] At present, in order to improve the processing power and utilization efficiency of servers in a server cluster, and to reasonably allocate services to each server, each server is analyzed based on its own load at the current moment, the amount of resources requested by the application, or the current load of the server.
[0004] However, in a server cluster, the data processing capabilities and processing efficiencies of the processors of each server may be different. Therefore, if only the above method is used to predict the load of the server in a certain period of time in the future, the overall processing capacity of the server cluster will be poor.
[0005] Therefore, it is urgent to propose a new method to solve the above problems. Summary of the invention
[0006] The present invention provides a method, device, equipment and medium for determining server load, which can realize early prediction of server load in a server cluster while taking into account the computing power of each server itself, thereby balancing the overall business processing capacity of the server cluster.
[0007] According to one aspect of the present invention, a method for determining a server load is provided, which is applied to a cluster controller for managing a server cluster, and the method comprises:
[0008] Determine a reference server and a non-reference server in the server cluster, wherein the non-reference server is a server other than the reference server in the server cluster;
[0009] Determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server in the historical target period, and determine the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period, wherein the computing power weight of the benchmark server is the standard computing power occupancy value of the benchmark server when running the target application, and the computing power weight of the non-benchmark server is used to indicate the computing power occupancy gap between the non-benchmark server and the benchmark server when running the target application;
[0010] Based on the computing power usage data of the benchmark server in the historical target period, respectively predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted;
[0011] The load of the benchmark server in the target period to be predicted is determined based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and the load of the non-benchmark server in the target period to be predicted is determined based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
[0012] According to another aspect of the present invention, a device for determining a server load is provided, the device comprising:
[0013] A determination module, used to determine a reference server and a non-reference server in the server cluster, wherein the non-reference server is a server other than the reference server in the server cluster;
[0014] A weight calculation module, used to determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server in the historical target period, and determine the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period, wherein the computing power weight of the benchmark server is the standard computing power occupancy value of the benchmark server when running the target application, and the computing power weight of the non-benchmark server is used to indicate the computing power occupancy gap between the non-benchmark server and the benchmark server when running the target application;
[0015] A prediction module, used to predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted respectively according to the computing power usage data of the benchmark server in the historical target period;
[0016] The load calculation module is used to determine the load of the benchmark server in the target period to be predicted based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and to determine the load of the non-benchmark server in the target period to be predicted based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
[0017] According to another aspect of the present invention, there is provided an electronic device, the electronic device comprising:
[0018] at least one processor; and
[0019] a memory communicatively connected to the at least one processor; wherein,
[0020] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the method for determining the server load described in any embodiment of the present invention.
[0021] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method for determining the server load described in any embodiment of the present invention when executed.
[0022] The server load determination method provided in an embodiment of the present invention determines a benchmark server and a non-benchmark server in a server cluster; determines a computing power weight of the benchmark server according to computing power usage data of the benchmark server in a historical target period, and determines a computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period; predicts computing power usage data of the benchmark server and the non-benchmark server in a target period to be predicted respectively according to the computing power usage data of the benchmark server in the historical target period; determines the load of the benchmark server in the target period to be predicted according to the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and determines the load of the non-benchmark server in the target period to be predicted according to the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server. On the one hand, a benchmark server is determined from the server cluster, and the computing power usage data of the benchmark server in the historical target period is used as a benchmark to determine the computing power weight of the benchmark server and the computing power weight of the non-benchmark server, respectively, so as to achieve the determination of the computing power gap between the benchmark server and the non-benchmark server when processing applications based on the actual computing power used by the benchmark server and the actual computing power used by the non-benchmark server, and present the computing power gap in the form of computing power weight, which can provide data support for subsequent calculations while also making the computing power gap between the benchmark server and the non-benchmark server when processing applications more intuitively presented. On the other hand, the prediction of the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted is achieved. Compared with the use of the prior art to predict the server load based on the load condition of each server itself at the current moment, the amount of resources requested by the application, or the load condition of the current server, the computing power usage data of each server predicted by this method is more accurate, and the computing power usage data of the server in the target period to be predicted can be predicted earlier. Finally, we use the computing power data of the server to predict the possible load conditions of non-benchmark servers and benchmark servers during the target period to be predicted, solving the problem of poor overall processing capacity of the server cluster due to differences in data processing capabilities and processing efficiency between each server when only using the current load conditions of each server, the amount of resources requested by the application, or the current server load conditions to perform real-time analysis on each server. While realizing the early prediction of the server load in the server cluster, we can also take the computing power of each server into account, balancing the overall business processing capacity of the server cluster.
[0023] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of 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 work.
[0025] Figure 1 A flow chart of a method for determining server load provided by an embodiment of the present invention;
[0026] Figure 2 A flowchart of another method for determining server load provided by an embodiment of the present invention;
[0027] Figure 3 An example diagram of the computing power usage results of a server provided in an embodiment of the present invention;
[0028] Figure 4 A schematic diagram of the structure of a device for determining server load provided by an embodiment of the present invention;
[0029] Figure 5 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0030] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0031] It should be noted that the terms "benchmark", "non-benchmark", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0032] Figure 1A flow chart of a method for determining server load provided in an embodiment of the present invention. This embodiment can be applied to predict the load of each server in a period to be predicted based on the computing power gap between different servers. The method can be executed by a server load determination device, which can be implemented in the form of hardware and / or software, and can be configured in an electronic device. In this embodiment, the electronic device can be a cluster controller or cluster manager that manages a server cluster. Figure 1 As shown, the method includes:
[0033] S101: Determine a reference server and a non-reference server in a server cluster.
[0034] The non-reference servers are other servers in the server cluster except the reference server.
[0035] Specifically, there are a large number of servers in a server cluster, and each server is not necessarily exactly the same. For example, in a server cluster, there may be servers that have been used for several years, and there may also be servers that have just been used. The different types and ages of servers, and the different processing capabilities of the processors in the servers will affect the server's ability to process resources. Therefore, based on the type, age, or model of the processor in the server, a server can be selected from the server cluster as a reference server, and other servers can be used as non-reference servers.
[0036] Exemplarily, in one implementation, a server can be randomly selected directly from the server cluster as a reference server. In another implementation, each server in the server cluster can be classified according to the above conditions, such as the model of the processor in the server. All servers in a classified group are servers of a certain processor model. Therefore, a group of servers of a certain processor model corresponding to the group with the largest number of servers in the group can be randomly selected as the reference server. For another example, if the model of the processor in the server is not used as a condition, the server corresponding to the group with the largest number of servers in the classified group can still be selected as the candidate reference server, and a server can be selected from the candidate reference servers as the reference server.
[0037] S102. Determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server in the historical target period, and determine the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period.
[0038] The computing power weight of the benchmark server is the standard computing power occupied by the benchmark server when running the target application, and the computing power weight of the non-benchmark server is used to indicate the computing power occupation gap between the non-benchmark server and the benchmark server when running the target application. In this embodiment, the historical target period is a certain period of time on a certain day in the historical process. For example, the current time is 10:00:00 on October 29, 2024, and the historical target period can be 9:30:00-10:30:00 on October 26, 2024.
[0039] Specifically, after selecting the reference server, the computing power usage data of the reference server in the historical target period can be obtained, and the computing power usage data of the non-reference server in the historical target period can be obtained. Among them, in order to ensure the accuracy of the subsequent calculation of the weight, the computing power usage data obtained in the historical target period is the computing power usage data of the reference server and the non-reference server when they run the same application. For example, it can be the computing power usage data when both the reference server and the non-reference server run application A, or it can be the sum of the computing power usage data when both the reference server and the non-reference server run application A, application B and application C. Afterwards, according to the computing power usage data of the reference server in the historical target period, the computing power weight of the reference server can be determined. That is, since the reference server is a server used as a reference, therefore, in one implementation, the computing power usage data of the reference server in the historical target period is directly used as the benchmark computing power usage data, and the computing power weight of the reference server is determined to be 1 according to the benchmark computing power usage data and the computing power usage data of the reference server in the historical target period. In another implementation, the computing power weight of the reference server is directly set to 1.
[0040] Specifically, after respectively obtaining the computing power usage data of the benchmark server and the non-benchmark server in the historical target period, the computing power usage data of the benchmark server in the historical target period can be used as a benchmark to determine the difference between the computing power usage data actually used by the non-benchmark server in the historical target period and the computing power usage data of the benchmark server in the historical target period. That is, determine the computing power usage difference between the non-benchmark server and the benchmark server in the historical target period.
[0041] Exemplarily, the computing power weight may be calculated using calculation methods such as relative error, percentage error, difference ratio, and mean square error.
[0042] It is worth noting that when calculating the computing power weight above, a reference server is used as the reference. If the reference server is determined according to the model or type of the processor, the computing power weight of the reference server of the same model or type is 1. If the reference server is not determined according to the model or type of the processor, only the computing power weight of the reference server is 1.
[0043] In this embodiment, a benchmark server is determined from a server cluster, and the computing power usage data of the benchmark server in the historical target period is used as a benchmark to determine the computing power weight of the benchmark server and the computing power weight of the non-benchmark server, respectively. This realizes the determination of the computing power gap between the benchmark server and the non-benchmark server when processing applications based on the actual computing power used by the benchmark server and the actual computing power used by the non-benchmark server, and presents the computing power gap in the form of computing power weight. While providing data support for subsequent calculations, it can also make the computing power gap between the benchmark server and the non-benchmark server when processing applications more intuitively presented.
[0044] S103: Based on the computing power usage data of the benchmark server in the historical target period, respectively predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted.
[0045] The target period to be predicted may be the business peak period of the server cluster, such as 9:30:00-10:30:00.
[0046] Specifically, in actual practice, each server in a server cluster may run the same or different applications. Therefore, in order to predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted, it is first necessary to predict the applications that may be run in the target period to be predicted based on the applications that the benchmark server and the non-benchmark server ran in the historical target period. After that, the computing power usage data of the benchmark server in the historical target period can be directly predicted for the benchmark server and the non-benchmark server in the target period to be predicted.
[0047] For example, in one implementation, based on the applications run by the benchmark server and the non-benchmark server in the historical target period closest to the target period to be predicted, the applications run by the benchmark server and the non-benchmark server in the target period to be predicted are predicted. In another implementation, based on the applications run by the benchmark server and the non-benchmark server in multiple historical target periods, the applications run by the benchmark server and the non-benchmark server in the target period to be predicted are predicted in a manner such as averaging, union, or intersection.
[0048] In this embodiment, the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted is predicted. Compared with the prior art method of predicting the server load based on the load of each server at the current moment, the amount of resources requested by the application, or the load of the current server, the computing power usage data of each server predicted by this method is more accurate, and the computing power usage data of the server in the target period to be predicted can be predicted earlier.
[0049] S104. Determine the load of the benchmark server in the target period to be predicted based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and determine the load of the non-benchmark server in the target period to be predicted based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
[0050] Specifically, since the computing power usage data of the non-benchmark server in the target period to be predicted is actually the computing power usage data of the benchmark server in the historical target period when calculated, it is necessary to correct the computing power usage data of the non-benchmark server in the target period to be predicted based on the computing power weight of the non-benchmark server, so as to obtain the load of the non-benchmark server in the target period to be predicted.
[0051] Exemplarily, the following formula may be used to calculate the load of a non-reference server or a reference server in a target period to be predicted:
[0052] L=1-CPU p / CPU t ;
[0053] Where L is the load of the non-reference server or the reference server in the target period to be predicted. p It is the computing power usage data of the non-benchmark server or benchmark server in the target period to be predicted. CPU t is the total computing power data of the non-reference server or the reference server. In this embodiment, the total computing power data of the reference server is the processor rated computing power of the reference server multiplied by the computing power weight 1. The total computing power data of the non-reference server is the processor rated computing power of the non-reference server multiplied by the computing power weight of the non-reference server.
[0054] In this embodiment, the possible load conditions of non-reference servers and reference servers in the target period to be predicted are predicted using the computing power data of the server, which solves the problem that the overall processing capacity of the server cluster is poor due to the different data processing capabilities and processing efficiencies between each server when only using the load conditions of each server at the current moment, the amount of resources requested by the application, or the load conditions based on the current server to perform real-time analysis on each server. While realizing the early prediction of the server load in the server cluster, the computing power conditions of each server itself can also be taken into account, balancing the overall business processing capacity of the server cluster.
[0055] The server load determination method provided in an embodiment of the present invention determines a benchmark server and a non-benchmark server in a server cluster; determines a computing power weight of the benchmark server according to computing power usage data of the benchmark server in a historical target period, and determines a computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period; predicts computing power usage data of the benchmark server and the non-benchmark server in a target period to be predicted respectively according to the computing power usage data of the benchmark server in the historical target period; determines the load of the benchmark server in the target period to be predicted according to the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and determines the load of the non-benchmark server in the target period to be predicted according to the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server. On the one hand, a benchmark server is determined from the server cluster, and the computing power usage data of the benchmark server in the historical target period is used as a benchmark to determine the computing power weight of the benchmark server and the computing power weight of the non-benchmark server, respectively, so as to achieve the determination of the computing power gap between the benchmark server and the non-benchmark server when processing applications based on the actual computing power used by the benchmark server and the actual computing power used by the non-benchmark server, and present the computing power gap in the form of computing power weight, which can provide data support for subsequent calculations while also making the computing power gap between the benchmark server and the non-benchmark server when processing applications more intuitively presented. On the other hand, the prediction of the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted is achieved. Compared with the use of the prior art to predict the server load based on the load condition of each server itself at the current moment, the amount of resources requested by the application, or the load condition of the current server, the computing power usage data of each server predicted by this method is more accurate, and the computing power usage data of the server in the target period to be predicted can be predicted earlier. Finally, we use the computing power data of the server to predict the possible load conditions of non-benchmark servers and benchmark servers during the target period to be predicted, solving the problem of poor overall processing capacity of the server cluster due to differences in data processing capabilities and processing efficiency between each server when only using the current load conditions of each server, the amount of resources requested by the application, or the current server load conditions to perform real-time analysis on each server. While realizing the early prediction of the server load in the server cluster, we can also take the computing power of each server into account, balancing the overall business processing capacity of the server cluster.
[0056] Figure 2This is a flowchart of another method for determining server load provided by an embodiment of the present invention. Based on the above embodiment, this embodiment takes the target period as the daily business peak period, such as 9:30-10:30 on different days as the historical target period and the target period to be predicted, and describes each step in the above embodiment in detail. Figure 2 As shown, the method includes:
[0057] S201. Obtain the processor type of each server in the server cluster.
[0058] The processor type is identification information of the processor. In this embodiment, the processor type may be information such as the name and number of the processor, for example, Intel(R) Xeon(R) Gold 5120, AMD EPYC 7453 28 or Intel(R) Xeon(R) Gold 5218.
[0059] Specifically, the processor type of each server in the server cluster may be obtained according to information such as the number, manufacturer, and name of the server.
[0060] S202: The largest number of servers with the same processor type in the server cluster are used as reference servers, and the other servers in the server cluster except the reference server are used as non-reference servers.
[0061] Specifically, servers with the same processor type in the server cluster are grouped together to obtain multiple server groups with different processor types. Afterwards, the number of servers in each server group is determined, and a server in the server group with the largest number of servers is used as a reference server. Since the servers in this server group have the same processor type, the processors of all servers in this server group have the same processing capabilities.
[0062] For example, assuming that the processor type of server 1, server 4 and server 5 is Intel(R)Xeon(R)Gold 5120, the processor type of server 2 and server 7 is AMD EPYC 745328, and the processor type of server 3, server 6, server 8 and server 9 is Intel(R)Xeon(R)Gold 5218, then one of server 3, server 6, server 8 or server 9 can be used as a reference server, and the other servers except server 3 can be used as non-reference servers. Alternatively, the server with the processor type of Intel(R)Xeon(R)Gold 5218 can be used as a reference server.
[0063] S203: Obtain computing power usage data of the benchmark server running the target application during the historical target period.
[0064] Specifically, when there are multiple reference servers, since the reference servers have the same processor type, it can be assumed that the reference servers have the same business processing capabilities, and therefore, their computing power usage data for running the target application during the historical target period is the same. When there is only one reference server, since the processor type of some non-reference servers is the same as that of the reference server, the computing power usage data for running the target application during the historical target period can be directly used as the computing power usage data of the non-reference servers with the same processor type as the reference server running the target application during the historical target period.
[0065] S204: Set a preset benchmark computing power according to the computing power usage data of the benchmark server running the target application during the historical target period, and determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server running the target application during the historical target period and the preset benchmark computing power.
[0066] The reference server runs at least one target application. The preset reference computing power is a preset reference computing power. In this embodiment, the preset reference computing power is equal to the computing power usage data of the reference server running the target application in the historical target period. In this embodiment, the computing power weight of the reference server is 1.
[0067] Specifically, the computing power usage data of the benchmark server running the target application in the historical target period can be directly used as the preset benchmark computing power, and the computing power weight can be determined according to the following formula:
[0068] w=CPU PV / CPU h ;
[0069] Among them, w is the computing power weight, CPU PV To preset the benchmark computing power, CPU h is the computing power usage data of the target application during the historical target period. In this embodiment, w is the computing power weight of the benchmark server, CPU PV To preset the benchmark computing power, CPU h It is the computing power usage data of the benchmark server running the target application during the historical target period.
[0070] For example, it is assumed that the server cluster includes server 1 (Intel(R) Xeon(R) Gold5120), server 2 (AMD EPYC 7453 28) and server 3 (Intel(R) Xeon(R) Gold5218). Among them, at 9:30-10:30 on October 27, 2024, the applications running on server 1 are application A1, application A2, application B1 and application C1. The applications running on server 2 are application A3, application B2 and application C2. The applications running on server 3 are application A4, application B3 and application C3. And, according to the above method, server 3 is determined to be the reference server. At this time, the computing power usage data of the reference server running application A4 at 9:30-10:30 on October 27, 2024 is 1C, the computing power usage data of running application B3 is 1.5C, and the computing power usage data of running application C3 is 2C. At this time, application A4 can be used as the target application, and the computing power usage data 1C of running application A4 can be used as the preset benchmark computing power. According to the above formula, the computing power weight of the benchmark server is w=1C / 1C=1. The numbers after the application, such as 1 in application A1, 2 in application A2, 3 in application A3, 1 in application B1, 2 in application B2, etc., are different thread numbers of the same application. That is, there are only A, B, C, etc. applications, but when processing the same application on different servers, different numbers may be assigned due to different servers or different processing threads to distinguish the same application processed on different servers.
[0071] S205: Setting a preset benchmark computing power according to computing power usage data of the benchmark server running the target application during the historical target period.
[0072] Specifically, since the benchmark server is used as the benchmark, that is, the computing power capability of the benchmark server's processor when running the target application during the historical target period is used as the benchmark, the computing power usage data of the benchmark server running the target application during the historical target period can be directly used to set the preset benchmark computing power.
[0073] S206: Determine the computing power weight of the non-benchmark server according to the computing power usage data of the non-benchmark server in the historical target period and the preset benchmark computing power.
[0074] The non-reference server runs at least one target application.
[0075] Specifically, the computing power usage data of the non-benchmark server in the historical target period is obtained, and based on the preset benchmark computing power and the computing power usage data of the non-benchmark server in the historical target period, the computing power capacity gap between the processors of the non-benchmark server and the benchmark server when running the same application is calculated. For example, the computing power weight is determined according to the following formula:
[0076] w=CPUPV / CPU h ;
[0077] In this embodiment, w is the computing power weight of the non-benchmark server, CPU PV To preset the benchmark computing power, CPU h The computing power usage data of the non-benchmark server running the target application during the historical target period.
[0078] Exemplarily, following the above example, it is now necessary to determine the computing power weights of server 1 and server 2 respectively. Assuming that application A is still used as an example, the computing power usage data of non-benchmark server server 1 during the historical target period for running applications A1 and A2 are both 1.5C. The computing power usage data of non-benchmark server server 2 during the historical target period for running application A3 is 0.7C. And, the preset benchmark computing power is the computing power usage data of benchmark server server 3 during the historical target period for running application A4, which is 1C. At this point, according to the above formula, the computing power weight of server 1 is w=1C / 1.5C=0.67. The computing power weight of server 2 is w=1C / 0.7C=1.43.
[0079] In this embodiment, a server of a certain processor type is used as a reference server, and the computing power weights corresponding to the reference server and the non-reference server are calculated based on the computing power usage data of the reference server running the target application during the historical target period, and the computing power usage data of the non-reference server running the target application during the historical target period. The computing power weight represents the computing power usage gap between the non-reference server and the reference server, that is, based on the computing power weight, the computing power usage data of the non-reference server during the target period can be used as a benchmark to infer the computing power usage data of the non-reference server during the target period. Based on the calculated computing power weight, the computing power alignment of each server processor in the server cluster can also be achieved.
[0080] It is worth noting that S204 and S205-S206 are parallel steps, that is, S204 is a step for calculating the computing power weight of the reference server, and S205-S206 are steps for calculating the computing power weight of the non-reference server. The parallel steps can be executed step by step or simultaneously.
[0081] S207: Obtain historical computing power usage data of the benchmark server when running the target application, and respectively determine the target applications run by the benchmark server and the non-benchmark server in the historical target period.
[0082] Specifically, in order to predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted, it is necessary to obtain the historical computing power usage data of the benchmark server when running the target application, and determine the target application run by the benchmark server in the historical target period and the target application run by the non-benchmark server in the historical target period.
[0083] For example, in one implementation, assuming that the target period to be predicted is 9:30-10:30 on October 30, 2024, the target applications running on the benchmark server during the historical target period and the target applications running on the non-benchmark server during the historical target period are directly obtained during the period from 9:30 to 10:30 on October 29, 2024. This method can make predictions simpler and faster.
[0084] In another implementation, assuming that the target period to be predicted is 9:30-10:30 on October 30, 2024, the target applications run by the benchmark server during the historical target period and the target applications run by the non-benchmark server during the historical target period from 9:30 to 10:30 every day from October 20 to October 29, 2024 can be obtained, and the target applications run by the benchmark server during the historical target period and the target applications run by the non-benchmark server during the historical target period can be determined by taking the average, taking the maximum, or taking the union. This method can make the final prediction result smoother and more stable.
[0085] S208. Predict the computing power usage data of the benchmark server in the target period to be predicted based on the target application run by the benchmark server in the historical target period and the historical computing power usage data of the benchmark server when running the target application.
[0086] Specifically, if the target application run by the benchmark server in the historical target period and the historical computing power usage data of the benchmark server when running the target application are determined, the computing power usage data of the benchmark server in the target period to be predicted can be predicted by adding the historical computing power usage data corresponding to the target application run by the benchmark server in the historical target period.
[0087] For example, following the above example, the target applications running on server 3 during the historical target period are application A4, application B3, and application C3, and the computing power usage data of application A4 running on server 3 between 9:30 and 10:30 on October 27, 2024 is 1C, the computing power usage data of application B3 running is 1.5C, and the computing power usage data of application C3 running is 2C. Then, the computing power usage data CPU of server 3 during the target period to be predicted is predicted. p It is 1C+1.5C+2C=4.5C.
[0088] S209: Predict the computing power usage data of the non-benchmark server in the target period to be predicted based on the target application running on the non-benchmark server in the historical target period and the historical computing power usage data of the benchmark server when running the target application.
[0089] Specifically, the computing power usage data of the non-benchmark server in the target period to be predicted can be directly based on the historical computing power usage data of the benchmark server when running the target application and the target application prediction run by the non-benchmark server in the historical target period.
[0090] For example, following the above example, the target applications running on server 1 during the historical target period are application A1, application A2, application B1, and application C1. Then the CPU usage data of server 1 during the target period to be predicted is predicted. p =1C+1C+1.5C+2C=5.5C. And, the target applications running on server 2 during the historical target period are application A3, application B2, and application C2. The CPU usage data of server 2 during the target period to be predicted is predicted. p It is 1C+1.5C+2C=4.5C.
[0091] S210: Obtain the rated computing power of the reference server, and determine the total computing power data of the reference server according to the rated computing power of the reference server and the computing power weight of the reference server.
[0092] Specifically, the rated computing power of the server can be determined based on the information in the processor type. For example, taking server 3 as an example, the processor type of server 3 is (Intel(R) Xeon(R) Gold 5218, CPU 48C), then the rated computing power of server 3 can be determined to be 48C. The total computing power data can be calculated according to the following formula:
[0093] CPU t =CP*w;
[0094] Among them, CPU t is the total computing power data, CP is the rated computing power, and w is the computing power weight. t is the total computing power data of the benchmark server, CP is the rated computing power of the benchmark server, and w is the computing power weight of the benchmark server.
[0095] Exemplarily, following the above example, the total computing power data of server 3 is 48C*1=48C.
[0096] S211. Obtain the rated computing power of the non-reference server, and determine the total computing power data of the non-reference server according to the rated computing power of the non-reference server and the computing power weight of the non-reference server.
[0097] Specifically, the rated computing power of the non-benchmark server can also be determined based on the information in the processor type. For example, taking server 1 as an example, the processor type of server 1 is (Intel(R)Xeon(R)Gold 5120, CPU 24C), then the rated computing power of server 1 can be determined to be 24C. Taking server 2 as an example, the processor type of server 2 is (AMD EPYC 745328, Core 32C), then the rated computing power of server 2 can be determined to be 32C. In addition, the total computing power data can be calculated according to the following formula:
[0098] CPU t =CP*w;
[0099] In this embodiment, the CPU t is the total computing power data of the non-benchmark server, CP is the rated computing power of the non-benchmark server, and w is the computing power weight of the non-benchmark server.
[0100] Exemplarily, following the above example, the total computing power data of server 1 is 24C*0.67=17C. The total computing power data of server 2 is 32C*1.43=46C.
[0101] In this embodiment, the total computing power data of each server is converted based on the rated computing power of the server and its corresponding computing power weight, so that the total computing power of servers with different processor types is aligned with the benchmark server as the benchmark, providing a basis for the subsequent calculation of the computing power load in the target period to be predicted.
[0102] S212: Determine the load of the reference server in the target period to be predicted based on the total computing power data of the reference server and the computing power usage data of the reference server in the target period to be predicted.
[0103] Specifically, the load in the target period to be predicted can be determined according to the following formula:
[0104] L=(1-CPU p / CPU t )*100;
[0105] The formula is multiplied by 100 to convert the decimal value into a score with a full score of 100. The final calculated load is presented in the form of a "load score".
[0106] Exemplarily, following the above example, the load L3 of the server 3 in the target period to be predicted = (1-4.5C / 48C)*100 = 91. That is, the load score of the server 3 in the target period to be predicted is 93 points.
[0107] S213: Determine the load of the non-benchmark server in the target period to be predicted based on the total computing power data of the non-benchmark server and the computing power usage data of the non-benchmark server in the target period to be predicted.
[0108] Specifically, the load in the target period to be predicted can be determined according to the following formula:
[0109] L=(1-CPU p / CPU t )*100;
[0110] For example, following the above example, the load L1 of server 1 in the target period to be predicted = (1-5.5C / 17C)*100 = 68. The load L2 of server 2 in the target period to be predicted = (1-4.5C / 46C)*100 = 90. That is, the load score of server 1 in the target period to be predicted is 68 points, and the load score of server 2 in the target period to be predicted is 90 points.
[0111] It is worth noting that S208, S210, S212 and S209, S211, S213 are parallel steps, that is, S208, S210, S212 are calculation steps for the reference server, and S209, S211, S213 are calculation steps for the non-reference server.
[0112] In this embodiment, the predicted computing power usage data of each server in the predicted period and the total computing power data of each server converted based on the processor computing power of the benchmark server are used to determine the final load score of each server, thereby comprehensively considering the different computing powers of different server processors. Therefore, when determining the final load, the computing power weights of different servers are first calculated based on the benchmark server, so that the final determined server load is more accurate and the final distributed load is more balanced.
[0113] S214: According to the loads of the reference servers and the non-reference servers in the target period to be predicted, the reference servers and the non-reference servers are sorted as a whole to determine a sorting result.
[0114] The load in the target period to be predicted is the load score. The sorting result is the sorting result of the benchmark servers and non-benchmark servers arranged in descending order of the load scores.
[0115] Specifically, if the calculated loads of the benchmark server and the non-benchmark server in the target period to be predicted are load scores, then all servers in the server cluster can be ranked in order of load scores from large to small.
[0116] For example, following the above example, the load score of server 1 is 68, the load score of server 2 is 90, and the load score of server 3 is 93. Then, in descending order, the ranking result is server 3, server 2, and server 1.
[0117] S215 . When receiving a load scheduling request of a new application, select a target server from the reference server and the non-reference server according to the sorting result, and schedule the load scheduling request of the new application to the target server.
[0118] Specifically, the cluster controller of the server cluster will receive the load scheduling request of the new application, especially during the business peak period, such as between 9:30 and 10:30 every day. At this time, when the cluster controller receives the load scheduling request of the new application, it can select the target server from the reference server and the non-reference server according to the sorting result determined above. For example, according to the number of load scheduling requests of the new application received, the reference server or the non-reference server is selected as the target server from the first one in the sorting result, and the load scheduling request of the new application is scheduled to the target server.
[0119] Exemplarily, following the above example, if the cluster controller receives one load scheduling request for a new application, server 3 is preferentially selected as the target server, and the load scheduling request of the new application is scheduled to server 3. If the cluster controller receives two load scheduling requests for new applications, server 3 is preferentially selected as the target server, and server 2 is selected again or server 3 is still selected as another target server, and the load scheduling request of the new application is scheduled to server 3 and / or server 2. Among them, if the score difference between server 2 and server 3 is small, different new applications can be scheduled to server 2 and server 3. If the score difference between server 2 and server 3 is large, different new applications can be scheduled to server 3. Alternatively, after determining to schedule a new application to server 3, re-predict the load score of server 3, and then determine again which server to schedule another new application to based on the re-predicted load score of server 3 and the load scores of other servers.
[0120] After the server is scheduled according to the above method, Figure 3 shown. Figure 3 This is a diagram showing an example of the computing power usage results of a server provided in an embodiment of the present invention. Figure 3 That is, after using the above method to score the load of each server, the scheduling of each server is determined based on the load score, so as to achieve load balancing for each server in the server cluster. Figure 3In the figure, the horizontal axis is time and the vertical axis is processor usage. The time selected is the peak business period of each day, that is, from 9:30 to 11:30. The processor usage is the processor usage of server 1, server 2, and server 3 after scheduling when new applications are assigned to the servers in the server cluster at each time point according to the above steps. Figure 3 It can be seen that according to the above method, based on the computing power of each server processor, different services are reasonably allocated to each server, which can make the load of different servers more balanced during peak hours, avoid the processor utilization rate of some servers being particularly high and the utilization rate of other servers being particularly low, and reduce the average load difference of each server processor from 70% to less than 10%. The method provided by the present invention can improve the utilization rate of the server cluster as a whole.
[0121] The method for determining the server load provided by the embodiment of the present invention, on the one hand, takes a server of a certain processor type as a reference server, and calculates the computing power weights corresponding to the reference server and the non-reference server based on the computing power usage data of the reference server running the target application in the historical target period, and the computing power usage data of the non-reference server running the target application in the historical target period. The computing power weight represents the computing power usage gap between the non-reference server and the reference server, that is, according to the computing power weight, it is possible to use the computing power usage data of the reference server in the target period as a benchmark to infer the computing power usage data of the non-reference server in the target period. Based on the calculated computing power weight, the computing power alignment of each server processor in the server cluster can also be achieved. On the other hand, based on the rated computing power of each server and its corresponding computing power weight, the total computing power data of this server is converted, so that the total computing power of servers of different processor types is aligned with the reference server as a benchmark, providing a basis for the subsequent calculation of the computing power load in the target period to be predicted. On the other hand, the predicted computing power usage data of each server in the predicted period and the total computing power data of each server converted based on the processor computing power of the benchmark server are used to determine the final load score of each server, so that the different computing powers of different server processors are comprehensively considered. Therefore, when determining the final load, the computing power weights of different servers are first calculated based on the benchmark server to make the final determined server load more accurate and the final load distribution more balanced. At the same time, the method provided by the present invention can improve the overall utilization rate of the server cluster, especially the task processing capacity of the server cluster during the peak business period and the utilization rate of each server.
[0122] Figure 4 A schematic diagram of a server load determination device provided by an embodiment of the present invention. Figure 4As shown, a cluster controller applied to manage a server cluster includes:
[0123] A determination module 401 is used to determine a reference server and a non-reference server in a server cluster, wherein the non-reference server is a server other than the reference server in the server cluster;
[0124] The weight calculation module 402 is used to determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server in the historical target period, and determine the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period, wherein the computing power weight of the benchmark server is the standard computing power occupancy value of the benchmark server when running the target application, and the computing power weight of the non-benchmark server is used to indicate the computing power occupancy gap between the non-benchmark server and the benchmark server when running the target application;
[0125] The prediction module 403 is used to predict the computing power usage data of the benchmark server and the non-benchmark server in the target period to be predicted respectively according to the computing power usage data of the benchmark server in the historical target period;
[0126] The load calculation module 404 is used to determine the load of the benchmark server in the target period to be predicted based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and to determine the load of the non-benchmark server in the target period to be predicted based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
[0127] Optionally, the determination module 401 is specifically configured to:
[0128] The processor type of each server in the server cluster is obtained; the servers with the same processor type and the largest number in the server cluster are used as reference servers, and the other servers in the server cluster except the reference server are used as non-reference servers.
[0129] Optionally, during the historical target period, the reference server runs at least one target application, and the computing power weight of the reference server is determined according to the computing power usage data of the reference server during the historical target period. The weight calculation module 402 is specifically used to:
[0130] Obtain computing power usage data of the benchmark server when running the target application during the historical target period; set a preset benchmark computing power based on the computing power usage data of the benchmark server when running the target application during the historical target period, and determine the computing power weight of the benchmark server based on the computing power usage data of the benchmark server when running the target application during the historical target period and the preset benchmark computing power.
[0131] Optionally, during the historical target period, the non-benchmark server runs at least one target application; the computing power weight of the non-benchmark server is determined according to the computing power usage data of the benchmark server during the historical target period and the computing power usage data of the non-benchmark server during the historical target period, and the weight calculation module 402 is specifically used to:
[0132] A preset benchmark computing power is set according to the computing power usage data of the benchmark server running the target application during the historical target period; and the computing power weight of the non-benchmark server is determined according to the computing power usage data of the non-benchmark server during the historical target period and the preset benchmark computing power.
[0133] Optionally, the prediction module 403 is specifically used for:
[0134] Obtain historical computing power usage data of the benchmark server when running the target application, and respectively determine the target applications run by the benchmark server and the non-benchmark server in the historical target period; predict the computing power usage data of the benchmark server in the target period to be predicted based on the target application run by the benchmark server in the historical target period and the historical computing power usage data of the benchmark server when running the target application; and predict the computing power usage data of the non-benchmark server in the target period to be predicted based on the target application run by the non-benchmark server in the historical target period and the historical computing power usage data of the benchmark server when running the target application.
[0135] Optionally, the load calculation module 404 is specifically used for:
[0136] The rated computing power of the benchmark server is obtained, and the total computing power data of the benchmark server is determined based on the rated computing power of the benchmark server and the computing power weight of the benchmark server; the load of the benchmark server in the target period to be predicted is determined based on the total computing power data of the benchmark server and the computing power usage data of the benchmark server in the target period to be predicted; the rated computing power of the non-benchmark server is obtained, and the total computing power data of the non-benchmark server is determined based on the rated computing power of the non-benchmark server and the computing power weight of the non-benchmark server; the load of the non-benchmark server in the target period to be predicted is determined based on the total computing power data of the non-benchmark server and the computing power usage data of the non-benchmark server in the target period to be predicted.
[0137] Optionally, the device further includes an allocation module, wherein the load in the target period to be predicted is a load score; after determining the load of the non-reference server in the target period to be predicted, the allocation module is specifically used to:
[0138] According to the loads of the benchmark servers and the non-benchmark servers in the target period to be predicted, the benchmark servers and the non-benchmark servers are sorted as a whole to determine the sorting result, wherein the sorting result is the sorting result of the benchmark servers and the non-benchmark servers arranged in descending order according to the load scores; when a load scheduling request of a new application is received, a target server is selected from the benchmark servers and the non-benchmark servers according to the sorting result, and the load scheduling request of the new application is scheduled to the target server.
[0139] The server load determination device provided in the embodiment of the present invention can execute the server load determination method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0140] Figure 5 A schematic diagram of the structure of an electronic device 10 provided for an embodiment of the present invention. 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 may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0141] like Figure 5 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0142] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0143] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a method for determining a server load.
[0144] In some embodiments, the method for determining the server load may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the method for determining the server load described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to execute the method for determining the server load in any other appropriate manner (e.g., by means of firmware).
[0145] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations 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 can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0146] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0147] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0148] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device 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 trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0149] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may 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), a blockchain network, and the Internet.
[0150] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0151] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0152] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for determining server load, characterized in that: A cluster controller applied to a management server cluster, the method comprising: Determine a reference server and a non-reference server in the server cluster, wherein the non-reference server is another server in the server cluster except the reference server; Determine the computing power weight of the reference server according to the computing power usage data of the reference server in the historical target period, and determine the computing power weight of the non-reference server according to the computing power usage data of the reference server in the historical target period and the computing power usage data of the non-reference server in the historical target period, wherein the computing power weight of the reference server is the standard computing power occupancy value of the reference server when running the target application, and the computing power weight of the non-reference server is used to indicate the computing power occupancy gap between the non-reference server and the reference server when running the target application; According to the computing power usage data of the reference server in the historical target period, respectively predicting the computing power usage data of the reference server and the non-reference server in the target period to be predicted; The load of the benchmark server in the target period to be predicted is determined based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and the load of the non-benchmark server in the target period to be predicted is determined based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
2. The method for determining the server load according to claim 1, characterized in that: The determining of the reference server and the non-reference server in the server cluster includes: Obtaining a processor type of each server in the server cluster; The servers with the same processor type and the largest number in the server cluster are used as the reference servers, and the other servers in the server cluster except the reference server are used as the non-reference servers.
3. The method for determining server load according to claim 1, characterized in that: During the historical target period, the reference server runs at least one of the target applications; Determining the computing power weight of the reference server according to the computing power usage data of the reference server in the historical target period includes: Obtain computing power usage data of the benchmark server running the target application during the historical target period; A preset benchmark computing power is set according to the computing power usage data of the benchmark server running the target application during the historical target period, and the computing power weight of the benchmark server is determined according to the computing power usage data of the benchmark server running the target application during the historical target period and the preset benchmark computing power.
4. The method for determining server load according to claim 1, characterized in that: During the historical target period, the non-benchmark server runs at least one of the target applications; and determining the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server during the historical target period and the computing power usage data of the non-benchmark server during the historical target period includes: Setting a preset benchmark computing power according to computing power usage data of the benchmark server running the target application during the historical target period; The computing power weight of the non-benchmark server is determined according to the computing power usage data of the non-benchmark server in the historical target period and the preset benchmark computing power.
5. The method for determining server load according to claim 1, characterized in that: The step of respectively predicting the computing power usage data of the reference server and the non-reference server in the target period to be predicted according to the computing power usage data of the reference server in the historical target period includes: Acquire historical computing power usage data of the reference server when running the target application, and respectively determine the target application run by the reference server and the non-reference server during the historical target period; Predicting computing power usage data of the reference server in the target period to be predicted based on the target application run by the reference server in the historical target period and the historical computing power usage data of the reference server when running the target application; and The computing power usage data of the non-reference server in the target period to be predicted is predicted based on the target application run by the non-reference server in the historical target period and the historical computing power usage data of the reference server when running the target application.
6. The method for determining server load according to claim 1, characterized in that: The determining the load of the reference server in the target period to be predicted according to the computing power usage data of the reference server in the target period to be predicted and the computing power weight of the reference server includes: Acquire the rated computing power of the reference server, and determine the total computing power data of the reference server according to the rated computing power of the reference server and the computing power weight of the reference server; Determining the load of the reference server in the target period to be predicted according to the total computing power data of the reference server and the computing power usage data of the reference server in the target period to be predicted; The determining, according to the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server, the load of the non-benchmark server in the target period to be predicted includes: Acquire the rated computing power of the non-reference server, and determine the total computing power data of the non-reference server according to the rated computing power of the non-reference server and the computing power weight of the non-reference server; The load of the non-reference server in the target period to be predicted is determined according to the total computing power data of the non-reference server and the computing power usage data of the non-reference server in the target period to be predicted.
7. The method for determining server load according to claim 1, characterized in that: The load in the target period to be predicted is a load score; after determining the load of the non-reference server in the target period to be predicted, the method further includes: According to the loads of the reference server and the non-reference server in the target period to be predicted, the reference server and the non-reference server are sorted as a whole to determine a sorting result, wherein the sorting result is a sorting result of the reference server and the non-reference server arranged in descending order according to the load scores; When a load scheduling request of a new application is received, a target server is selected from the reference server and the non-reference server according to the sorting result, and the load scheduling request of the new application is scheduled to the target server.
8. A device for determining server load, characterized in that: A cluster controller for managing a server cluster, the device comprising: A determination module, configured to determine a reference server and a non-reference server in the server cluster, wherein the non-reference server is another server in the server cluster except the reference server; A weight calculation module, used to determine the computing power weight of the benchmark server according to the computing power usage data of the benchmark server in the historical target period, and determine the computing power weight of the non-benchmark server according to the computing power usage data of the benchmark server in the historical target period and the computing power usage data of the non-benchmark server in the historical target period, wherein the computing power weight of the benchmark server is the standard computing power occupancy value of the benchmark server when running the target application, and the computing power weight of the non-benchmark server is used to indicate the computing power occupancy gap between the non-benchmark server and the benchmark server when running the target application; A prediction module, configured to predict the computing power usage data of the reference server and the non-reference server in the target period to be predicted, respectively, based on the computing power usage data of the reference server in the historical target period; A load calculation module is used to determine the load of the benchmark server in the target period to be predicted based on the computing power usage data of the benchmark server in the target period to be predicted and the computing power weight of the benchmark server, and to determine the load of the non-benchmark server in the target period to be predicted based on the computing power usage data of the non-benchmark server in the target period to be predicted and the computing power weight of the non-benchmark server.
9. An electronic device, characterized in that: include: one or more processors; a memory for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method for determining the server load according to any one of claims 1 to 7.
10. A readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method for determining the server load according to any one of claims 1 to 7 is implemented.