Middleware cluster recommendation method, device, electronic device and storage medium

Through matrix decomposition, the scoring matrix, business performance parameter factor matrix and identification factor matrix of the middleware cluster are processed, and the scoring value is calculated, which recommends the middleware cluster for the business, which solves the problems of unbalanced load and low utilization rate of the middleware cluster, and realizes the Efficient and adaptive middleware cluster management.

CN114064106BActive Publication Date: 2025-02-18CHINA TELECOM CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111408867.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-24
Publication Date
2025-02-18
Estimated Expiration
2041-11-24

AI Technical Summary

Technical Problem

In large omni-channel application systems, the load imbalance of middleware clusters leads to excessive loading of some clusters and reduced processing speed and reliability, while some clusters are idle for a long time and have low utilization rates. The existing technology relies on manual management, is costly and inefficient, and cannot quickly and accurately select middleware clusters for business adaptation.

Method used

By obtaining the scoring matrix, business performance parameter factor matrix and identification factor matrix of the middleware cluster, performing matrix decomposition processing, and calculating the score value, so as to recommend a suitable middleware cluster for business.

Benefits of technology

Accurate scoring and recommendation of middleware clusters is realized, the problems of load imbalance and low utilization are avoided, the cost of manual intervention is reduced, and the adaptability and efficiency of the system are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114064106B_ABST
    Figure CN114064106B_ABST
Patent Text Reader

Abstract

The present application provides a method, device, electronic device and storage medium for recommending a middleware cluster, the method comprising: obtaining a scoring matrix, a first business performance parameter factor matrix and a first identification factor matrix corresponding to the middleware cluster; performing matrix decomposition processing between the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and performing matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix; calculating a first scoring value according to the second identification factor matrix, and calculating a second scoring value according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first scoring value and the second scoring value. The technical solution of the embodiment of the present application can accurately obtain the scoring of the middleware cluster, so as to recommend a suitable middleware cluster for the business through scoring.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of middleware, and in particular to a method, device, electronic device and storage medium for recommending a middleware cluster. Background Art

[0002] Middleware is widely used in large-scale projects and can effectively improve system availability and reliability. Some large-scale omni-channel application systems require a large number of middleware clusters to support their operation. During system operation, middleware that meets business needs is needed to complete the work. However, with so many middleware clusters, many of them may meet the same business requirements. When selecting middleware, the system often randomly selects the one that meets the business requirements. This results in some middleware clusters being overloaded, reducing the speed and reliability of data processing. At the same time, some middleware clusters may be idle for long periods of time, resulting in low utilization.

[0003] Given this situation, the challenge is to recommend middleware from a large number of middleware clusters, ensuring that they meet business needs while minimizing over- or underutilization. Existing technologies often rely on manual management intervention to select idle middleware clusters for the system. However, for large systems, middleware clusters are often dispersed across different regions and managed by personnel in different locations. This results in high labor costs and low management efficiency, making it difficult to quickly and accurately select middleware clusters for business adaptation. Summary of the Invention

[0004] To solve the above technical problems, embodiments of the present application provide a middleware cluster recommendation method and device, electronic device, and computer-readable storage medium, which can accurately obtain the scores of middleware clusters and recommend middleware clusters for services based on the scores.

[0005] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by practice of the present application.

[0006] According to one aspect of an embodiment of the present application, a middleware cluster recommendation method is provided, including: obtaining a scoring matrix, a first business performance parameter factor matrix and a first identification factor matrix corresponding to the middleware cluster; performing matrix decomposition processing between the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and performing matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix; calculating a first scoring value according to the second identification factor matrix, and calculating a second scoring value according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first scoring value and the second scoring value.

[0007] In one embodiment, obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster includes:

[0008] extracting a third business performance parameter factor matrix and a third identification factor matrix from the historical business performance data of the middleware cluster;

[0009] The third service performance parameter factor matrix is ​​multiplied by the third identification factor matrix to obtain the scoring matrix.

[0010] In one embodiment, obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster includes:

[0011] Fixing a first service performance parameter of the middleware cluster, and determining at least one first service performance parameter factor corresponding to the first service performance parameter;

[0012] The first service performance parameter factor matrix is ​​generated according to the at least one first service performance parameter factor.

[0013] In one embodiment, obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster includes:

[0014] Fixing a first identifier of the middleware cluster, and determining at least one first identification factor corresponding to the first identifier;

[0015] The second identification factor matrix is ​​generated according to the at least one first identification factor.

[0016] In one embodiment, calculating the first score value according to the second identification factor matrix and calculating the second score value according to the second service performance parameter factor matrix include:

[0017] Determining a target identifier through the second identifier factor matrix, and determining a corresponding target service performance parameter through the second service performance parameter factor matrix;

[0018] The first score value is calculated based on the second identification factor matrix and the target service performance parameter, and the second score value is calculated based on the second service performance parameter factor matrix and the target identification.

[0019] In one embodiment, determining the target identifier by using the second identifier factor matrix, and determining the corresponding target service performance parameter by using the second service performance parameter factor matrix, includes:

[0020] Obtaining at least one target identification factor from the second identification factor matrix to determine a corresponding target identification according to the at least one target identification factor; and

