Gray release method and device, computer readable storage medium and electronic equipment
By building grayscale clusters and full-scale clusters, using Gaussian distribution model scoring and dynamically adjusting the new version's volume-enhancing strategy, the problem of low real performance accuracy in grayscale release evaluation method is solved, quantitative evaluation and dynamic adjustment of the new version is achieved, and the reliability and user experience of software updates are improved.
Patent Information
- Application Number
- CN202510306641.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-14
- Publication Date
- 2025-07-18
AI Technical Summary
The existing grayscale release evaluation methods have low accuracy in evaluating the real performance of the new version, and cannot fully reflect the comprehensive performance and effect of the new version.
Build a grayscale cluster and a full-scale cluster, obtain the operating data of each business performance indicator, determine the associated parameters, use the Gaussian distribution model to perform indicator scoring, and adjust the volume-enhancing strategy of the new version based on the score, and determine the user type in combination with the multi-dimensional filtering mechanism to realize quantitative evaluation and dynamic adjustment of the new version.
It improves the accuracy and efficiency of grayscale releases, reduces the risk of business interruption caused by version updates, ensures that the new version is tested first on a small scale, and significantly improves the reliability and user experience of software updates.
Smart Images

Figure CN120335852A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of gray release, and more specifically, to a gray release method, device, computer-readable storage medium, and electronic device. Background Art
[0002] This deployment method of gray release allows the new version to be first used by a small group of user groups, usually randomly selected or selected based on specific conditions, while most other users continue to use the old version. Its purpose is to be able to test the functions and performance of the new version in a real environment before a full rollout, and timely discover and fix possible problems (such as bugs, performance bottlenecks, or user experience problems). If the new version performs well during the gray test and there are no major problems, the deployment scope will gradually expand until finally all users migrate to the new version. On the contrary, if serious problems are found, it can be quickly rolled back to the old version, only affecting a small number of users participating in the gray test, thus protecting the experience of most users and system stability.
[0003] Currently, the mainstream gray release switching methods in the industry are as follows: 1) Check the log information of the new version to check whether the request is successfully processed, whether the returned result is correct, whether there are abnormal errors, etc. (Patent Publication No.: CN117874745A) to decide whether to switch; 2) Collect the "conformance rate" of each monitoring index from the new version application. These monitoring indexes can include but are not limited to error rate, performance indexes, user behavior, etc., and each index has its corresponding "conformance rate", that is, the degree of consistency between the actual performance and the expected performance (Patent Publication No.: CN117724755A) for deciding whether to switch to the new version.
[0004] The gray release evaluation method of the prior art only focuses on these isolated indexes, while ignoring the comprehensive influence of other indexes, resulting in it being difficult to comprehensively reflect the true performance and effect of the new version. Summary of the Invention
[0005] The main purpose of this application is to provide a gray release method, device, computer-readable storage medium, and electronic device, so as to at least solve the problem that the accuracy of evaluating the true performance of the new version in the existing gray release evaluation method is relatively low.
[0006] To achieve the above object, according to one aspect of the present application, a gray release method is provided, including: a configuration step: constructing a gray cluster according to the system resource status, and configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the system includes the gray cluster and the full-scale cluster, the gray cluster runs a new version of the software, and the full-scale cluster runs an old version of the software; an acquisition step: respectively acquiring the operation data of the business performance indicators of the gray cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters characterize the interaction relationship between the business performance indicators; an adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, and inputting the operation data of the gray cluster into the Gaussian distribution model to obtain the index scores of the business performance indicators of the new version of the software, and adjusting the release of the new version of the software according to each index score.
[0007] Optionally, inputting the operation data of the gray cluster into the Gaussian distribution model to obtain the index scores of the business performance indicators of the new version of the software includes: determining the index means of the business performance indicators of the gray cluster according to the operation data of the gray cluster, and performing normalization processing on the index means of the business performance indicators to obtain the index values of the business performance indicators, where the business performance indicators include the transaction success rate, transaction response time, CPU occupancy rate, and memory usage rate; inputting each index value into the Gaussian distribution model to obtain the index weights of the business performance indicators, and using the harmonic mean to determine the index scores of the business performance indicators of the new version of the software according to each index weight.
[0008] Optionally, adjusting the release of the new version of the software according to each index score includes: determining the comprehensive evaluation score of the new version of the software according to each index score, and constructing multiple release threshold intervals, where each release threshold interval corresponds to a different release strategy; determining the release strategy of the new version of the software according to the comprehensive evaluation score and the release threshold interval.
[0009] Optionally, after determining the comprehensive evaluation score of the new software version based on the scores of each of the indicators, the method further includes: determining whether each of the indicator scores is greater than the set threshold of each of the service performance indicators; in the case where it is determined that at least one of the indicator scores is less than or equal to the set threshold, generating a first prompt message for prompting that adjustments need to be made to the new software version; in the case where it is determined that each of the indicator scores is greater than each of the set thresholds and it is determined that the comprehensive evaluation score is greater than the upper limit value of the maximum release threshold range, generating a second prompt message for prompting that the new software version has completed the gray release and the old software version can be upgraded to the new software version.
[0010] Optionally, after adjusting the release of the new software version according to the scores of each of the indicators, the method further includes: a debugging processing step: debugging the new software version according to the comprehensive evaluation score and the indicator scores of each of the service performance indicators; repeatedly executing the obtaining step, the adjusting step, and the debugging processing step until it is detected that each of the indicator scores is greater than each of the set thresholds and the comprehensive evaluation score is greater than the upper limit value of the maximum release threshold range.
[0011] Optionally, after determining the comprehensive evaluation score of the new software version based on the scores of each of the indicators, the method further includes: in the case where it is detected that the comprehensive evaluation score is lower than the lowest score threshold, transferring all the release of the new software version to the old software version.
[0012] Optionally, before configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, the method includes: determining the user types based on the software product characteristics and the software target user group in combination with a multi-dimensional screening mechanism, where the multi-dimensional screening mechanism includes user ID, user geographical location, and user account attributes.
[0013] According to another aspect of the present application, a gray release device is provided, including: a configuration unit for performing a configuration step: constructing a gray cluster according to the system resource status, and configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the system includes the gray cluster and a full-scale cluster, the gray cluster runs a new version of the software, and the full-scale cluster runs an old version of the software; an acquisition unit for performing an acquisition step: respectively acquiring the operation data of the business performance indicators of the gray cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters characterize the interaction relationship between the business performance indicators; an adjustment unit for performing an adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, inputting the operation data of the gray cluster into the Gaussian distribution model, obtaining the index scores of the business performance indicators of the new version of the software, and adjusting the release volume of the new version of the software according to the index scores.
[0014] According to still another aspect of the present application, a computer-readable storage medium is provided. The computer-readable storage medium includes a stored program, where, when the program runs, it controls the device where the computer-readable storage medium is located to execute any one of the gray release methods.
[0015] According to yet another aspect of the present application, an electronic device is provided, including: one or more processors, a memory, and one or more programs, where the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include those for executing any one of the gray release methods.
[0016] Applying the technical solution of the present application, the configuration steps are as follows: a gray-scale cluster is constructed according to the system resource status, and the user types accessing the gray-scale cluster are configured to direct specific user traffic to the gray-scale cluster. Herein, the system includes a gray-scale cluster and a full-scale cluster, the gray-scale cluster runs the new version of the software, and the full-scale cluster runs the old version of the software; the acquisition steps are as follows: the operation data of the business performance indicators of the gray-scale cluster and the full-scale cluster are respectively acquired, and the correlation parameters of various business performance indicators are determined, where the correlation parameters represent the interaction relationship between the business performance indicators; the adjustment steps are as follows: a Gaussian distribution model is constructed according to the operation data of the full-scale cluster and the correlation parameters, and the operation data of the gray-scale cluster are input into the Gaussian distribution model to obtain the index scores of the business performance indicators of the new version of the software, and the release of the new version of the software is adjusted according to the index scores. By constructing a gray-scale cluster and a full-scale cluster, the release of the new version of the software can be effectively controlled, ensuring that the new version is first tested in a small range and avoiding the system risks that may be brought about by direct full-scale update. By scoring the business performance indicators through the Gaussian distribution model and determining the release strategy in combination with the index scores, the quantitative evaluation and dynamic adjustment of the performance of the new version are realized, improving the accuracy and efficiency of gray-scale release, significantly enhancing the reliability and user experience of software update, reducing the risk of business interruption caused by version update, and solving the problem that the existing gray-scale release evaluation method has a low accuracy in evaluating the true performance of the new version. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings forming a part of this application are used to provide a further understanding of the application. The illustrative embodiments of the application and their descriptions are used to explain the application and do not constitute an improper limitation of the application. In the drawings:
[0018] Figure 1 The hardware structure block diagram of a mobile terminal for executing a gray-scale release method provided in an embodiment of the present application is shown;
[0019] Figure 2 The flowchart of a gray-scale release method provided in an embodiment of the present application is shown;
[0020] Figure 3 The system architecture diagram for deploying the new version of the software provided in an embodiment of the present application is shown;
[0021] Figure 4 The system architecture diagram for configuring the user types of the new version of the software provided in an embodiment of the present application is shown;
[0022] Figure 5 The system architecture diagram for upgrading the old version of the software to the new version of the software provided in an embodiment of the present application is shown;
[0023] Figure 6The system architecture diagram of system fallback provided according to an embodiment of the present application is shown;
[0024] Figure 7 The structural block diagram of a grayscale release device provided according to an embodiment of the present application is shown.
[0025] Among them, the above-mentioned drawings include the following reference numerals:
[0026] 102, processor; 104, memory; 106, transmission device; 108, input / output device. Detailed implementation manners
[0027] It should be noted that, without conflict, the embodiments in the present application and the features in the embodiments may be combined with each other. The present application will be described in detail below with reference to the drawings and in combination with the embodiments.
[0028] In order to enable those skilled in the art to better understand the solution of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0029] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and do not have to be used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so as to describe the embodiments of the present application here. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device including a series of steps or units does not have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0030] As introduced in the background art, there is a problem that the accuracy of evaluating the true performance of a new version in the existing grayscale release evaluation method is relatively low. To solve the problem that the accuracy of evaluating the true performance of a new version in the existing grayscale release evaluation method is relatively low, the embodiments of the present application provide a grayscale release method, device, computer-readable storage medium and electronic device.
[0031] The technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention.
[0032] The method embodiments provided in the embodiments of the present application can be executed on a mobile terminal, a computer terminal, or a similar computing device. Taking running on a mobile terminal as an example, Figure 1 is a hardware structure block diagram of a mobile terminal for a gray release method according to an embodiment of the present invention. As Figure 1 shown, the mobile terminal may include one or more ( Figure 1 only one is shown in the figure) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data. Among them, the above mobile terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those of ordinary skill in the art can understand that Figure 1 the structure shown is only schematic and does not limit the structure of the above mobile terminal. For example, the mobile terminal may further include more or fewer components than Figure 1 shown in the figure, or have a different configuration from Figure 1 shown in the figure.
[0033] The memory 104 can be used to store computer programs. For example, software programs and modules of application software, such as the computer program corresponding to the gray release method in the embodiments of the present invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, implements the above method. The memory 104 may include a high-speed random access memory, and may further include a non-volatile memory, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories. In some instances, the memory 104 may further include a memory remotely disposed relative to the processor 102, and these remote memories may be connected to the mobile terminal through a network. Examples of the above network include, but are not limited to, the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof. The transmission device 106 is used to receive or send data via a network. A specific example of the above network may include a wireless network provided by a communication provider of the mobile terminal. In one instance, the transmission device 106 includes a network adapter (Network Interface Controller, abbreviated as NIC), which can be connected to other network devices through a base station and thus communicate with the Internet. In one instance, the transmission device 106 may be a radio frequency (Radio Frequency, abbreviated as RF) module, which is used to communicate with the Internet wirelessly.
[0034] In this embodiment, a gray release method running on a mobile terminal, a computer terminal or a similar computing device is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions. And although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than here.
[0035] Figure 2 It is a flowchart of the gray release method according to an embodiment of the present application. As Figure 2 shown, the method includes the following steps:
[0036] Step S201, configuration step: construct a gray cluster according to the system resource status, and configure the user types accessing the above gray cluster to direct specific user traffic to the above gray cluster, where the system includes the above gray cluster and a full-scale cluster, the above gray cluster runs a new version of the software, and the above full-scale cluster runs an old version of the software;
[0037] Specifically, according to the current system resource status, reasonably allocate resources such as servers and networks to the gray cluster to ensure that the new version has sufficient resources to support, and deploy the new version application on the gray cluster nodes. Configure the user types at the access layer to direct specific user traffic to the gray cluster, ensuring that while the new and old versions run in parallel, the new version can withstand the test of real traffic.
[0038] Step S202, acquisition step: respectively acquire the operation data of the business performance indicators of the above gray cluster and the above full-scale cluster, and determine the correlation parameters of various above business performance indicators, where the above correlation parameters characterize the interaction relationship between the above business performance indicators;
[0039] Among them, the operation data includes transaction success rate, response time, CPU occupancy rate, memory usage rate, etc.
[0040] Specifically, in order to reflect the interaction between the indicators, a correlation parameter ε (-1≤σ≤1) is defined for each monitoring indicator. This parameter is set according to the importance of the indicators and the dependence relationship between them. The positive and negative values of the parameter can be used to adjust the positive or negative impact of the indicators to ensure that the trade-off between the indicators can be correctly reflected during comprehensive evaluation. Here, take the TPS (transaction processing capacity) and CPU resource occupancy indicators as an example:
[0041] If the new version significantly increases the CPU occupancy while improving the TPS (transaction processing capacity), it may mean that although the processing capacity is enhanced, the consumption of system resources also increases. At this time, a negative interaction parameter can be set for the CPU occupancy to reduce its weight in the evaluation. Because if the CPU occupancy is too high under high TPS, it may lead to system instability. On the contrary, if the new version improves the TPS while the CPU occupancy does not increase significantly or even is optimized, we should give a small positive interaction parameter to the CPU occupancy to reflect its positive impact on the system.
[0042] Step S203, adjustment step: Construct a Gaussian distribution model according to the operation data of the above full-scale cluster and the above correlation parameters, input the operation data of the above gray-scale cluster into the above Gaussian distribution model to obtain the index scores of each of the above business performance indicators of the above software new version, and adjust the release volume of the above software new version according to each of the above index scores.
[0043] Specifically, in this way, the new version can be preliminarily tested and evaluated without affecting most users, which is applicable to scenarios such as large Internet companies and financial service institutions that need to frequently update software but cannot tolerate major system failures.
[0044] Through this embodiment, the configuration step: Construct a gray-scale cluster according to the system resource status, and configure the user types accessing the gray-scale cluster to direct specific user traffic to the gray-scale cluster, where the system includes a gray-scale cluster and a full-scale cluster, the gray-scale cluster runs the software new version, and the full-scale cluster runs the software old version; the acquisition step: respectively obtain the operation data of the business performance indicators of the gray-scale cluster and the full-scale cluster, and determine the correlation parameters of various business performance indicators, where the correlation parameters represent the interaction relationship between the business performance indicators; the adjustment step: Construct a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, input the operation data of the gray-scale cluster into the Gaussian distribution model to obtain the index scores of each business performance indicator of the software new version, and adjust the release volume of the software new version according to each index score. By constructing a gray-scale cluster and a full-scale cluster, the release volume of the software new version can be effectively controlled, ensuring that the new version is first tested in a small range and avoiding the system risks that may be brought by direct full-scale update. By scoring the business performance indicators through the Gaussian distribution model and determining the release strategy in combination with the index scores, the quantitative evaluation and dynamic adjustment of the new version performance are realized, improving the accuracy and efficiency of the gray release, significantly enhancing the reliability and user experience of the software update, reducing the risk of business interruption caused by version update, and solving the problem that the existing gray release evaluation method has a low accuracy in evaluating the true performance of the new version.
[0045] In the specific implementation process, the operation data of the above gray-scale cluster is input into the above Gaussian distribution model to obtain the index scores of each of the above business performance indicators of the above software new version, including: determining the index mean of each of the above business performance indicators of the above gray-scale cluster according to the operation data of the above gray-scale cluster, and performing normalization processing on the index mean of each of the above business performance indicators to obtain the index values of each of the above business performance indicators, where the above business performance indicators include transaction success rate, transaction response time, CPU occupancy rate, and memory usage rate; inputting each of the above index values into the above Gaussian distribution model to obtain the index weights of each of the above business performance indicators, and using the harmonic mean to determine the above index scores of each of the above business performance indicators of the above software new version according to each of the above index weights.
[0046] Based on the Gaussian distribution (normal distribution) model, weights are calculated for each indicator. This method aims to reflect the stability and reliability of the indicator values. Specifically, first, the indicator data of the old version of the application over a period of time is collected, and the mean and standard deviation of the indicators are calculated. Then, the indicator mean of the new version within the same time period is substituted into the Gaussian distribution function, and the value of the probability density function obtained through calculation is used as the weight of the new version for this indicator. The closer the indicator value is to the historical mean, the higher its stability and the greater the weight, indicating that the performance of this indicator is closer to the expectation. This method can more accurately evaluate the performance of the new version, especially in high-concurrency and high-load environments such as e-commerce big promotions and online games, and can timely detect potential performance bottlenecks.
[0047] Specifically, adjusting the release volume of the above software new version according to each of the above index scores includes: determining the comprehensive evaluation score of the above software new version according to each of the above index scores, and constructing multiple release threshold intervals, where each of the above release threshold intervals corresponds to a different release strategy; determining the above release strategy of the above software new version according to the above comprehensive evaluation score and the above release threshold intervals.
[0048] Since the direct average may be affected by extreme values, this method uses the harmonic mean to comprehensively score each indicator. The harmonic mean can effectively balance the differences between different indicators, especially when the value of a certain indicator is too low, it avoids its excessive dragging down of the overall evaluation. Each standardized indicator value is weighted according to its weight, and finally a comprehensive score is calculated.
[0049] Based on the comprehensive evaluation score, a series of release threshold ranges are set, and each range corresponds to a different release strategy. If the comprehensive score falls within a certain threshold range, a target release value will be determined accordingly to guide the gradual promotion of the new version. If the score is lower than expected, the system will trigger an alarm, indicating that adjustments or rollbacks need to be made to the new version to avoid potential risks. This dynamic adjustment mechanism can gradually increase the release volume according to the actual performance of the new version, reducing risks, and is applicable to the agile development model with a short software development cycle and frequent iterations.
[0050] More specifically, after determining the comprehensive evaluation score of the new software version according to the scores of the above-mentioned indicators, the method further includes: determining whether the scores of all the above-mentioned indicators are greater than the set thresholds of the above-mentioned business performance indicators; in the case of determining that at least one of the above-mentioned indicator scores is less than or equal to the above-mentioned set threshold, generating a first prompt message, where the first prompt message is used to prompt that adjustments need to be made to the new software version; in the case of determining that the scores of all the above-mentioned indicators are greater than the above-mentioned set thresholds, and determining that the comprehensive evaluation score is greater than the upper limit value of the maximum release threshold range, generating a second prompt message, where the second prompt message is used to prompt that the new software version has completed the gray release, and the old software version can be upgraded to the new software version.
[0051] This threshold setting and prompt mechanism can help the development team respond quickly, adjust the new version in a timely manner, avoid the impact of performance problems on users, and is applicable to online services that require high attention to user experience.
[0052] Furthermore, after adjusting the release volume of the new software version according to the scores of the above-mentioned indicators, the method further includes: a debugging processing step: debugging the new software version according to the comprehensive evaluation score and the indicator scores of the above-mentioned business performance indicators; executing the above-mentioned acquisition step, the above-mentioned adjustment step, and the above-mentioned debugging processing step multiple times until it is detected that the scores of all the above-mentioned indicators are greater than the above-mentioned set thresholds, and the comprehensive evaluation score is greater than the upper limit value of the maximum release threshold range.
[0053] This method dynamically adjusts the release volume of the new version according to the real-time evaluation results until the new version passes all tests and meets the conditions for full promotion. During this period, if the new version fails to meet the requirements in any indicator, the system will immediately adjust the strategy to prevent the problem from expanding. The whole process is highly automated, reducing manual intervention, accelerating the problem discovery and response speed, and at the same time improving the efficiency and security of gray release. Through such a mechanism, it can be ensured that the new version undergoes strict testing and verification before full promotion, minimizing the impact on users and system risks. This loop debugging and evaluation mechanism can ensure that the new version reaches the best state before official release and is applicable to enterprise-level applications with high software quality requirements.
[0054] Further, after determining the comprehensive evaluation score of the new version of the software according to the scores of the above indicators, the method further includes: when it is detected that the comprehensive evaluation score is lower than the lowest score threshold, all the release of the new version of the software is transferred to the old version of the software.
[0055] If at any time the evaluation score is lower than the set minimum threshold or does not meet the expected standard, the system will automatically trigger a fallback step. This includes stopping the traffic diversion to the new version at the access layer, redirecting all traffic back to the old version, and possibly taking the new version application offline for further debugging and repair. This fallback mechanism can quickly revert to the old version when major problems occur in the new version, avoiding business interruption, and is applicable to industries such as finance and healthcare that require high business continuity.
[0056] Specifically, before configuring the user types accessing the above grayscale cluster to direct specific user traffic to the above grayscale cluster, the method includes: determining the above user types based on software product characteristics and the software target user group, in combination with a multi-dimensional screening mechanism, where the above multi-dimensional screening mechanism includes user ID, user geographical location, and user account attributes.
[0057] Based on product characteristics and the target user group, this method determines the user group participating in the grayscale test through a multi-dimensional screening mechanism (such as user ID, geographical location, account attributes), ensuring that the test data is highly representative and can truly reflect the performance of the new version in actual scenarios.
[0058] This multi-dimensional screening mechanism can ensure that the user samples of the grayscale test are representative and is applicable to scenarios that require a comprehensive evaluation of the performance and stability of the new version, such as globally served and multi-language supported software products.
[0059] In order to enable those skilled in the art to more clearly understand the technical solution of the present application, the implementation process of the grayscale release method of the present application will be described in detail below in combination with specific embodiments.
[0060] Grayscale release is to reduce the risk when the new version is launched. By gradually introducing the new version, observing business and system indicators, and setting corresponding thresholds for individual indicators, it is decided whether to fully switch to the new version based on the size relationship between the indicators and the thresholds.
[0061] However, if only a single indicator is considered without a comprehensive evaluation in combination with multiple indicators, there will be a series of significant drawbacks:
[0062] 1) Information one-sidedness: Focusing only on a single metric means that we understand and evaluate the performance of the new version from only one dimension. Such one-dimensional evaluation often fails to comprehensively reflect the true performance and effects of the new version. For example, if we only focus on performance improvement and ignore the transaction success rate, it may lead to the situation that although the new version runs faster, users may feel inconvenient during use.
[0063] 2) Insufficient risk identification: There are often intricate connections between different metrics, and a change in one metric may affect the performance of other metrics. If we only focus on a single metric, we may not be able to detect the potential problems and risks in the new version in a timely manner. For instance, simply pursuing high concurrency while ignoring the system stability may result in the system crashing under high load.
[0064] 3) Increased risk of decision-making errors: Decisions based on a single metric are often overly simplistic and one-sided, which increases the risk of decision-making errors. Because the performance of the new version may not be consistent across different metrics, sometimes an improvement in certain metrics may come at the expense of other metrics. If we ignore this trade-off relationship, we may make wrong decisions.
[0065] 4) Lack of long-term perspective: Considering only a single metric may cause us to overlook the long-term performance and effects of the new version. Some metrics may perform well in the short term but may have problems in the long run. Therefore, we need to comprehensively consider multiple metrics in order to better evaluate the long-term stability and sustainability of the new version.
[0066] This embodiment relates to a specific gray release method, which specifically includes the following steps:
[0067] Step S1: Determine the test object: Based on product characteristics and the target user group, determine the user group participating in the gray test through a multi-dimensional screening mechanism (such as user ID, geographical location, account attributes) to ensure that the test data is highly representative and can truly reflect the performance of the new version in the actual scenario.
[0068] Step S2: Allocate resources: According to the current system resource status, reasonably allocate resources such as servers and networks to the gray cluster to ensure that the new version has sufficient resource support, and deploy the new version application on the gray cluster nodes.
[0069] Step S3: Deploy the system: Deploy the new version, and at this time the system architecture is as Figure 3 shown.
[0070] Step S4: Configure the user type at the access layer, as Figure 4 shown, direct specific user traffic to the gray cluster to ensure that while the new and old versions run in parallel, the new version can withstand the test of real traffic.
[0071] Step S5: Collect metrics: The system monitors business metrics (such as transaction success rate, response time) and system performance metrics (CPU occupancy, memory usage, etc.) in real time, and collects these metric data from the old and new versions. Here, it is assumed that n metrics m are collected. n : {m1, m2... m n}.
[0072] Step S6: Introduce a comprehensive metric scoring calculation model:
[0073] 1), To reflect the interaction between metrics, an association parameter ε (-1 ≤ σ ≤ 1) is defined for each monitored metric. This parameter is set according to the importance of the metric and the dependency relationship between them. The positive and negative values of the parameter can be used to adjust the positive or negative impact of the metric, ensuring that the trade-off between metrics can be correctly reflected during comprehensive evaluation. Here, take the TPS (transaction processing capacity) and CPU resource occupancy metrics as an example:
[0074] If the new version improves the TPS (transaction processing capacity) while significantly increasing the CPU occupancy rate, this may mean that although the processing capacity is enhanced, the consumption of system resources also increases. At this time, a negative interaction parameter can be set for the CPU occupancy rate to reduce its weight in the evaluation. Because, if the CPU occupancy rate is too high under high TPS, it may lead to system instability. On the contrary, if the new version improves the TPS while the CPU occupancy rate does not increase significantly or even improves, we should give a small positive interaction parameter to the CPU occupancy rate to reflect its positive impact on the system.
[0075] 2), Based on the Gaussian distribution (normal distribution) model, calculate the weight for each metric. This step aims to reflect the stability and reliability of the metric values. The specific operation is to first collect the metric data of the old version application over a period of time, calculate the mean (μ) and standard deviation (σ) of the metric. Then, substitute the metric mean of the new version within the same time period into the Gaussian distribution function, and use the calculated probability density function value as the weight of the new version for this metric. The closer the metric value is to the historical mean, the higher its stability, and the greater the weight, indicating that the performance of this metric is closer to the expectation.
[0076] The following is an overview of the calculation steps:
[0077] Take the metric m1 as an example, count the metric values under the old version application within a sampling period, and calculate its mean μ m1 and standard deviation σ m1 , The mean is the average of all old version metrics m1 within the statistical sampling period, and the standard deviation is the difference between the old version metric m1 and the average within the statistical sampling period;
[0078] where m 1i is the value of the sampling point i of the index m1 within one sampling period in the old version;
[0079]
[0080] Statistically analyze the index m1 under the application of the new version within one sampling period, and calculate its average value:
[0081] where m 1j is the value of the sampling point i of the index m1 within one sampling period in the new version.
[0082] Substitute the average value of the index of the new version into the Gaussian distribution model constructed according to the index data of the old version, calculate the value of its probability density function, and use this as the performance weight of the new version on this index:
[0083]
[0084] 3) In order to ensure that indexes with different magnitudes and units can be directly compared, the maximum-minimum normalization method is used to normalize each index. By calculating the average value, minimum value, and maximum value of each index, the original index values are converted to a unified scale, ensuring the fairness and rationality of the comparison between indexes. Taking the index m1 as an example:
[0085] where μm1 is the average value of the index m1 in the most recent sampling period. To avoid the influence of errors, m 1min and m 1max are the minimum and maximum values of m1 statistically analyzed over multiple sampling periods.
[0086] 4) Since the direct average may be affected by extreme values, the present invention uses the harmonic mean to comprehensively evaluate the scores of each index. The harmonic mean can effectively balance the differences between different indexes, especially when the value of a certain index is too low, it avoids the excessive reduction of the overall evaluation. Each normalized index value is weighted according to its weight, and finally a comprehensive score is calculated, which reflects the comprehensive performance of the new version in all consideration dimensions:
[0087] Step S7: Evaluation score:
[0088] Based on the comprehensive evaluation score, a series of release threshold intervals are set, and each interval corresponds to a different release strategy. If the comprehensive score falls within a certain threshold interval, a target release value will be determined accordingly to guide the gradual promotion of the new version. If the score is lower than the expected value, the system will trigger an alarm, indicating that adjustments or rollbacks need to be made to the new version to avoid potential risks.
[0089] Step S8: Adding a new version: If the score of the system meets the threshold requirement, apply x of the predefined number of old versions and upgrade them to new version applications, as Figure 5 shown.
[0090] Step S9: Rollback mechanism: If at any time the evaluation score is lower than the set minimum threshold or does not meet the expected standard, the system will automatically trigger the rollback step. This includes stopping the traffic diversion to the new version at the access layer and redirecting all traffic back to the old version, as Figure 6 shown, and may take the new version application offline for further debugging and repair.
[0091] Step S10: Dynamic adjustment and repeated evaluation:
[0092] This process is cyclic, and the system will continuously repeat Steps S5 to S9, dynamically adjusting the release volume of the new version according to the real-time evaluation results until the new version passes all tests and meets the conditions for full promotion. During this period, if the new version fails to meet the requirements in any metric, the system will immediately adjust the strategy to prevent the problem from expanding. The whole process is highly automated, reducing manual intervention, accelerating the problem discovery and response speed, and at the same time improving the efficiency and security of the gray release. Through such a mechanism, it can be ensured that the new version undergoes strict testing and verification before full promotion, minimizing the impact on users and system risks.
[0093] This embodiment proposes an innovative comprehensive evaluation model that can simultaneously consider and analyze multiple dimensions of metrics, including performance, stability, security, user experience, etc. Compared with the traditional single-metric evaluation, this comprehensive evaluation method can more accurately judge whether the new version is suitable for full promotion. And when switching the gray release in this embodiment, a strategy of introducing the new version in multiple steps is introduced, and multiple calculations and evaluations are carried out according to the above comprehensive index calculation model to ensure the reliability of the decision result. This not only improves the accuracy of the decision but also enhances the stability of the system during the version switching process. In addition, when the system metrics fail to meet the preset threshold, a set of clear rollback steps are provided, including removing the test user configuration, restoring the old version service, etc., to ensure that the original system state can be quickly restored when problems occur with the new version, protecting the experience of most users.
[0094] The embodiments of the present application also provide a gray release device. It should be noted that the gray release device in the embodiments of the present application can be used to execute the gray release method provided in the embodiments of the present application. The device is used to implement the above embodiments and preferred implementation manners, and those that have been described will not be repeated. As used hereinafter, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.
[0095] The gray release device provided by the embodiments of the present application will be introduced below.
[0096] Figure 7 is a schematic diagram of the gray release device according to the embodiments of the present application. As Figure 7 shown, the device includes:
[0097] A configuration unit 71, configured to execute a configuration step: construct a gray cluster according to the system resource status, and configure the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the system includes the gray cluster and a full-scale cluster, the gray cluster runs a new version of the software, and the full-scale cluster runs an old version of the software;
[0098] An acquisition unit 72, configured to execute an acquisition step: respectively acquire the operation data of the service performance indicators of the gray cluster and the full-scale cluster, and determine the correlation parameters of various service performance indicators, where the correlation parameters characterize the interaction relationship between the service performance indicators;
[0099] An adjustment unit 73, configured to execute an adjustment step: construct a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, input the operation data of the gray cluster into the Gaussian distribution model, obtain the index scores of the service performance indicators of the new version of the software, and adjust the release volume of the new version of the software according to the index scores.
[0100] In this embodiment, a configuration unit is used to perform a configuration step: constructing a gray-scale cluster according to the system resource status, and configuring the user types accessing the gray-scale cluster to direct specific user traffic to the gray-scale cluster. Here, the system includes a gray-scale cluster and a full-scale cluster. The gray-scale cluster runs the new version of the software, and the full-scale cluster runs the old version of the software; an acquisition unit is used to perform an acquisition step: respectively acquiring the operation data of the business performance indicators of the gray-scale cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters represent the interaction relationship between the business performance indicators; an adjustment unit is used to perform an adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, inputting the operation data of the gray-scale cluster into the Gaussian distribution model, obtaining the index scores of the business performance indicators of the new version of the software, and adjusting the release volume of the new version of the software according to each index score. By constructing a gray-scale cluster and a full-scale cluster, the release volume of the new version of the software can be effectively controlled, ensuring that the new version is first tested in a small range and avoiding the system risks that may be brought by direct full-scale update. By scoring the business performance indicators through the Gaussian distribution model and determining the release strategy in combination with the index scores, the quantitative evaluation and dynamic adjustment of the performance of the new version are realized, improving the accuracy and efficiency of gray-scale release, significantly enhancing the reliability and user experience of software update, reducing the risk of business interruption caused by version update, and solving the problem that the existing gray-scale release evaluation method has a low accuracy in evaluating the true performance of the new version.
[0101] As an optional solution, the adjustment unit includes a first determination module and a second determination module; the first determination module is used to determine the index mean values of the business performance indicators of the gray-scale cluster according to the operation data of the gray-scale cluster, and perform normalization processing on the index mean values of the business performance indicators to obtain the index values of the business performance indicators, where the business performance indicators include transaction success rate, transaction response time, CPU occupancy rate, and memory usage rate; the second determination module is used to input each of the index values into the Gaussian distribution model to obtain the index weights of the business performance indicators, and use the harmonic mean to determine the index scores of the business performance indicators of the new version of the software according to each of the index weights.
[0102] An optional solution is that the adjustment unit further includes a construction module and a third determination module; the construction module is used to determine the comprehensive evaluation score of the new version of the software according to each of the index scores, and construct multiple release threshold intervals, where each of the release threshold intervals corresponds to a different release strategy; the third determination module is used to determine the release strategy of the new version of the software according to the comprehensive evaluation score and the release threshold intervals.
[0103] An alternative solution is that the adjustment unit further includes a fourth determination module, a first generation module, and a second generation module. The fourth determination module is configured to determine whether each of the above-mentioned index scores is greater than the set threshold of each of the above-mentioned service performance indicators after determining the comprehensive evaluation score of the new software version according to each of the above-mentioned index scores. The first generation module is configured to generate a first prompt message when it is determined that at least one of the above-mentioned index scores is less than or equal to the set threshold, and the first prompt message is used to prompt that the new software version needs to be adjusted. The second generation module is configured to generate a second prompt message when it is determined that each of the above-mentioned index scores is greater than each of the above-mentioned set thresholds and the comprehensive evaluation score is greater than the upper limit of the maximum traffic threshold range, and the second prompt message is used to prompt that the new software version has completed the gray release and the old software version can be upgraded to the new software version.
[0104] An alternative solution is that the adjustment unit further includes a debugging processing module and an execution module. The debugging processing module is configured to perform a debugging processing step after adjusting the traffic of the new software version according to each of the above-mentioned index scores: perform debugging processing on the new software version according to the comprehensive evaluation score and the index scores of each of the above-mentioned service performance indicators. The execution module is configured to execute the above-mentioned acquisition step, the above-mentioned adjustment step, and the above-mentioned debugging processing step multiple times until it is detected that each of the above-mentioned index scores is greater than each of the above-mentioned set thresholds and the comprehensive evaluation score is greater than the upper limit of the maximum traffic threshold range.
[0105] An alternative solution is that the adjustment unit further includes a transfer module, which is configured to transfer all the traffic of the new software version to the old software version when it is detected that the comprehensive evaluation score is lower than the lowest score threshold after determining the comprehensive evaluation score of the new software version according to each of the above-mentioned index scores.
[0106] An alternative solution is that the device further includes a determination unit, which is configured to determine the user type based on the software product characteristics and the software target user group in combination with a multi-dimensional screening mechanism before configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the multi-dimensional screening mechanism includes user ID, user geographical location, and user account attributes.
[0107] The above gray release device includes a processor and a memory. The configuration unit, the acquisition unit, the adjustment unit, etc. are all stored in the memory as program units, and the processor executes the program units stored in the memory to implement corresponding functions. The above modules are all located in the same processor; or, the above modules are respectively located in different processors in any combination form.
[0108] The processor contains cores, and the cores retrieve corresponding program units from the memory. One or more cores can be set, and by adjusting the core parameters, the problem of low accuracy in evaluating the true performance of the new version in the existing gray release evaluation method can be solved.
[0109] The memory may include non - permanent memory in computer - readable media, in the form of random access memory (RAM) and / or non - volatile memory, such as read - only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0110] An embodiment of the present invention provides a computer - readable storage medium. The above - mentioned computer - readable storage medium includes a stored program. When the above - mentioned program runs, it controls the device where the above - mentioned computer - readable storage medium is located to execute the above - mentioned gray release method.
[0111] Specifically, the gray release method includes:
[0112] Step S201, configuration step: Build a gray - scale cluster according to the system resource status, and configure the user types accessing the above - mentioned gray - scale cluster to direct specific user traffic to the above - mentioned gray - scale cluster. The system includes the above - mentioned gray - scale cluster and the full - scale cluster. The above - mentioned gray - scale cluster runs the new version of the software, and the above - mentioned full - scale cluster runs the old version of the software;
[0113] Step S202, acquisition step: Obtain the operation data of the business performance indicators of the above - mentioned gray - scale cluster and the above - mentioned full - scale cluster respectively, and determine the correlation parameters of various above - mentioned business performance indicators, where the above - mentioned correlation parameters represent the interaction relationship between the above - mentioned business performance indicators;
[0114] Step S203, adjustment step: Build a Gaussian distribution model according to the operation data of the above - mentioned full - scale cluster and the above - mentioned correlation parameters, input the operation data of the above - mentioned gray - scale cluster into the above - mentioned Gaussian distribution model, obtain the index scores of various above - mentioned business performance indicators of the above - mentioned new version of the software, and adjust the release volume of the above - mentioned new version of the software according to each above - mentioned index score.
[0115] An embodiment of the present invention provides a processor. The above - mentioned processor is used to run a program. When the above - mentioned program runs, it executes the above - mentioned gray release method.
[0116] Specifically, the gray release method includes:
[0117] Step S201, configuration step: Build a gray - scale cluster according to the system resource status, and configure the user types accessing the above - mentioned gray - scale cluster to direct specific user traffic to the above - mentioned gray - scale cluster. The system includes the above - mentioned gray - scale cluster and the full - scale cluster. The above - mentioned gray - scale cluster runs the new version of the software, and the above - mentioned full - scale cluster runs the old version of the software;
[0118] Step S202, acquisition step: respectively acquire the operation data of the service performance indicators of the above grayscale cluster and the above full-scale cluster, and determine the correlation parameters of various above service performance indicators, where the above correlation parameters characterize the interaction relationship between the above service performance indicators;
[0119] Step S203, adjustment step: construct a Gaussian distribution model according to the operation data of the above full-scale cluster and the above correlation parameters, input the operation data of the above grayscale cluster into the above Gaussian distribution model, obtain the index scores of the above service performance indicators of the above new software version, and adjust the release of the above new software version according to each above index score.
[0120] An embodiment of the present invention provides an electronic device, which includes a processor, a memory, and a program stored on the memory and executable on the processor. When the processor executes the program, it implements at least the following steps:
[0121] Step S201, configuration step: construct a grayscale cluster according to the system resource status, and configure the user types accessing the above grayscale cluster to direct specific user traffic to the above grayscale cluster, where the system includes the above grayscale cluster and a full-scale cluster, the above grayscale cluster runs a new software version, and the above full-scale cluster runs an old software version;
[0122] Step S202, acquisition step: respectively acquire the operation data of the service performance indicators of the above grayscale cluster and the above full-scale cluster, and determine the correlation parameters of various above service performance indicators, where the above correlation parameters characterize the interaction relationship between the above service performance indicators;
[0123] Step S203, adjustment step: construct a Gaussian distribution model according to the operation data of the above full-scale cluster and the above correlation parameters, input the operation data of the above grayscale cluster into the above Gaussian distribution model, obtain the index scores of the above service performance indicators of the above new software version, and adjust the release of the above new software version according to each above index score.
[0124] The device in this article can be a server, a PC, a PAD, a mobile phone, etc.
[0125] The present application also provides a computer program product, which, when executed on a data processing device, is adapted to execute a program initialized with at least the following method steps:
[0126] Step S201, configuration step: construct a grayscale cluster according to the system resource status, and configure the user types accessing the above grayscale cluster to direct specific user traffic to the above grayscale cluster, where the system includes the above grayscale cluster and a full-scale cluster, the above grayscale cluster runs a new software version, and the above full-scale cluster runs an old software version;
[0127] Step S202, obtaining step: respectively obtain the operation data of the business performance indicators of the above grayscale cluster and the above full-scale cluster, and determine the correlation parameters of various above business performance indicators, where the above correlation parameters characterize the interaction relationship between the above business performance indicators;
[0128] Step S203, adjusting step: construct a Gaussian distribution model according to the operation data of the above full-scale cluster and the above correlation parameters, input the operation data of the above grayscale cluster into the above Gaussian distribution model, obtain the index scores of the above business performance indicators of the above new software version, and adjust the release of the above new software version according to each above index score.
[0129] Obviously, those skilled in the art should understand that the above modules or steps of the present invention can be implemented by a general-purpose computing device. They can be concentrated on a single computing device or distributed on a network composed of multiple computing devices. They can be implemented by program codes executable by the computing device. Thus, they can be stored in a storage device and executed by the computing device. And in some cases, the steps shown or described can be executed in a different order than here, or they can be separately made into individual integrated circuit modules, or multiple of them can be made into a single integrated circuit module to implement. In this way, the present invention is not limited to any specific combination of hardware and software.
[0130] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program codes.
[0131] The present application is described with reference to the flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowcharts and / or block diagrams, and the combination of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.
[0132] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including an instruction means that implements the functions specified in one or more of the processes and / or blocks Figure 1 in one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks.
[0133] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, thereby providing steps for implementing the functions specified in one or more of the processes and / or blocks Figure 1 in one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks.
[0134] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.
[0135] The memory may include non-permanent memory in the form of computer-readable media, random access memory (RAM) and / or non-volatile memory such as read-only memory (ROM) or flash memory. Memory is an example of computer-readable media.
[0136] Computer-readable media includes both permanent and non-permanent, removable and non-removable media implemented by any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile discs (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory media such as modulated data signals and carrier waves.
[0137] It should also be noted that the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, commodity or device comprising a series of elements not only includes those elements but also includes other elements not expressly listed, or further includes elements inherent to such process, method, commodity or device. Without further limitation, an element defined by the statement "comprising one..." does not exclude the presence of additional identical elements in the process, method, commodity or device comprising the element.
[0138] From the above description, it can be seen that the above embodiments of the present application achieve the following technical effects:
[0139] 1), A gray release method of the present application includes: Configuration step: constructing a gray cluster according to the system resource status, and configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the system includes a gray cluster and a full-scale cluster, the gray cluster runs the new version of the software, and the full-scale cluster runs the old version of the software; Acquisition step: respectively acquiring the operation data of the business performance indicators of the gray cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters characterize the interaction relationship between the business performance indicators; Adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, inputting the operation data of the gray cluster into the Gaussian distribution model, obtaining the index scores of the business performance indicators of the new version of the software, and adjusting the release of the new version of the software according to the index scores. By constructing a gray cluster and a full-scale cluster, the release of the new version of the software can be effectively controlled, ensuring that the new version is first tested in a small range and avoiding the system risks that may be brought about by direct full-scale update. By scoring the business performance indicators through the Gaussian distribution model and determining the release strategy in combination with the index scores, the quantitative evaluation and dynamic adjustment of the performance of the new version are realized, improving the accuracy and efficiency of gray release, significantly enhancing the reliability and user experience of software update, reducing the risk of business interruption caused by version update, and solving the problem that the existing gray release evaluation method has a low accuracy in evaluating the true performance of the new version.
[0140] 2) A gray release device of the present application includes: a configuration unit for performing a configuration step: constructing a gray cluster according to the system resource status, and configuring the user types accessing the gray cluster to direct specific user traffic to the gray cluster, where the system includes a gray cluster and a full-scale cluster, the gray cluster runs the new version of the software, and the full-scale cluster runs the old version of the software; an acquisition unit for performing an acquisition step: respectively acquiring the operation data of the business performance indicators of the gray cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters represent the interaction relationship between the business performance indicators; an adjustment unit for performing an adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, inputting the operation data of the gray cluster into the Gaussian distribution model, obtaining the index scores of the business performance indicators of the new version of the software, and adjusting the release of the new version of the software according to the index scores. By constructing a gray cluster and a full-scale cluster, the release of the new version of the software can be effectively controlled, ensuring that the new version is first tested in a small range and avoiding the system risks that may be brought by direct full-scale update. By scoring the business performance indicators through the Gaussian distribution model and determining the release strategy in combination with the index scores, the quantitative evaluation and dynamic adjustment of the performance of the new version are realized, improving the accuracy and efficiency of gray release, significantly enhancing the reliability and user experience of software update, reducing the risk of business interruption caused by version update, and solving the problem that the existing gray release evaluation method has a low accuracy in evaluating the true performance of the new version.
[0141] The foregoing are only the preferred embodiments of the present application and are not intended to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included within the protection scope of the present application.
Claims
1. A gray release method, characterized in that, Including: Configuration step: Build a gray-scale cluster according to the system resource status, and configure the user types accessing the gray-scale cluster to direct specific user traffic to the gray-scale cluster, where the system includes the gray-scale cluster and the full-scale cluster, the gray-scale cluster runs the new version of the software, and the full-scale cluster runs the old version of the software; Acquisition step: Respectively acquire the running data of the business performance indicators of the gray-scale cluster and the full-scale cluster, and determine the correlation parameters of various business performance indicators, where the correlation parameters characterize the interaction relationship between the business performance indicators; Adjustment step: Build a Gaussian distribution model based on the running data of the full-scale cluster and the correlation parameters, input the running data of the gray-scale cluster into the Gaussian distribution model, obtain the index scores of the business performance indicators of the new version of the software, and adjust the release volume of the new version of the software according to each index score.
2. The method according to claim 1, characterized in that, Inputting the running data of the gray-scale cluster into the Gaussian distribution model to obtain the index scores of the business performance indicators of the new version of the software includes: Determine the index mean values of the business performance indicators of the gray-scale cluster according to the running data of the gray-scale cluster, and perform normalization processing on the index mean values of each business performance indicator to obtain the index values of each business performance indicator, where the business performance indicators include transaction success rate, transaction response time, CPU occupancy rate, and memory usage rate; Input each index value into the Gaussian distribution model to obtain the index weights of each business performance indicator, and use the harmonic mean to determine the index scores of the business performance indicators of the new version of the software according to each index weight.
3. The method according to claim 1, wherein Adjusting the release volume of the new version of the software according to each index score includes: Determine the comprehensive evaluation score of the new version of the software according to each index score, and construct multiple release threshold intervals, where each release threshold interval corresponds to a different release strategy; Determine the release strategy of the new version of the software according to the comprehensive evaluation score and the release threshold interval.
4. The method according to claim 3, wherein After determining the comprehensive evaluation score of the new version of the software according to each index score, the method further includes: Determine whether each index score is greater than the set threshold of each business performance indicator; In the case of determining that at least one index score is less than or equal to the set threshold, generate a first prompt message, where the first prompt message is used to prompt that the new version of the software needs to be adjusted; In the case of determining that each index score is greater than each set threshold and determining that the comprehensive evaluation score is greater than the interval maximum value of the maximum release threshold interval, generate a second prompt message, where the second prompt message is used to prompt that the new version of the software has completed the gray-scale release and the old version of the software can be upgraded to the new version of the software.
5. The method according to claim 4, wherein After adjusting the release volume of the new version of the software according to each index score, the method further includes: Debugging processing step: Perform debugging processing on the new version of the software according to the comprehensive evaluation score and the index scores of each business performance indicator. Execute the obtaining step, the adjustment step, and the debugging and processing step multiple times until it is detected that each of the index scores is greater than each of the set thresholds, and the comprehensive evaluation score is greater than the upper limit of the maximum release threshold range.
6. The method according to any one of claims 3 to 5, characterized in that After determining the comprehensive evaluation score of the new software version based on each of the index scores, the method further includes: In the case where it is detected that the comprehensive evaluation score is lower than the lowest score threshold, all the releases of the new software version are transferred to the old software version.
7. The method according to claim 1, wherein Before configuring the user types accessing the gray-scale cluster to direct specific user traffic to the gray-scale cluster, the method includes: Determining the user types based on the software product characteristics and the software target user group, in combination with a multi-dimensional screening mechanism, where the multi-dimensional screening mechanism includes user ID, user geographical location, and user account attributes.
8. A gray release device, characterized in that, Including: A configuration unit for performing the configuration step: constructing a gray-scale cluster according to the system resource status, and configuring the user types accessing the gray-scale cluster to direct specific user traffic to the gray-scale cluster, where the system includes the gray-scale cluster and the full-scale cluster, the gray-scale cluster runs the new software version, and the full-scale cluster runs the old software version; An obtaining unit for performing the obtaining step: respectively obtaining the operation data of the business performance indicators of the gray-scale cluster and the full-scale cluster, and determining the correlation parameters of various business performance indicators, where the correlation parameters characterize the interaction relationship between the business performance indicators; An adjustment unit for performing the adjustment step: constructing a Gaussian distribution model according to the operation data of the full-scale cluster and the correlation parameters, inputting the operation data of the gray-scale cluster into the Gaussian distribution model to obtain the index scores of the business performance indicators of the new software version, and adjusting the release of the new software version according to each of the index scores.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, where, when the program runs, it controls the device where the computer-readable storage medium is located to execute the gray-scale release method according to any one of claims 1 to 7.
10. An electronic device, characterized in that, Including: One or more processors, a memory, and one or more programs, where the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include those for executing the gray-scale release method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Amplification adjusting method and device for gray release of target application, and electronic equipment
CN117724755A
Grayscale verification method and device, electronic equipment and storage medium
CN117874745A