Information issuing adjustment method and device, equipment, storage medium and program product
By obtaining the dependency density and configuration utilization of the service cluster, the configuration distribution strategy of Istio was adjusted, which solved the problems of low performance and resource waste caused by full distribution of Istio, and achieved efficient and stable operation of business systems and resource optimization.
Patent Information
- Application Number
- CN202410339350.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-22
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2044-03-22
AI Technical Summary
In existing technologies, Istio suffers from performance degradation, resource waste, and high maintenance costs due to the full distribution of configuration information in service meshes. It also cannot effectively adjust configuration distribution strategies, resulting in a high risk of service anomalies.
By obtaining the dependency density value between various business services in the service cluster and the predicted utilization rate of configuration information, the configuration benefit value is determined. The configuration information distribution strategy is adjusted according to the benefit value, and a virtual points market mechanism is introduced to realize on-demand adjustment and distribution of configuration.
It improved the efficient and stable operation of the business system, avoided the waste of resources caused by redundant configuration, and achieved cost reduction and efficiency improvement of the service cluster.
Smart Images

Figure CN118802542B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of microservices technology, and in particular to an information delivery and adjustment method, apparatus, device, storage medium, and program product. Background Technology
[0002] Istio is an open-source service mesh technology that primarily implements non-intrusive service governance functionality that aligns with cloud-native principles. It mainly consists of a control plane and a data plane. The control plane needs to distribute the registration and discovery information and service governance rule configuration information of business systems to the Sidecar nodes of the data plane. By default, open-source Istio distributes all registration, discovery, and governance configuration information for all services within the entire mesh to the Sidecar, and any configuration change in the business cluster triggers a full configuration push. This full distribution of configuration information leads to problems such as low overall performance and wasted hardware resources.
[0003] When the number of Services in a business cluster reaches a certain scale, Istio's default full distribution of configuration information will lead to performance issues such as excessive Sidecar configuration space, too much invalid Sidecar configuration data, excessive Sidecar memory consumption, excessively long Sidecar startup time, and newly deployed applications remaining in a Not Ready state for extended periods. Currently, it is impossible to effectively maintain the dependencies between services, resulting in poor efficiency in adjusting configuration distribution strategies, leading to redundant configuration distribution, high service failure risk, high cluster maintenance costs, and resource waste. Summary of the Invention
[0004] The main objective of this invention is to provide an information distribution adjustment method, apparatus, device, storage medium, and program product, aiming to solve the technical problems of existing technologies that cannot effectively adjust configuration distribution strategies, resulting in high risk of service anomalies, high cluster maintenance costs, and resource waste due to redundant configuration distribution.
[0005] To achieve the above objectives, the present invention provides an information distribution adjustment method, the method comprising the following steps:
[0006] Obtain the density value of the dependency relationships between various business services in the service cluster;
[0007] The predicted utilization rate of the configuration information of the service cluster is obtained;
[0008] The configuration benefit value of each service is determined based on the density value and / or the predicted utilization rate.
[0009] The configuration information distribution strategy for the service cluster is adjusted based on the configuration benefit value.
[0010] Optionally, adjusting the configuration information distribution strategy for the service cluster based on the configuration benefit value includes:
[0011] Obtain the number of business services in the service cluster;
[0012] The target revenue value of the service cluster is determined based on the configuration revenue value of each service and the number of services.
[0013] Determine the threshold for changes in revenue based on the target revenue value;
[0014] The configuration benefit value of each service is compared with the benefit change threshold, and the configuration information distribution strategy of the service cluster is adjusted according to the comparison result.
[0015] Optionally, obtaining the density value of the dependency relationships between various business services in the service cluster includes:
[0016] Obtain the interface call relationships and the number of interface calls between various business services in the service cluster;
[0017] Construct a call relationship matrix based on the call relationship and the number of interface calls;
[0018] Obtain the cumulative number of interface calls to the business service in the service cluster within a preset period;
[0019] The overall utilization score of the service dependency relationship of each business service is determined based on the call relationship matrix and the cumulative number of interface calls.
[0020] The density of dependencies between various business services in the service cluster is determined based on the comprehensive utilization score.
[0021] Optionally, before determining the comprehensive utilization score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls, the method further includes:
[0022] Determine whether the ratio between the number of times the interface of the business service is called within a preset period and the cumulative number of times the interface of the business service is called in the service cluster is less than a preset comprehensive utilization rate threshold.
[0023] If the ratio is not less than the preset comprehensive utilization rate threshold, then the step of determining the comprehensive utilization rate score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls is executed.
[0024] If the ratio is less than the preset comprehensive utilization rate threshold, then the dependency request dataset of the business service is obtained, and it is determined whether the data distribution aggregation degree of the dependency request dataset meets the preset conditions.
[0025] If the degree of data distribution aggregation meets the preset conditions, then the comprehensive utilization rate score of the service dependency relationship of the business service is determined according to the preset score range.
[0026] Optionally, the predicted utilization rate of obtaining the configuration information of the service cluster includes:
[0027] Obtain the configuration information of the service cluster and distribute the data;
[0028] Based on the configuration information, data is distributed to construct a feature vector;
[0029] The feature vector is input into a pre-built neural network model to determine the resource saving information and resource consumption information of the configuration information to be issued;
[0030] The predicted utilization rate of the service cluster's configuration information is determined based on the resource saving information and resource consumption information.
[0031] Optionally, adjusting the configuration information distribution strategy for the service cluster based on the configuration benefit value includes:
[0032] Determine the time interval between the calculation time of the configured benefit value and the current time;
[0033] The decay weight of the configuration benefit value is determined based on the time interval;
[0034] The configured return value is adjusted according to the attenuation weight to obtain the target return value;
[0035] The configuration information distribution strategy for the service cluster is adjusted based on the target revenue value.
[0036] Furthermore, to achieve the above objectives, the present invention also proposes an information distribution adjustment device, the information distribution adjustment device comprising:
[0037] The density acquisition module is used to obtain the density value of the dependency relationship between various business services in the service cluster;
[0038] The utilization rate acquisition module is used to acquire the predicted utilization rate of the configuration information of the service cluster;
[0039] A configuration revenue calculation module is used to determine the configuration revenue value of each service based on the density value and / or the predicted utilization rate.
[0040] The information distribution adjustment module is used to adjust the configuration information distribution strategy of the service cluster according to the configuration benefit value.
[0041] Furthermore, to achieve the above objectives, the present invention also proposes an information delivery adjustment device, the device comprising: a memory, a processor, and an information delivery adjustment program stored in the memory and executable on the processor, the information delivery adjustment program being configured to implement the steps of the information delivery adjustment method described above.
[0042] In addition, to achieve the above objectives, the present invention also proposes a storage medium storing an information distribution adjustment program, wherein when the information distribution adjustment program is executed by a processor, it implements the steps of the information distribution adjustment method described above.
[0043] In addition, to achieve the above objectives, the present invention also provides a computer program product, the computer program product including an information distribution adjustment program, which, when executed by a processor, implements the steps of the information distribution adjustment method as described above.
[0044] This invention obtains the density value of the dependency relationships between various business services in a service cluster, and obtains the predicted utilization rate of the configuration information of the service cluster; based on the density value and / or the predicted utilization rate, it determines the configuration benefit value of each business service, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value; because this invention determines the configuration benefit value of each business service based on the density value between business services in the service cluster and the predicted utilization rate of the configuration information, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value, it determines the configuration distribution requirements of the service cluster by introducing the configuration benefit value, thereby accurately adjusting the configuration distribution strategy as needed, which not only ensures the efficient and stable operation of the business system, but also avoids the resource waste caused by redundant configuration, and realizes cost reduction and efficiency improvement of the service cluster. Attached Figure Description
[0045] Figure 1 This is a schematic diagram of the structure of the information distribution and adjustment device for the hardware operating environment involved in the embodiments of the present invention;
[0046] Figure 2 This is a flowchart illustrating the first embodiment of the information distribution and adjustment method of the present invention;
[0047] Figure 3 This is a flowchart illustrating the second embodiment of the information distribution and adjustment method of the present invention;
[0048] Figure 4 This is a flowchart illustrating the third embodiment of the information distribution and adjustment method of the present invention;
[0049] Figure 5 This is a schematic diagram of the hybrid neural network model structure in the third embodiment of the information distribution adjustment method of the present invention;
[0050] Figure 6 This is a structural block diagram of the first embodiment of the information distribution and adjustment device of the present invention.
[0051] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0052] It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the invention.
[0053] Reference Figure 1 , Figure 1 This is a schematic diagram of the hardware operating environment information distribution and adjustment device structure involved in the embodiments of the present invention.
[0054] like Figure 1 As shown, the information distribution and adjustment device may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may include a display screen or an input unit such as a keyboard; optionally, the user interface 1003 may also include a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wireless-Fidelity (Wi-Fi) interface). The memory 1005 may be high-speed random access memory (RAM) or stable non-volatile memory (NVM), such as a disk storage device. Optionally, the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
[0055] Those skilled in the art will understand that Figure 1 The structure shown does not constitute a limitation on the information delivery adjustment device, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0056] like Figure 1 As shown, the memory 1005, which serves as a storage medium, may include an operating system, a network communication module, a user interface module, and an information distribution and adjustment program.
[0057] exist Figure 1In the information distribution and adjustment device shown, the network interface 1004 is mainly used for data communication with the network server; the user interface 1003 is mainly used for data interaction with the user; the processor 1001 and the memory 1005 in the information distribution and adjustment device of the present invention can be set in the information distribution and adjustment device. The information distribution and adjustment device calls the information distribution and adjustment program stored in the memory 1005 through the processor 1001 and executes the information distribution and adjustment method provided in the embodiment of the present invention.
[0058] This invention provides an information distribution adjustment method, referring to... Figure 2 , Figure 2 This is a flowchart illustrating the first embodiment of the information distribution and adjustment method of the present invention.
[0059] In this embodiment, the information distribution adjustment method includes the following steps:
[0060] Step S10: Obtain the density value of the dependency relationship between each business service in the service cluster.
[0061] It should be noted that this embodiment can be applied to business clusters based on the Istio architecture. When the number of services in the business cluster reaches a certain scale, Istio's default full distribution of configuration information will lead to performance issues such as excessive sidecar configuration space, too much invalid sidecar configuration data, excessive sidecar memory consumption, excessively long sidecar startup time, and newly deployed applications remaining in a Not Ready state for extended periods. If several large services are deployed simultaneously and continuously, hundreds or thousands of events may be generated per second, which will inevitably lead to catastrophic production failures. Existing open-source Istio has serious performance problems in configuration distribution, resulting in a series of consequences, such as low hardware resource utilization, slow response speed, and poor platform availability. To address the above problems, this embodiment determines the configuration distribution requirements of the service cluster by introducing a configuration benefit value, thereby accurately adjusting the configuration distribution strategy as needed. This ensures the efficient and stable operation of the business system while avoiding resource waste caused by redundant configurations, achieving cost reduction and efficiency improvement for the service cluster.
[0062] It should be understood that the executing entity of this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device capable of performing the above functions. The following description uses an information distribution and adjustment device (hereinafter referred to as the distribution and adjustment device) as an example to illustrate this embodiment and the following embodiments.
[0063] It should be noted that the service cluster can be a Kubernetes cluster containing multiple business services. These business services can be service applications within the service cluster, or service nodes, etc. The dependencies mentioned above can be API call dependencies between business services. The density value represents the frequency of calls between two business services; a higher density score indicates more API calls within the statistical period, meaning more configuration information needs to be distributed to the sidecars of the two service applications to reduce call chain length and ensure API request efficiency. In other words, the higher the density of service dependencies, the higher the configuration benefit value.
[0064] Step S20: Obtain the predicted utilization rate of the configuration information of the service cluster.
[0065] It should be noted that the predicted utilization rate can be used to characterize the ratio of the resources saved by the configuration information after it is distributed and used to the resources consumed during the distribution and storage of the configuration information.
[0066] Understandably, when the predicted utilization rate is higher, it means that the resources saved when the system is used are greater than the resources consumed, and the configuration benefit value will increase; when the utilization rate is lower, it means that the resources saved when the system is used are less than the resources consumed, and the configuration benefit value will decrease.
[0067] Step S30: Determine the configuration revenue value of each service based on the density value and / or the predicted utilization rate.
[0068] It should be noted that after obtaining the density value of service dependencies and the predicted utilization rate of configuration information, the device can determine the configuration benefit value by averaging the two sets of data, or by considering either the density value or the predicted utilization rate separately. For example, the higher the density of service dependencies, the higher the configuration benefit value; the higher the predicted utilization rate, the more the configuration benefit value will increase.
[0069] It is understood that this embodiment can take a single business service in the entire service cluster of the service mesh as the basic unit, accumulate and calculate the comprehensive revenue of all services in the virtual trading market, and finally adjust the calculation rule coefficients in the automated on-demand distribution strategy based on the overall revenue.
[0070] Step S40: Adjust the configuration information distribution strategy of the service cluster according to the configuration benefit value.
[0071] It should be noted that this embodiment can abstract the business service cluster into a whole virtual points market, use individual virtual points to express a series of performance and efficiency-related behaviors in the market, then calculate the overall revenue of all business services in the virtual points market, and finally further automatically adjust the subsequent configuration information distribution strategy on demand based on the overall revenue, so as to ensure cost reduction and efficiency improvement of the entire service mesh system.
[0072] Understandably, virtual points are increased when the currently issued configuration information benefits the overall performance of the business service cluster, and decreased when it harms the overall performance of the business system. For example, if the configuration information stored locally in a business service of a certain business service cluster is used very infrequently, it indicates that the actual utilization rate of the issued configuration information is low, which is detrimental to the performance of the overall business system. In this case, it is considered an action to reduce virtual points. Similarly, if a business service does not have local storage but remotely accesses the global routing component, and the response time is significantly lower than the average response time, it indicates that the corresponding configuration information should have been issued but was not, which is also detrimental to the performance of the overall business system. In this case, it is considered an action to reduce virtual points.
[0073] It is understood that this embodiment can take a single business service in the entire business cluster of the service mesh as the basic unit, accumulate and calculate the comprehensive revenue of all business services in the virtual points market, and finally further automatically adjust the configuration information distribution strategy on demand based on the overall revenue, and specifically adjust the calculation rule coefficients in the distribution strategy.
[0074] In some embodiments, service dependencies and call frequencies can be obtained by collecting and analyzing link call information between business system services. After analysis according to certain rules, service dependency data that meets the conditions for virtual credit gain is automatically pushed to the Istio control plane. The Istio control plane component pushes xDS configuration information according to known service dependencies, realizing adaptive dynamic on-demand loading of sidecar configuration information for virtual credit gain. When a business system service application requests configuration information related to service dependencies that do not meet the conditions (virtual credit reduction), it will not be pushed. Instead, a common global routing component provides a configuration information query routing service. Furthermore, the sidecar configuration information of the business system is updated periodically according to certain rules, truly realizing adaptive dynamic on-demand loading of configuration information. At the same time, considering that the reference value of historical data decreases with age, the concept of time decay is introduced, enabling the overall solution to more accurately and dynamically adjust the distribution of configuration information, thereby improving system performance.
[0075] It should be noted that this embodiment introduces the overall virtual points revenue of the virtual points market to automatically adjust the configuration and distribution strategy on demand. This ensures the efficient and stable operation of the business system while avoiding resource waste caused by redundant configurations. The larger the scale of the business system adopting the cloud-native service mesh architecture and the more complex the call relationships, the more significant the cost reduction and efficiency improvement brought by this embodiment will be.
[0076] In its specific implementation, the calculation rules for the configuration benefit value of the virtual points market are as follows:
[0077] The fact that configuration information stored locally in a certain business service of a service cluster is actually used very infrequently is considered a behavior that reduces the value of configuration benefits.
[0078] If a business service has a significantly lower response time than the average response time when it accesses the global routing component remotely instead of local storage, this is considered a behavior that reduces the value of configuration benefits.
[0079] If the sidecar memory, CPU, and response time of a business service are higher than a certain percentage (e.g., 70%) of all business system services in the entire service mesh, they are considered a bonus; if they are lower than a certain percentage (e.g., 40%), they are considered a penalty.
[0080] For example, if service a in service cluster A initially has a total score of 100, within a certain period of time (e.g., one day), 10 points are deducted because the actual number of times the locally stored configuration information is used is less than 30% of the average number of times it is used. The sidecar memory, CPU and response time of service a are also deducted by 10 points because they are below a certain percentage (e.g., 70%). The final score is 80 points.
[0081] Furthermore, in order to accurately determine the service delivery requirements and adjust the delivery strategy as needed, step S40 above may include:
[0082] Step S41: Obtain the number of business services in the service cluster;
[0083] Step S42: Determine the target revenue value of the service cluster based on the configuration revenue value of each service and the number of services.
[0084] Step S43: Determine the threshold for change in revenue based on the target revenue value;
[0085] Step S44: Compare the configuration benefit value of each service with the benefit change threshold, and adjust the configuration information distribution strategy of the service cluster according to the comparison result.
[0086] It should be noted that the revenue change threshold can be the configuration revenue change threshold of the overall virtual credit market of the service cluster. The actual meaning of the revenue change threshold is to determine what proportion of the configuration information in the entire Kubernetes cluster can be sent to the sidecar locally.
[0087] Services that haven't had their configuration information distributed to the sidecar need to request a customized global routing component. Considering both resource conservation and ensuring the overall efficiency and stability of the entire cluster's sidecars, the setting of this threshold value is closely related to the total number of calls to the entire cluster and the availability of the global routing component. If this threshold is set too low, it will waste resources; if it's too high, it may lead to slow response times for business requests, or even cause the global routing component to crash, resulting in business paralysis. Therefore, a comprehensive consideration of various factors is necessary.
[0088] It is understandable that the aforementioned customized global routing component can be a routing component that stores all configuration information for all business system services across the entire Kubernetes cluster, providing configuration information request services for the entire cluster. When a business system service application does not have the required configuration information locally, it can request this component to obtain it. The purpose of this component is to provide a common global routing service for configuration actions that reduce virtual credits upon initial request or distribution, thereby ensuring the normal and efficient operation of business systems and improving the resource utilization and robustness of the entire service mesh Istio system.
[0089] It should be noted that the initial value of the threshold score is set in advance (e.g., 80%), and is subsequently adjusted based on the total comprehensive score of the entire service mesh business system in the previous unit of time. The calculation formula is: Threshold for revenue change in this unit of time = Threshold score of the previous unit of time * Total score of the virtual market * Prescribed coefficient (default setting, e.g., 30%).
[0090] Furthermore, in order to consider the changing impact of data decay over time and thus ensure the rationality of configuration adjustments, step S40 above may include:
[0091] Step S401: Determine the time interval between the calculation time of the configuration benefit value and the current time;
[0092] Step S402: Determine the decay weight of the configuration benefit value based on the time interval;
[0093] Step S403: Adjust the configured revenue value according to the attenuation weight to obtain the target revenue value;
[0094] Step S404: Adjust the configuration information distribution strategy of the service cluster based on the target revenue value.
[0095] It should be noted that this embodiment takes into account that the reference value of historical data decreases as time goes on, so it introduces the concept of time decay, assigning a smaller percentage to units of time that are older. This decays the impact of older data in the time series, making the most recent data have a greater influence and the influence of older data gradually decrease. The influence data is calculated using the following formula, and the target return value is determined based on the influence data.
[0096] Impact data = raw data value * e^(-decay_rate * Δt)
[0097] Here, Δt is the time difference, representing the time interval between the data point and the current time, which can be measured in units such as hours, minutes, or days. When Δt = 0, the attenuation weight is 1, which means that the weight of the current time point is completely preserved.
[0098] Here, e is the base of the natural logarithm, and decay_rate is a constant (set according to the specific system conditions and problem-specific analysis) that controls the rate of decay. A larger decay_rate value will cause the data to decay faster.
[0099] The function e^(-decay_rate*Δt) represents the decay weight. This exponential function decreases along the x-axis; the value gradually decreases as x increases. The further back in time, the greater the decay. The calculated decay weight is applied to the original data points. For a specific data point, its value is multiplied by the decay weight to determine its influence in the calculation. This means that more recent data points have a greater influence because their decay weight is closer to 1, while past data points gradually decrease in influence based on time difference.
[0100] By applying the concept of time decay, the influence of data can be naturally reduced over time, making recent data more representative. At the same time, the contribution of historical data can be appropriately considered, making the final target return value more reasonable, ensuring the accuracy of the adjustment strategy and improving the efficiency of configuration information distribution.
[0101] This embodiment obtains the density value of the dependency relationships between various business services in the service cluster, and obtains the predicted utilization rate of the configuration information of the service cluster; based on the density value and / or the predicted utilization rate, it determines the configuration benefit value of each business service, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value; since this embodiment determines the configuration benefit value of each business service based on the density value between business services in the service cluster and the predicted utilization rate of the configuration information, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value, it determines the configuration distribution requirements of the service cluster by introducing the configuration benefit value, thereby accurately adjusting the configuration distribution strategy as needed, which not only ensures the efficient and stable operation of the business system, but also avoids the resource waste caused by redundant configuration, and realizes cost reduction and efficiency improvement of the service cluster.
[0102] refer to Figure 3 , Figure 3 This is a flowchart illustrating the second embodiment of the information distribution and adjustment method of the present invention.
[0103] Based on the first embodiment described above, in this embodiment, step S10 further includes:
[0104] Step S101: Obtain the interface call relationship and the number of interface calls between various business services in the service cluster.
[0105] It should be noted that the interface call relationship can be a dependency relationship between related call interfaces of business services. For example, if service A calls the interface of service B, then service A has a dependency relationship with service B. The number of interface calls mentioned above can be the number of times that dependent business services call the interface of the dependent business service within the statistical period. The statistical period can be a preset time range, such as one day or seven days.
[0106] In some embodiments, the device can use a customized link tracing monitoring component, designed with a non-intrusive approach, to asynchronously monitor and collect link call information from the business system, based on Skyworking. Distributed link tracing is implemented using probes; analyzing call links and service topology information yields information such as service dependencies and the call frequency of each relationship, and the analyzed data is asynchronously notified to other customized components.
[0107] The device adjustment mechanism can also obtain relevant information and data about interface calls through a customized service dependency maintenance component. This component enables the maintenance and filtering of service dependencies. First, the service dependency data received from the customized link tracing and monitoring component is cleaned, filtering out middleware information such as Redis and MySQL. Then, each service dependency and its corresponding number of calls and response time within a unit of time are analyzed and processed according to certain rules to obtain changes in virtual points earnings, which are then saved to the database. Next, all service dependency information is periodically comprehensively analyzed to obtain a threshold for changes in virtual points earnings. Service dependencies exceeding this threshold are notified to the Istio control plane of the service mesh via the xDS protocol.
[0108] The role of the customized service dependency maintenance component is to filter service dependencies that can improve virtual points gains according to certain rules and pass them to the service mesh control plane, which then distributes configurations to the service nodes involved.
[0109] Step S102: Construct a call relationship matrix based on the call relationship and the number of interface calls.
[0110] It should be noted that the call relationship matrix can be an N×N matrix representing the number of business service calls and the call relationships.
[0111] It is understood that this embodiment uses an N×N matrix C to represent the process, where each element in the matrix is C{i,j}, and C{i,j} represents the number of times application i calls the interface of application j.
[0112] Step S103: Obtain the cumulative number of interface calls to the business service in the service cluster within a preset period.
[0113] It is understandable that the cumulative number of interface calls can be the number of times that business service application i makes interface calls to business service application j within a certain time period T.
[0114] Step S104: Determine the comprehensive utilization score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls.
[0115] Understandably, the overall utilization score of service dependencies for business services is calculated using the following formula:
[0116]
[0117] Among them, S ij S represents the total number of times application i makes API calls to application j within a certain time period of T days. ij The calculation is based on the following formula, Cij This represents the number of times business service i makes API calls to business service j within one day.
[0118]
[0119] Where S represents the total number of API calls made by N business services in the business service cluster within a certain time period of T days, as shown in the following formula:
[0120]
[0121] Where K represents the latest overall service dependency utilization threshold score.
[0122] Furthermore, to address scenarios with concentrated API call requests and ensure that configuration distribution needs are met during peak data periods, the following may be included before step S104:
[0123] Determine whether the ratio between the number of times the interface of the business service is called within a preset period and the cumulative number of times the interface of the business service is called in the service cluster is less than a preset comprehensive utilization rate threshold.
[0124] If the ratio is not less than the preset comprehensive utilization rate threshold, then the step of determining the comprehensive utilization rate score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls is executed.
[0125] If the ratio is less than the preset comprehensive utilization rate threshold, then the dependency request dataset of the business service is obtained, and it is determined whether the data distribution aggregation degree of the dependency request dataset meets the preset conditions.
[0126] If the degree of data distribution aggregation meets the preset conditions, then the comprehensive utilization rate score of the service dependency relationship of the business service is determined according to the preset score range.
[0127] It's important to note that if the number of calls between two services exceeds a pre-set threshold within a certain timeframe, then distributing configuration information is fine. However, there's a special scenario where, although the total number of calls within that period is relatively small, the requests are highly concentrated, exhibiting one or more peaks. Typical examples include flash sales or product promotions. Because the corresponding configuration file information is used multiple times in a short period, the configuration benefit value will increase. Such scenarios can be filtered out by assessing the dispersion of the data distribution.
[0128] Understandably, referring to the following formula, where sd is used to determine whether the clustering of the data distribution exceeds a threshold, sd is calculated by dividing the standard deviation of the dataset by the percentile threshold. This changing percentile value is used to determine whether the dispersion of different datasets meets the standard. If sd divided by the percentile is greater than 1, then sd is greater than that percentile (e.g., 90%), indicating that the clustering of the dataset is very high. This suggests the existence of one or more peaks, meeting the conditions for issuing configuration information. In this case, the score is directly assigned to the maximum interval value B. max This allows it to send configuration information to the corresponding service nodes.
[0129]
[0130] The SD calculation follows the formula below, where P% represents the percentile (the value at a specific percentage in data sorted in ascending order. For example, for a 90% threshold, it is the value at the top 90% of the data). This percentage needs to be preset based on the actual business situation.
[0131] sd = SD ÷ P%
[0132] Here, SD stands for Standard Deviation, which measures the degree of dispersion or variation between each data point in a dataset and its mean. A larger standard deviation indicates greater dispersion of the data points relative to the mean, meaning the data is more widely distributed. A standard deviation of zero indicates that all data points are perfectly consistent with the mean, with no variation. SD is calculated using the following formula, where xi represents the i-th data point. The mean of the dataset is represented by ; n represents the number of data points in the dataset.
[0133]
[0134] Step S105: Determine the density value of the dependency relationship between each business service in the service cluster based on the comprehensive utilization score.
[0135] Understandably, the higher the overall utilization score, the higher the density of dependencies between business services, that is, the higher the density of service dependencies, the higher the virtual points (i.e. configuration benefit value), and the higher the demand for configuration distribution.
[0136] This embodiment obtains the interface call relationships and the number of interface calls between various business services in the service cluster, constructs a call relationship matrix based on the call relationships and the number of interface calls, obtains the cumulative number of interface calls of the business services in the service cluster within a preset period, determines the comprehensive utilization score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls, and determines the density value of the dependency relationship between various business services in the service cluster based on the comprehensive utilization score. This enables accurate determination of the degree of service dependency between various business services in the cluster, thereby accurately obtaining the configuration information distribution requirements of business services and realizing on-demand adjustment of the configuration information distribution strategy.
[0137] refer to Figure 4 , Figure 4 This is a flowchart illustrating the third embodiment of the information distribution and adjustment method of the present invention.
[0138] Based on the above embodiments, in this embodiment, step S20, the method further includes:
[0139] Step S201: Obtain the configuration information of the service cluster and send the data.
[0140] It should be noted that the configuration information distribution data may include: the total amount of configuration information, the number of nodes through which the configuration information is distributed, the distribution channel type used when the configuration information is distributed, the business type corresponding to the configuration information, the number of services of the business type corresponding to the configuration information, and the frequency of service invocation of the business type corresponding to the configuration information.
[0141] Step S202: Construct a feature vector by sending data based on the configuration information.
[0142] It is understood that, in calculating the predicted utilization rate of configuration information, this embodiment obtains configuration information distribution data such as the total amount of configuration information, the number of nodes through which the configuration information is distributed, the type of distribution channel used when the configuration information is distributed, the business type corresponding to the configuration information, the number of services of the business type corresponding to the configuration information, and the service call frequency of the business type corresponding to the configuration information. After obtaining the above configuration information distribution data, these data are used to form corresponding feature vectors, and the feature vectors are input into the constructed neural network model.
[0143] Step S203: Input the feature vector into the pre-built neural network model to determine the resource saving information and resource consumption information of the configuration information to be issued.
[0144] It should be noted that, in order to better uncover the correlations between data in the feature vectors and thus improve the accuracy of the subsequent storage utilization rate, this embodiment constructs a hybrid neural network model combining convolutional neural networks and random forest neural networks. The neural network model structure is as follows: Figure 5 , Figure 5 This is a schematic diagram of the hybrid neural network model structure.
[0145] Understandably, in a hybrid neural network model, the convolutional network consists of the following layers: convolutional layers, max-pooling layers, connected layers, and fully connected layers. Convolutional layers contain multiple kernels used to compute different features based on the input data. Pooling layers take the maximum number of features from each region as input to the next layer, thereby reducing the dimensionality of the features and avoiding overfitting. In this scheme, after the feature vector is input into the hybrid neural network, the convolutional layer extracts the correlation between multiple data points in the feature vector and inputs the extracted features to the pooling layer. The pooling layer takes the maximum number of features from each of the multiple feature regions obtained by the convolutional layer as input to the connected layer. The connected layer mixes the features and inputs them to the fully connected layer, which then integrates the data and outputs it to the random forest network.
[0146] It should be noted that in the random forest network part, which includes multiple decision trees and the average calculation part that performs mean processing on the output results of the decision trees, a set of decision tree predictors h(x; δ) can be used. j This is represented by δ. Where x represents the input vector, δ j They are independent and identically distributed random vectors. Each δ replaces the original dataset. j All variables are fitted into a regression tree. For each node in each tree, the input variables are randomly considered. The final output is:
[0147]
[0148] Step S204: Determine the predicted utilization rate of the configuration information of the service cluster based on the resource saving information and resource consumption information.
[0149] Understandably, after features are input from the fully connected layers of a convolutional neural network to the decision tree of a random forest, the decision tree part will classify the features and input the decision value into the average calculation part. The average calculation part will calculate the average value and output the final predicted utilization rate.
[0150] This embodiment obtains the configuration information distribution data of the service cluster, constructs a feature vector based on the configuration information distribution data, and inputs the feature vector into a pre-built neural network model to determine the resource saving information and resource consumption information of the distributed configuration information. Based on the resource saving information and resource consumption information, the predicted utilization rate of the service cluster's configuration information is determined. Because this embodiment inputs the feature vector of the service cluster into the pre-built neural network model, it accurately obtains the resource saving and resource waste of the cluster configuration distribution, effectively avoiding the resource waste problem caused by redundant configuration distribution, and significantly improving the cluster resource utilization rate.
[0151] Furthermore, this embodiment of the invention also proposes a storage medium storing an information distribution adjustment program, which, when executed by a processor, implements the steps of the information distribution adjustment method described above.
[0152] Furthermore, this invention also proposes a computer program product, including an information distribution adjustment program, which, when executed by a processor, implements the steps of the information distribution adjustment method described above.
[0153] The specific implementation of the computer program product of the present invention is basically the same as the various embodiments of the above-described information distribution and adjustment method, and will not be repeated here.
[0154] Reference Figure 6 , Figure 6 This is a structural block diagram of the first embodiment of the information distribution and adjustment device of the present invention.
[0155] like Figure 6 As shown, the information distribution adjustment device proposed in this embodiment of the invention includes:
[0156] The density acquisition module 10 is used to acquire the density value of the dependency relationship between various business services in the service cluster;
[0157] The utilization rate acquisition module 20 is used to acquire the predicted utilization rate of the configuration information of the service cluster;
[0158] The configuration revenue calculation module 30 is used to determine the configuration revenue value of each service based on the density value and / or the predicted utilization rate.
[0159] The information distribution adjustment module 40 is used to adjust the configuration information distribution strategy of the service cluster according to the configuration benefit value.
[0160] Furthermore, the information distribution adjustment module 40 is also used to obtain the number of business services in the service cluster; determine the target revenue value of the service cluster based on the configuration revenue value of each business service and the number of business services; determine the revenue change threshold based on the target revenue value; compare the configuration revenue value of each business service with the revenue change threshold, and adjust the configuration information distribution strategy of the service cluster based on the comparison result.
[0161] Furthermore, the density acquisition module 10 is also used to acquire the interface call relationship and the number of interface calls between various business services in the service cluster; construct a call relationship matrix based on the call relationship and the number of interface calls; acquire the cumulative number of interface calls of the business services in the service cluster within a preset period; determine the comprehensive utilization score of the service dependency relationship of each business service according to the call relationship matrix and the cumulative number of interface calls; and determine the density value of the dependency relationship between various business services in the service cluster based on the comprehensive utilization score.
[0162] Furthermore, the density acquisition module 10 is also used to determine whether the ratio between the number of interface calls of the business service within a preset period and the cumulative number of interface calls of the business service in the service cluster is less than a preset comprehensive utilization threshold; if the ratio is not less than the preset comprehensive utilization threshold, then the step of determining the comprehensive utilization score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls is executed; if the ratio is less than the preset comprehensive utilization threshold, then the dependency request dataset of the business service is acquired, and it is determined whether the data distribution aggregation degree of the dependency request dataset meets a preset condition; if the data distribution aggregation degree meets the preset condition, then the comprehensive utilization score of the service dependency relationship of the business service is determined according to a preset score range.
[0163] Furthermore, the utilization rate acquisition module 20 is also used to acquire the configuration information distribution data of the service cluster; construct a feature vector based on the configuration information distribution data; input the feature vector into a pre-built neural network model to determine the resource saving information and resource consumption information of the distributed configuration information; and determine the predicted utilization rate of the configuration information of the service cluster based on the resource saving information and resource consumption information.
[0164] Furthermore, the information distribution adjustment module 40 is also used to determine the time interval between the calculation time of the configuration benefit value and the current time; determine the decay weight of the configuration benefit value based on the time interval; correct the configuration benefit value according to the decay weight to obtain a target benefit value; and adjust the configuration information distribution strategy of the service cluster based on the target benefit value.
[0165] This embodiment obtains the density value of the dependency relationships between various business services in the service cluster, and obtains the predicted utilization rate of the configuration information of the service cluster; based on the density value and / or the predicted utilization rate, it determines the configuration benefit value of each business service, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value; since this embodiment determines the configuration benefit value of each business service based on the density value between business services in the service cluster and the predicted utilization rate of the configuration information, and adjusts the configuration information distribution strategy of the service cluster according to the configuration benefit value, it determines the configuration distribution requirements of the service cluster by introducing the configuration benefit value, thereby accurately adjusting the configuration distribution strategy as needed, which not only ensures the efficient and stable operation of the business system, but also avoids the resource waste caused by redundant configuration, and realizes cost reduction and efficiency improvement of the service cluster.
[0166] Other embodiments or specific implementations of the information distribution and adjustment device of the present invention can be found in the above-described method embodiments, and will not be repeated here.
[0167] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.
[0168] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0169] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory / random access memory, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0170] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.
Claims
1. A method for adjusting information distribution, characterized in that, The information distribution adjustment method includes: Obtain the density value of the dependency relationship between each business service in the service cluster, wherein the density value represents the density of calls between two business services, and the larger the density value, the more interface calls occur within the statistical period; The predicted utilization rate of the configuration information of the service cluster is obtained. The predicted utilization rate represents the ratio of the resources saved by the configuration information after it is distributed and used to the resources consumed during the distribution and storage of the configuration information. The configuration benefit value of each service is determined based on the density value and / or the predicted utilization rate. The configuration information distribution strategy for the service cluster is adjusted based on the configuration benefit value.
2. The information distribution adjustment method as described in claim 1, characterized in that, The step of adjusting the configuration information distribution strategy for the service cluster based on the configuration benefit value includes: Obtain the number of business services in the service cluster; The target revenue value of the service cluster is determined based on the configuration revenue value of each service and the number of services. Determine the threshold for changes in revenue based on the target revenue value; The configuration benefit value of each service is compared with the benefit change threshold, and the configuration information distribution strategy of the service cluster is adjusted according to the comparison result.
3. The information distribution adjustment method as described in claim 1, characterized in that, The density value of the dependency relationships between various business services in the service cluster includes: Obtain the interface call relationships and the number of interface calls between various business services in the service cluster; Construct a call relationship matrix based on the call relationship and the number of interface calls; Obtain the cumulative number of interface calls to the business service in the service cluster within a preset period; The overall utilization score of the service dependency relationship of each business service is determined based on the call relationship matrix and the cumulative number of interface calls. The density of dependencies between various business services in the service cluster is determined based on the comprehensive utilization score.
4. The information distribution adjustment method as described in claim 3, characterized in that, Before determining the comprehensive utilization score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls, the method further includes: Determine whether the ratio between the number of times the interface of the business service is called within a preset period and the cumulative number of times the interface of the business service is called in the service cluster is less than a preset comprehensive utilization rate threshold. If the ratio is not less than the preset comprehensive utilization rate threshold, then the step of determining the comprehensive utilization rate score of the service dependency relationship of each business service based on the call relationship matrix and the cumulative number of interface calls is executed. If the ratio is less than the preset comprehensive utilization rate threshold, then the dependency request dataset of the business service is obtained, and it is determined whether the data distribution aggregation degree of the dependency request dataset meets the preset conditions. If the degree of data distribution aggregation meets the preset conditions, then the comprehensive utilization rate score of the service dependency relationship of the business service is determined according to the preset score range.
5. The information distribution adjustment method as described in claim 1, characterized in that, The predicted utilization rate of obtaining the configuration information of the service cluster includes: Obtain the configuration information of the service cluster and distribute the data; Based on the configuration information, data is distributed to construct a feature vector; The feature vector is input into a pre-built neural network model to determine the resource saving information and resource consumption information of the configuration information to be issued; The predicted utilization rate of the service cluster's configuration information is determined based on the resource saving information and resource consumption information.
6. The information distribution adjustment method as described in any one of claims 1 to 5, characterized in that, The step of adjusting the configuration information distribution strategy for the service cluster based on the configuration benefit value includes: Determine the time interval between the calculation time of the configured benefit value and the current time; The decay weight of the configuration benefit value is determined based on the time interval; The configured return value is adjusted according to the attenuation weight to obtain the target return value; The configuration information distribution strategy for the service cluster is adjusted based on the target revenue value.
7. An information distribution adjustment device, characterized in that, The information distribution and adjustment device includes: The density acquisition module is used to acquire the density value of the dependency relationship between various business services in the service cluster. The density value represents the density of calls between two business services. The larger the density value, the more interface calls occur within the statistical period. The utilization rate acquisition module is used to acquire the predicted utilization rate of the configuration information of the service cluster. The predicted utilization rate represents the ratio of the resources saved by the configuration information after it is distributed to the resources consumed during the distribution and storage of the configuration information. A configuration revenue calculation module is used to determine the configuration revenue value of each service based on the density value and / or the predicted utilization rate. The information distribution adjustment module is used to adjust the configuration information distribution strategy of the service cluster according to the configuration benefit value.
8. An information distribution and adjustment device, characterized in that, The information delivery adjustment device includes: a memory, a processor, and an information delivery adjustment program stored in the memory and executable on the processor, wherein the information delivery adjustment program is configured to implement the information delivery adjustment method as described in any one of claims 1 to 6.
9. A storage medium, characterized in that, The storage medium stores an information distribution adjustment program, which, when executed by a processor, implements the information distribution adjustment method as described in any one of claims 1 to 6.
10. A computer program product, characterized in that, The computer program product includes an information distribution adjustment program, which, when executed by a processor, implements the steps of the information distribution adjustment method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Business data processing method and device, equipment and storage medium
CN114971711A
Workflow automatic optimization system and method, computer equipment and storage medium
CN117592774A