[0021] At least one target service performance parameter factor is obtained from the second service performance parameter factor matrix to determine a corresponding target service performance parameter according to the at least one target service performance parameter factor.

[0022] In one embodiment, the number of middleware clusters includes multiple, and after calculating the first score value according to the second identification factor matrix and calculating the second score value according to the second business performance parameter factor matrix, the method further includes:

[0023] sorting the first and second scoring values ​​corresponding to the plurality of middleware clusters respectively to obtain a first sequence and a second sequence respectively;

[0024] The first and second rating values ​​of the preset rankings in the first and second sequences are respectively obtained, and middleware clusters corresponding to the obtained first and second rating values ​​of the preset rankings are used as middleware clusters to be recommended.

[0025] According to one aspect of an embodiment of the present application, a middleware cluster recommendation device is provided, including a matrix acquisition module, configured to obtain a scoring matrix and a first business performance parameter factor matrix and a first identification factor matrix corresponding to the middleware cluster; a factor matrix acquisition module, configured to perform matrix decomposition processing on the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and to perform matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix; a middleware cluster recommendation module, configured to calculate a first scoring value based on the second identification factor matrix, and to calculate a second scoring value based on the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first scoring value and the second scoring value.

[0026] According to one aspect of an embodiment of the present application, an electronic device is provided, comprising one or more processors; and a storage device for storing one or more computer programs. When the one or more computer programs are executed by the one or more processors, the electronic device implements the middleware cluster recommendation method as described above.

[0027] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor of a computer, the computer executes the middleware cluster recommendation method as described above.

[0028] According to one aspect of an embodiment of the present application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the middleware cluster recommendation method provided in the various optional embodiments described above.

[0029] In the technical solution provided in the embodiments of the present application, by performing matrix calculation on the business performance parameter factor matrix and identification factor matrix of the middleware cluster, the middleware cluster score can be accurately obtained, thereby providing a suitable middleware cluster for business needs based on the middleware cluster score.

[0030] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The accompanying drawings are incorporated into and constitute a part of the specification, illustrating embodiments consistent with the present application and, together with the specification, serving to explain the principles of the present application. It is obvious that the drawings described below are merely some embodiments of the present application, and a person of ordinary skill in the art can derive other drawings based on these drawings without inventive effort. In the drawings:

[0032] Figure 1 is a schematic diagram of an implementation environment involved in this application;

[0033] Figure 2 is a flowchart illustrating a method for recommending a middleware cluster according to an exemplary embodiment of the present application;

[0034] Figure 3 yes Figure 2 A flow chart of step S210 in the illustrated embodiment in an exemplary embodiment;

[0035] Figure 4 yes Figure 2 A flow chart of step S210 in the illustrated embodiment in an exemplary embodiment;

[0036] Figure 5 yes Figure 2 A flowchart of step S210 in the illustrated embodiment in another exemplary embodiment;

[0037] Figure 6 yes Figure 2 A flowchart of step S250 in the illustrated embodiment in another exemplary embodiment;

[0038] Figure 7is a flowchart illustrating a method for recommending a middleware cluster according to another exemplary embodiment of the present application;

[0039] Figure 8 is a structural diagram of a middleware cluster recommendation device shown in an exemplary embodiment of the present application;

[0040] Figure 9 A schematic diagram of the structure of a computer system suitable for implementing an electronic device according to an embodiment of the present application is shown. DETAILED DESCRIPTION

[0041] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different figures represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0042] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically separate entities. That is, these functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0043] The flowcharts shown in the accompanying drawings are for illustrative purposes only and do not necessarily include all contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps may be decomposed, while others may be combined or partially combined. Therefore, the actual execution order may vary depending on the actual situation.

[0044] It should also be noted that the term "plurality" used in this application refers to two or more. "And / or" describes the relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.

[0045] The embodiments of the present application can acquire and process relevant data based on artificial intelligence technology. Artificial Intelligence (AI) is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to achieve optimal results.

[0046] Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.

[0047] The middleware cluster recommendation method and device, electronic device, and storage medium proposed in the embodiments of the present application involve artificial intelligence technology and machine learning technology, and these embodiments will be described in detail below.

[0048] First see Figure 1 , Figure 1 This is a schematic diagram of an implementation environment involved in this application. The implementation environment includes a terminal 100 and a server 200, and the terminal 100 and the server 200 communicate with each other through a wired or wireless network. The terminal 100 is used to collect information about the middleware cluster, and the middleware cluster information includes the business performance parameters, identification, etc. of each middleware; at the same time, the terminal 100 also inputs the collected middleware cluster information into the server 200, and the server 200 processes the information of the middleware cluster, obtains the score of each middleware cluster, and recommends the middleware cluster for the business based on the score; finally, the recommendation result of the middleware cluster can be visualized through the display module provided by the terminal 100.

[0049] Exemplarily, after receiving the information of the middleware cluster, the terminal 100 sends the information of the middleware cluster to the server 200. The server 200 performs data processing on the information of the middleware cluster, such as obtaining the scoring matrix, the first business performance parameter factor matrix and the first identification factor matrix corresponding to the middleware cluster, and then performing matrix decomposition processing between the first business performance parameter factor matrix and the scoring matrix to obtain the second identification factor matrix, and performing matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain the second business performance parameter factor matrix; finally, the first scoring value is calculated according to the second identification factor matrix, and the second scoring value is calculated according to the second business performance parameter factor matrix, so as to recommend the middleware cluster based on the first scoring value and the second scoring value.

[0050] The terminal 100 can be any electronic device capable of data visualization, such as a smartphone, tablet, laptop, or computer, and is not limited here. The server side 200 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, wherein multiple servers can form a blockchain, and the server is a node on the blockchain. The server side 200 can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms, and is not limited here.

[0051] Figure 2 FIG. 1 is a flow chart showing a method for recommending a middleware cluster according to an exemplary embodiment. Figure 2 As shown, in an exemplary embodiment, the method may include steps S210 to S250, which are described in detail as follows:

[0052] Step S210: Obtain a scoring matrix, a first business performance parameter factor matrix, and a first identification factor matrix corresponding to the middleware cluster.

[0053] For a middleware cluster, its business performance parameters may include the QPS (query rate per second), number of responses, and other data that can reflect the business performance of the middleware cluster. Taking QPS as an example, there are many factors that affect the QPS of the middleware cluster, such as network bandwidth, connection pool, number of threads, etc. Data changes in factors will lead to changes in the value of QPS, that is, data changes in business performance parameter factors will lead to changes in the value of business performance parameters, and these business performance parameter factors will also affect the weights of business performance parameters. The business performance parameters can reflect the business performance of the middleware cluster.

[0054] The identifier of the middleware cluster in this embodiment is the middleware cluster ID (identification number). Similarly, each identifier corresponds to multiple identification factors, such as order number, batch number, timestamp + random number, etc. Different identification factors will constitute different identifiers, and different identification factors will also affect the weight of the identifier. The identifier can reflect the characteristics of the middleware cluster.

[0055] During actual calculation, the values ​​of the identification factor and the service performance parameter factor may be fixed to be the same, for example, the number of the identification factor and the number of the service performance parameter factor are both 15.

[0056] The scoring matrix in this embodiment is obtained by scoring the middleware cluster with reference to the historical data of the middleware cluster, such as obtaining the business performance parameter factor matrix and identification factor matrix of the middleware cluster through the business performance parameters and identifications in the historical data, and obtaining the scoring matrix of the middleware cluster by matrix multiplication.

[0057] In this embodiment, the business performance parameters and identifiers of the middleware cluster are fixed, and then the corresponding business performance parameter factors and identification factors are extracted from the fixed business performance parameters and identifiers, and these business performance parameter factors and identification factors are respectively used to generate a first business performance parameter factor matrix and a first identification factor matrix.

[0058] When forming the first business performance parameter factor matrix and the first identification factor matrix through fixed business performance parameters and identifiers, if the number of factors forming the matrix is ​​insufficient, the matrix is ​​completed, such as filling the matrix through random values ​​or mean square error. For example, if 15 business performance parameter factors are obtained through fixed business performance parameters, and the required first business performance parameter factor matrix is ​​a 4*4 matrix, then there will be matrix units without data. At this time, the first business performance parameter factor matrix can be filled through random values ​​or mean square error.

[0059] Step S230: performing matrix decomposition processing between the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and performing matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix.

[0060] In this embodiment, after obtaining the first business performance parameter factor matrix and the first identification factor matrix of the middleware cluster, the first business performance parameter factor matrix and the scoring matrix are used to approximate the second identification factor matrix of the middleware cluster identification, that is, matrix decomposition is performed between the first business performance parameter factor matrix and the scoring matrix to estimate the element values ​​corresponding to the invisible positions in the second identification factor matrix; similarly, the first identification factor matrix and the scoring matrix are also used to approximate the second business performance parameter factor matrix, and the element values ​​corresponding to the invisible positions in the second business performance parameter factor matrix are estimated through matrix decomposition to evaluate the business performance of the middleware cluster through the second business performance parameter factor matrix.

[0061] In this embodiment, the first service performance parameter factor matrix and the scoring matrix are decomposed using the following formula:

[0062] [Id2 Factors Matrix]=[QPS1 Factors Matrix]^-1*[RatingMatrix]

[0063] Among them, [Id2 Factors Matrix] is the second identification factor matrix, [QPS1 Factors Matrix] is the first business performance parameter factor matrix, and [Rating Matrix] is the rating matrix.

[0064] In this embodiment, the first identification factor matrix and the score matrix are decomposed using the following formula:

[0065] [QPS2 Factors Maxtrix]=[Id1 Factors Matrix]^1*[RatingMatrix]

[0066] Among them, [Id1 Factors Matrix] is the first identification factor matrix, [QPS2 Factors Matrix] is the second business performance parameter factor matrix, and [Rating Matrix] is the rating matrix.

[0067] From this, it can be seen that the first business performance parameter factor matrix, the first identification factor matrix and the scoring matrix need to satisfy the conditions of the above matrix decomposition formula. If there are missing values ​​in the second identification factor matrix and the second business performance parameter factor matrix, the missing parts of the matrix can be completed through matrix completion.

[0068] In this embodiment, in order to reflect the accuracy of the data, steps S210-S230 can be looped, that is, different business performance parameters and identifiers are repeatedly fixed to obtain different first business performance parameter factor matrices and first identifier factor matrices, and matrix decomposition calculations are performed based on this to obtain multiple second identifier factor matrices and second business performance parameter factor matrices. After such a loop, it is known that the final data is stable within a range, and the stable value is used as the final second identifier factor matrix and the second business performance parameter factor matrix.

[0069] Step S250: Calculate a first rating value according to the second identification factor matrix, and calculate a second rating value according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first rating value and the second rating value.

[0070] In this embodiment, by repeatedly performing steps S210-S230, a stable second identification factor matrix and a second business performance parameter factor matrix are obtained. A target identification can be obtained based on the actual factor parameters in the stable second identification factor matrix, and a target business performance parameter can also be obtained based on the stable second business performance parameter factor matrix.

[0071] Then, calculation is performed using the target identifier and the target service performance parameter to obtain a first scoring value and a second scoring value of the middleware cluster. The first scoring value and the second scoring value can be used to evaluate the performance of the middleware cluster.

[0072] In some embodiments, when it is necessary to select an appropriate middleware cluster from a large number of middleware clusters, steps S210 to S250 can be performed on all middleware clusters of load services to obtain a first score value and a second score value of each middleware cluster, and then the middleware cluster ultimately used for business implementation is selected based on the first score value and the second score value of each middleware cluster. For example, based on the size of the first score value and the second score value, a middleware cluster with a higher score value can be comprehensively selected for recommendation.

[0073] In this embodiment, since there is a loop process in step S210-step S230, in actual application, a model can be established according to step S210-step S250 to complete the recommendation of the middleware cluster. During model training, the model can be converged by using a loss function until a stable second identification factor matrix and a second business performance parameter factor matrix are obtained, so as to calculate the first score value and the second score value of the middleware cluster by using the stable second identification factor matrix and the second business performance parameter factor matrix. The loss function can be:

[0074]

[0075] Among them, L(X, Y) is the square error, u is the user demand, i is the middleware cluster, x u is the preference matrix of business performance parameters to the implicit features of the middleware cluster, y i is the implicit feature vector contained in the middleware cluster i, λ is the regularization parameter introduced to avoid overfitting, c ui is the confidence level, p ui is the preference value.

[0076] And for c ui The formula is:

[0077] c ui =1+αγ ui

[0078] In the formula, α is the confidence coefficient, γ is the category score, and γ ui represents the rating of user u on middleware cluster i.

[0079] P ui The formula is:

[0080]

[0081] x uThe formula is:

[0082] x u =(Y T C u Y+λI) -1 Y T C u γu

[0083] Where Y is the randomly initialized middleware cluster factor matrix, which will be updated alternately. u is an n×n diagonal matrix, and Should is a list of confidence values, c ui is the confidence value, I is the eye, the identity matrix, the diagonal value is 1 and all other positions are 0, γu is a Boolean value representing the user's preference for the cluster, 1 means preference and 0 means no preference.

[0084] y i The formula is:

[0085] y i =(X T C i X+λI) -1 X T C u γi

[0086] Where X is the randomly initialized user factor matrix, which will be updated alternately, C i is an m×m diagonal matrix, and Should is a list of confidence values, c ii is the confidence value, γi is a Boolean value indicating the user's preference for the middleware cluster, 1 indicates preference and 0 indicates no preference.

[0087] In this embodiment, starting from the business performance and own characteristics of the middleware cluster, matrix calculation is performed through the business performance parameter factor matrix and the identification factor matrix to score the middleware cluster, so as to obtain a more accurate evaluation score of the middleware cluster, thereby providing a suitable middleware cluster for the business demand based on the score of the middleware cluster, which can avoid the situation where some middleware clusters are overloaded and some middleware clusters are idle for a long time due to the system randomly selecting middleware clusters, and effectively improve the utilization rate of the middleware cluster; on the other hand, in this embodiment, there is no need for manual intervention. The system can adaptively calculate the score of the middleware cluster in the above way and recommend middleware clusters for the business, which can greatly reduce labor costs and improve the system operation speed.

[0088] Figure 3 yes Figure 2The flowchart of step S210 in the embodiment shown is in an exemplary embodiment. Figure 3 As shown, in an exemplary embodiment, the process of obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster may include steps S310 to S330, which are described in detail as follows:

[0089] Step S310: extracting a third business performance parameter factor matrix and a third identification factor matrix from historical business performance data of the middleware cluster.

[0090] In this embodiment, by obtaining historical business performance data of the middleware cluster, business performance parameters such as QPS, query rate per second, TCP, etc. are extracted from the historical business performance data, corresponding business performance parameter factors are obtained according to the business performance parameters, and these business performance parameter factors are formed into a third business performance parameter factor matrix. Similarly, if there are missing values ​​in the third business performance parameter factor matrix, the third business performance parameter factor matrix is ​​completed by the matrix completion method.

[0091] At the same time, a third identification factor matrix is ​​determined based on the identifier of the middleware cluster, such as obtaining the identifier of the time point at which the business performance parameter corresponding to the third business performance parameter factor matrix is ​​located, determining the identification factor through the identifier, and then constructing the identification factor into a third identification factor matrix. Similarly, the third identification factor matrix can be completed through matrix completion, and the identifier can be the ID of the middleware cluster.

[0092] Step S330: multiply the third service performance parameter factor matrix and the third identification factor matrix to obtain a scoring matrix.

[0093] In step S310, the characteristic matrix of the middleware cluster is obtained through historical business performance data, and the identification matrix of the middleware cluster is obtained at the same time. The third business performance parameter factor matrix of the characteristic matrix and the third identification factor matrix are matrix multiplied to obtain the scoring matrix of the middleware cluster.

[0094] The specific method of obtaining the scoring matrix can refer to the following formula:

[0095]

[0096] Among them, R m×n is the scoring matrix, m×n is the rows and columns of the scoring matrix, X m×k is the scoring matrix, m×k is the rows and columns of the scoring matrix, Y n×k is the rating matrix, n×k is the rows and columns of the rating matrix, and T is the transpose.

[0097] In this embodiment, based on the historical data of the middleware cluster, business performance parameters and identifiers are selected from the historical data to accurately obtain a scoring matrix for the middleware cluster. The scoring matrix can be used to judge the historical operating performance of the middleware cluster, laying the foundation for subsequent scoring of the middleware cluster based on the scoring matrix. The scoring matrix can be combined with the business performance parameter factor matrix and the identifier factor matrix of the middleware cluster to accurately score the middleware cluster, providing reference data for the system to select a suitable middleware cluster.

[0098] Figure 4 yes Figure 2 The flowchart of step S210 in the embodiment shown is in an exemplary embodiment. Figure 4 As shown, in an exemplary embodiment, the process of obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster may include steps S410 to S430, which are described in detail as follows:

[0099] Step S410: fixing a first service performance parameter of the middleware cluster, and determining at least one first service performance parameter factor corresponding to the first service performance parameter.

[0100] In this embodiment, multiple business performance parameters of the middleware cluster within a time period can be collected in real time, and the multiple business performance parameters can be analyzed to remove occasional values. The value that conforms to the actual business performance data and can represent the business performance index within the time period is selected as the first business performance parameter. For example, multiple business performance parameters QPS of a middleware cluster within a certain time period are obtained, and the multiple business performance parameters QPS have extreme values ​​of 1-10 and 1w-1.5, as well as multiple intermediate values ​​of about 5000-6000. Then, when fixing the first business performance parameter, the extreme value is removed first, and then the most representative average value such as 6000 is found in the middle as the first business performance parameter.

[0101] When the first business performance parameter is fixed, at least one first business performance parameter factor corresponding to it can be determined based on the value of the first business performance parameter. The at least one business performance parameter factor can affect the business performance parameter, that is, there is a corresponding relationship between the business performance parameter and the business performance parameter factor.

[0102] Step S430: Generate a first service performance parameter factor matrix according to at least one first service performance parameter factor.

[0103] In this embodiment, the rows and columns of the first business performance parameter factor matrix are set, and then the first business performance parameter factors corresponding to the first business performance parameters fixed in step S410 are filled into the first business performance parameter factor matrix. Of course, if the first business performance parameter factor matrix exists but has missing values, the missing values ​​in the first business performance parameter factor matrix are completed by matrix completion.

[0104] This embodiment provides a method for obtaining the first business performance parameter factor matrix of the middleware cluster. The above method can accurately obtain the first business performance parameter factor matrix used to reflect the business performance of the middleware cluster, provide reference data for subsequent scoring of the middleware cluster based on the first business performance parameter factor matrix, and lay the foundation for accurately recommending middleware clusters.

[0105] Figure 5 yes Figure 2 The flowchart of step S210 in the embodiment shown is in an exemplary embodiment. Figure 5 As shown, in an exemplary embodiment, the process of obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster may include steps S510 to S530, which are described in detail as follows:

[0106] Step S510: fix the first identifier of the middleware cluster, and determine at least one first identification factor corresponding to the first identifier.

[0107] In this embodiment, multiple identification parameters of the middleware cluster within a time period are collected in real time, and the multiple identifications are analyzed to remove occasional values. The value that conforms to the actual business performance data and can represent the business performance index within the time period is selected as the first identification. Of course, the first business performance parameter factor matrix can also be referred to to obtain the identification of the time point at which the business performance parameter corresponding to the first business performance parameter factor matrix is ​​located as the first identification.

[0108] After the first identifier is fixed, at least one first identification factor corresponding to the first identifier can be determined according to the value of the first identifier. The at least one identification factor can affect the identifier, that is, there is a corresponding relationship between the identifier and the identification factor.

[0109] Step S530: Generate a second identification factor matrix according to at least one first identification factor.

[0110] In this embodiment, the rows and columns of the first identification factor matrix are set, and then the first identification factor corresponding to the first identification fixed in step S510 is filled into the first identification matrix. Of course, if the first identification matrix exists but has missing values, the missing values ​​in the first identification factor matrix are completed by matrix completion.

[0111] This embodiment provides a method for obtaining a first identification factor matrix of a middleware cluster. The above method can accurately obtain a first identification factor matrix used to reflect the characteristics of the middleware cluster, provide reference data for subsequent scoring of the middleware cluster based on the first identification factor matrix, and lay the foundation for accurately recommending middleware clusters.

[0112] Figure 6 yes Figure 2 The flowchart of step S250 in the embodiment shown is in an exemplary embodiment. Figure 6 As shown, in an exemplary embodiment, the process of calculating the first score value according to the second identification factor matrix and calculating the second score value according to the second service performance parameter factor matrix may include steps S610 to S630, which are described in detail as follows:

[0113] Step S610: determining a target identifier through a second identifier factor matrix, and determining a corresponding target service performance parameter through a second service performance parameter factor matrix.

[0114] Since the identification factor can affect the weight of the identification, a corresponding identification can be determined by the identification factor. Therefore, in this embodiment, at least one target identification factor can be extracted from the second identification factor matrix, and a target identification can be determined by the at least one target factor.

[0115] Likewise, at least one target service performance parameter factor may be extracted from the second service performance parameter factor matrix, and then a target service performance parameter may be determined according to the at least one target service performance parameter factor.

[0116] Step S630: Calculate a first score value based on the second identification factor matrix and the target service performance parameter, and calculate a second score value based on the second service performance parameter factor matrix and the target identification.

[0117] In this embodiment, the second identification factor matrix and the target business performance parameter are multiplied to calculate a first scoring value for evaluating the business performance of the middleware cluster, and the first scoring value is in the range of 0 to 1; at the same time, the second business performance parameter factor matrix and the target identification are multiplied to calculate a second scoring value for a user to evaluate the middleware cluster identification.

[0118] After obtaining the first score value and the second score value of the middleware cluster, the two score values ​​can be used to analyze whether the middleware cluster can be used for the system business; of course, when there are multiple middleware clusters, the first score value and the second score value of each middleware cluster can be compared and judged, and the middleware cluster with a higher comprehensive score can be selected for the system business.

[0119] This embodiment proposes a method for obtaining a middleware cluster score, through which a first score value reflecting the business performance of the middleware cluster and a second score value reflecting the characteristics of the middleware cluster can be accurately obtained, which provides a basis for subsequent middleware cluster recommendation and identification based on the first score value and the second score value, thereby improving the reliability of the middleware cluster recommendation.

[0120] Figure 7 The flowchart shows a method for recommending a middleware cluster according to another exemplary embodiment. Figure 7 In the embodiment shown in FIG, the method may be implemented after step S250, as shown in FIG. Figure 7 As shown, in an exemplary embodiment, the number of the middleware clusters includes multiple, and the method may include steps S710 to S730, which are described in detail as follows:

[0121] Step S710: sorting the first scoring values ​​and the second scoring values ​​corresponding to the plurality of middleware clusters respectively to obtain a first sequence and a second sequence respectively.

[0122] In this embodiment, when there are multiple middleware clusters in a large project, the middleware cluster that best suits the business requirement can be selected by obtaining the first and second scoring values ​​of all middleware clusters that meet the business requirement.

[0123] Specifically, after obtaining the first and second scoring values ​​corresponding to multiple middleware clusters, they are sorted separately, such as sorting the first and second scoring values ​​from large to small according to numerical value, so as to obtain the first sequence and the second sequence. At the same time, in order to comprehensively evaluate the performance of the middleware cluster from the first and second scoring values, the first and second scoring values ​​of each middleware cluster can also be linked to each other, and mapped in the sequence, that is, the first scoring value of the same middleware cluster in the first sequence is linked to its second scoring value in the second sequence.

[0124] Step S730: respectively obtaining the first and second ratings of the preset rankings in the first and second sequences, and taking the middleware clusters corresponding to the obtained first and second ratings of the preset rankings as the middleware clusters to be recommended.

[0125] In this embodiment, one or more middleware clusters can be selected for recommendation based on the rankings of multiple middleware clusters in the first and second sequences. The system can then process services using the recommended middleware clusters. For example, if the top five middleware clusters in the first sequence are selected, and the top five middleware clusters in the second sequence are also selected, and if there is overlap between the top five middleware clusters in the first sequence and the top five middleware clusters in the second sequence, the middleware cluster that is both in the first and second sequence will be selected for recommendation.

[0126] In other embodiments, a sequence can be used as an index to select a middleware cluster with a preset ranking in the sequence, and then the ranking of the selected middleware cluster can be searched in another sequence to obtain the middleware clusters that are ranked higher in the other sequence. For example, the top five middleware clusters 1-5 are obtained in the first sequence, and then the ranking of middleware clusters 1-5 in the second sequence is searched, and the middleware clusters 1-5 that are ranked higher in the second sequence are selected as the operating middleware clusters for the system business. Of course, the middleware clusters can also be used as the main body, and the first and second scoring values ​​of each middleware cluster can be added together, and the middleware cluster with the higher added value can be selected as the optional option for the system business. Of course, other methods can also be used to recommend middleware clusters to the system based on the first and second scoring values ​​of each middleware cluster, and no specific restrictions are made here.

[0127] This embodiment proposes a method for selecting a cluster to be recommended from multiple middleware clusters, which can effectively select a suitable middleware cluster for a service, improve the utilization rate of the middleware cluster, and greatly reduce the time for middleware selection.

[0128] Figure 8 FIG. 1 is a structural diagram of a middleware cluster recommendation device according to an exemplary embodiment. Figure 8 As shown, in an exemplary embodiment, the middleware cluster recommendation device includes:

[0129] The matrix acquisition module 810 is configured to acquire the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster;

[0130] The factor matrix acquisition module 830 is configured to perform matrix decomposition processing on the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and to perform matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix;

[0131] The middleware cluster recommendation module 850 is configured to calculate a first rating value according to the second identification factor matrix and a second rating value according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first rating value and the second rating value.

[0132] This embodiment uses the above-structured device to obtain a business performance parameter factor matrix and an identification factor matrix from the business performance and inherent characteristics of the middleware cluster to score the middleware cluster, thereby providing a suitable middleware cluster for business needs based on the score, thereby effectively improving the utilization rate of the middleware cluster.

[0133] In one embodiment, the matrix acquisition module 810 includes:

[0134] A factor matrix acquisition unit configured to extract a third business performance parameter factor matrix and a third identification factor matrix from historical business performance data of the middleware cluster;

[0135] The scoring matrix acquisition unit is configured to multiply the third service performance parameter factor matrix and the third identification factor matrix to obtain a scoring matrix.

[0136] In one embodiment, the matrix acquisition module 810 includes:

[0137] a first factor acquisition unit configured to fix a first business performance parameter of the middleware cluster and determine at least one first business performance parameter factor corresponding to the first business performance parameter;

[0138] The first matrix acquisition unit is configured to generate a first service performance parameter factor matrix according to at least one first service performance parameter factor.

[0139] In one embodiment, the matrix acquisition module 810 includes:

[0140] A second factor acquisition unit is configured to fix the first identifier of the middleware cluster and determine at least one first identification factor corresponding to the first identifier;

[0141] The second matrix acquisition unit is configured to generate a second identification factor matrix according to at least one first identification factor.

[0142] In one embodiment, the middleware cluster recommendation module 850 includes:

[0143] a target service performance parameter acquisition unit configured to determine a target identifier through a second identifier factor matrix, and to determine a corresponding target service performance parameter through a second service performance parameter factor matrix;

[0144] The scoring value acquisition unit is configured to calculate a first scoring value according to the second identification factor matrix and the target service performance parameter, and to calculate a second scoring value according to the second service performance parameter factor matrix and the target identification.

[0145] In one embodiment, the target service performance parameter acquisition unit includes:

[0146] a target identification acquisition section configured to acquire at least one target identification factor from the second identification factor matrix to determine a corresponding target identification according to the at least one target identification factor; and

[0147] The target service performance parameter acquisition module is configured to acquire at least one target service performance parameter factor from the second service performance parameter factor matrix to determine a corresponding target service performance parameter according to the at least one target service performance parameter factor.

[0148] In one embodiment, the number of middleware clusters includes multiple, and the middleware cluster recommendation device further includes:

[0149] a sequence acquisition module configured to sort the first score values ​​and the second score values ​​corresponding to the plurality of middleware clusters respectively, and obtain a first sequence and a second sequence respectively;

[0150] The recommendation module is configured to obtain the first and second rating values ​​of the preset rankings in the first and second sequences respectively, and use the middleware clusters corresponding to the obtained first and second rating values ​​of the preset rankings as the middleware clusters to be recommended.

[0151] It should be noted that the middleware cluster recommendation apparatus provided in the above-described embodiment and the middleware cluster recommendation method provided in the above-described embodiment are based on the same concept. The specific manner in which each module and unit performs operations has been described in detail in the method embodiments and will not be repeated here. In actual applications, the middleware cluster recommendation apparatus provided in the above-described embodiment can, as needed, allocate the aforementioned functions to different functional modules, i.e., divide the internal structure of the apparatus into different functional modules to perform all or part of the functions described above. This is not a limitation herein.

[0152] An embodiment of the present application further provides an electronic device, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the middleware cluster recommendation method provided in the above-mentioned embodiments.

[0153] Figure 9 A schematic diagram of the structure of a computer system suitable for implementing an electronic device according to an embodiment of the present application is shown.

[0154] It should be noted that Figure 9 The computer system 1600 of the electronic device shown is only an example and should not limit the functions and scope of use of the embodiments of the present application.

[0155] like Figure 9As shown, computer system 1600 includes a central processing unit (CPU) 1601, which can perform various appropriate actions and processes according to the program stored in read-only memory (ROM) 1602 or the program loaded from storage portion 1608 into random access memory (RAM) 1603, such as executing the method in the above embodiment. Various programs and data required for system operation are also stored in RAM 1603. CPU 1601, ROM 1602 and RAM 1603 are connected to each other via bus 1604. Input / output (I / O) interface 1605 is also connected to bus 1604.

[0156] The following components are connected to the I / O interface 1605: an input section 1606 including a keyboard, a mouse, and the like; an output section 1607 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and speakers; a storage section 1608 including a hard disk; and a communication section 1609 including a network interface card such as a LAN (Local Area Network) card or a modem. The communication section 1609 performs communication processing via a network such as the Internet. A drive 1610 is also connected to the I / O interface 1605 as needed. Removable media 1611, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is installed in the drive 1610 as needed, so that computer programs read from the removable media can be installed in the storage section 1608 as needed.

[0157] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 1609, and / or installed from a removable medium 1611. When the computer program is executed by the central processing unit (CPU) 1601, the various functions defined in the system of the present application are executed.

[0158] It should be noted that the computer-readable medium shown in the embodiments of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a 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 above. In the present application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, which carries a computer-readable computer program. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. A computer program embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0159] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. Among them, each box in the flowchart or block diagram can represent a module, program segment, or part of the code, and the above-mentioned module, program segment, or part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0160] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. In some cases, the names of these units do not constitute limitations on the units themselves.

[0161] Another aspect of the present application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the aforementioned middleware cluster recommendation method. The computer-readable storage medium may be included in the electronic device described in the above embodiments, or may exist independently and not be incorporated into the electronic device.

[0162] Another aspect of the present application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the middleware cluster recommendation method provided in each of the above embodiments.

[0163] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. Ordinary technicians in this field can easily make corresponding changes or modifications based on the main ideas and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.

Claims

1. A method for recommending a middleware cluster, characterized in that: include: Obtaining a scoring matrix, a first business performance parameter factor matrix, and a first identification factor matrix corresponding to the middleware cluster; The step of obtaining the scoring matrix, the first business performance parameter factor matrix and the first identification factor matrix corresponding to the middleware cluster includes: extracting a third business performance parameter factor matrix and a third identification factor matrix from the historical business performance data of the middleware cluster; multiplying the third business performance parameter factor matrix by the third identification factor matrix to obtain the scoring matrix; Performing matrix decomposition processing between the first service performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and performing matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second service performance parameter factor matrix; A first scoring value is calculated according to the second identification factor matrix, and a second scoring value is calculated according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first scoring value and the second scoring value.

2. The method according to claim 1, characterized in that The step of obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster includes: Fixing a first business performance parameter of the middleware cluster, and determining at least one first business performance parameter factor corresponding to the first business performance parameter; The first service performance parameter factor matrix is ​​generated according to the at least one first service performance parameter factor.

3. The method according to claim 1, characterized in that The step of obtaining the scoring matrix, the first business performance parameter factor matrix, and the first identification factor matrix corresponding to the middleware cluster includes: Fixing a first identifier of the middleware cluster, and determining at least one first identification factor corresponding to the first identifier; The second identification factor matrix is ​​generated according to the at least one first identification factor.

4. The method according to claim 1, characterized in that: The calculating the first score value according to the second identification factor matrix, and the calculating the second score value according to the second service performance parameter factor matrix, include: Determine a target identifier through the second identifier factor matrix, and determine a corresponding target service performance parameter through the second service performance parameter factor matrix; The first score value is calculated according to the second identification factor matrix and the target service performance parameter, and the second score value is calculated according to the second service performance parameter factor matrix and the target identification.

5. The method according to claim 4, characterized in that The determining the target identifier by using the second identifier factor matrix, and determining the corresponding target service performance parameter by using the second service performance parameter factor matrix, includes: acquiring at least one target identification factor from the second identification factor matrix to determine a corresponding target identification according to the at least one target identification factor; and At least one target service performance parameter factor is obtained from the second service performance parameter factor matrix to determine a corresponding target service performance parameter according to the at least one target service performance parameter factor.

6. The method according to claim 1, characterized in that The number of middleware clusters includes multiple ones. After calculating the first score value according to the second identification factor matrix and calculating the second score value according to the second business performance parameter factor matrix, the method further includes: The first scoring values ​​and the second scoring values ​​corresponding to the plurality of middleware clusters are sorted respectively to obtain a first sequence and a second sequence respectively; The first and second scoring values ​​of the preset rankings in the first and second sequences are respectively obtained, and the middleware clusters corresponding to the obtained first and second scoring values ​​of the preset rankings are used as the middleware clusters to be recommended.

7. A middleware cluster recommendation device, characterized in that: include: A matrix acquisition module, configured to acquire a scoring matrix, a first business performance parameter factor matrix, and a first identification factor matrix corresponding to the middleware cluster; The matrix acquisition module includes a factor matrix acquisition unit and a scoring matrix acquisition unit, wherein the factor matrix acquisition unit is configured to extract a third business performance parameter factor matrix and a third identification factor matrix from the historical business performance data of the middleware cluster, and the scoring matrix acquisition unit is configured to multiply the third business performance parameter factor matrix with the third identification factor matrix to obtain the scoring matrix; a factor matrix acquisition module, configured to perform matrix decomposition processing on the first business performance parameter factor matrix and the scoring matrix to obtain a second identification factor matrix, and to perform matrix decomposition processing on the first identification factor matrix and the scoring matrix to obtain a second business performance parameter factor matrix; The middleware cluster recommendation module is configured to calculate a first rating value according to the second identification factor matrix and a second rating value according to the second business performance parameter factor matrix, so as to recommend a middleware cluster based on the first rating value and the second rating value.

8. An electronic device, characterized in that: include: one or more processors; A storage device, used to store one or more computer programs, when the one or more computer programs are executed by the one or more processors, enables the electronic device to implement the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that: Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor of a computer, the computer is caused to execute the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Task scheduling method of Ketle cluster server

    CN110888728A

  • Potential factor mixed recommendation method and device, equipment and computer storage medium

    CN113268670A