Method, apparatus, electronic device and storage medium for taking effect of configuration parameters

By sending update notifications to the target client and testing configuration parameters in the target server, the problem of downtime caused by server configuration parameter update is solved, and the safe and smooth update of configuration parameters and the stability of the server is achieved.

CN115842729BActive Publication Date: 2025-05-30INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211525964.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-30
Publication Date
2025-05-30
Estimated Expiration
2042-11-30

AI Technical Summary

Technical Problem

The method of updating the configuration parameter of the server in the prior art can easily cause the server to go down and cannot provide network services to the client, thereby causing production problems.

Method used

By sending an update notification related to updating the target configuration parameters to the target client, receiving an update request from the target client, determining the first server address information of the server, and when the information matches the second server address information in the grayscale cluster, the parameter value of the target configuration parameter is effective in the target server in the grayscale cluster for testing.

Benefits of technology

By first testing the parameter values ​​of the target configuration parameters in the target server, avoiding them taking effect in all servers, thereby reducing the risk of server downtime caused by unreasonable configuration parameters, ensuring server stability and client network service continuity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115842729B_ABST
    Figure CN115842729B_ABST
Patent Text Reader

Abstract

The present disclosure provides a method, apparatus, electronic device, and storage medium for the effective application of configuration parameters, which can be applied to the field of computer technology. The method includes: sending an update notification related to updating target configuration parameters to a target client, where the target client is determined from multiple clients; receiving an update request sent by the target client in response to the update notification; determining first server address information of the server based on the update request; and in the case where it is determined that the first server address information matches the second server address information in the gray-scale cluster, making the parameter value of the target configuration parameter effective in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technologies, and more particularly, to a method, an apparatus, an electronic device, a storage medium, and a computer program product for making configuration parameters effective. Background Art

[0002] In the related art, the static configuration of a server refers to configuration parameters updated together with the version of a client. However, the process of updating configuration parameters along with the version is cumbersome, involves a large amount of operations, and has a high cost. Moreover, subsequent dynamic adjustment is not possible. Therefore, the configuration parameters of the server can also be dynamically configured, which means that after modifying the configuration parameters, they directly take effect in the server without the need to release the configuration parameters together with the version of the client.

[0003] In the process of implementing the concept of the present disclosure, the inventors found that there are at least the following problems in the related art: The method for updating the configuration parameters of a server in the related art is likely to cause the server to crash, unable to provide network services to the client, thereby causing production problems. Summary of the Invention

[0004] In view of this, the present disclosure provides a method, an apparatus, an electronic device, a storage medium, and a computer program product for making configuration parameters effective.

[0005] One aspect of the present disclosure provides a method for making configuration parameters effective, which is applied to a server. The method includes:

[0006] Sending an update notification related to updating target configuration parameters to a target client, where the target client is determined from multiple clients;

[0007] Receiving an update request sent by the target client in response to the update notification;

[0008] Based on the update request, determining first server address information of the server; and

[0009] In the case where it is determined that the first server address information matches second server address information in a gray-scale cluster, making the parameter value of the target configuration parameter effective in a target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.

[0010] According to an embodiment of the present disclosure, before sending the update notification related to updating the target configuration parameters to the target client, the method further includes:

[0011] Based on the parameter value of the target configuration parameter before the update, creating an initial gray-scale configuration version;

[0012] In the initial gray-scale configuration version, changing the parameter value of the target configuration parameter to obtain a target gray-scale configuration version;

[0013] Generate an update notification related to updating the target configuration parameter based on the target gray-scale configuration version.

[0014] According to an embodiment of the present disclosure, the above method further includes:

[0015] Receive client information and server information from multiple clients;

[0016] Based on the client information, determine the clients that have subscribed to the target configuration parameter as target clients; and

[0017] Based on the server information, determine the gray-scale cluster from the servers corresponding to the target clients.

[0018] According to an embodiment of the present disclosure, the above method further includes:

[0019] Obtain the parameter value of the original configuration parameter, where the parameter value of the original configuration parameter represents the parameter values of all the configuration parameters in the server;

[0020] Compare the parameter value of the original configuration parameter with the parameter value of the target configuration parameter to obtain a comparison result;

[0021] Based on the comparison result, merge the parameter values of the original configuration parameter and the target configuration parameter to generate a full-scale update notification related to updating the full-scale configuration parameter;

[0022] Send the full-scale update notification to multiple clients so that the parameter values of the full-scale configuration parameter can take effect in the server.

[0023] According to an embodiment of the present disclosure, wherein, in the initial gray-scale configuration version, changing the parameter value of the target configuration parameter to obtain the target gray-scale configuration version includes:

[0024] In the initial gray-scale configuration version, create a gray-scale variable based on the target configuration parameter;

[0025] By changing the value of the gray-scale variable, change the parameter value of the target configuration parameter to obtain the target gray-scale configuration version.

[0026] According to an embodiment of the present disclosure, wherein, by changing the value of the gray-scale variable, changing the parameter value of the target configuration parameter to obtain the target gray-scale configuration version includes:

[0027] When the initial gray-scale configuration version includes the target configuration parameter, modify the value of the gray-scale variable to modify the parameter value of the target configuration parameter to obtain the target gray-scale configuration version; and / or

[0028] In the case where the target configuration parameter is not included in the initial grayscale configuration version, increase the value of the grayscale variable to increase the parameter value of the target configuration parameter, and obtain the target grayscale configuration version.

[0029] Another aspect of the present disclosure provides a method for validating a configuration parameter, which is applied to a target client. The target client is determined from multiple clients. The method includes:

[0030] Receive an update notification related to updating the target configuration parameter sent by the server;

[0031] In response to the update notification, send an update request for updating the target configuration parameter to the server, so that the server determines the first server address information of the server based on the update request, and in the case where it is determined that the first server address information matches the second server address information in the grayscale cluster, the parameter value of the target configuration parameter is validated in the target server in the grayscale cluster, where the target server is used to test the target configuration parameter.

[0032] Another aspect of the present disclosure provides an apparatus for validating a configuration parameter, which is applied to a server. The apparatus includes:

[0033] A first sending module, configured to send an update notification related to updating the target configuration parameter to the target client, where the target client is determined from multiple clients;

[0034] A first receiving module, configured to receive an update request sent by the target client in response to the update notification;

[0035] A determining module, configured to determine the first server address information of the server based on the update request; and

[0036] An effectuating module, configured to, in the case where it is determined that the first server address information matches the second server address information in the grayscale cluster, validate the parameter value of the target configuration parameter in the target server in the grayscale cluster, where the target server is used to test the target configuration parameter.

[0037] Another aspect of the present disclosure provides an apparatus for validating a configuration parameter, which is applied to a target client. The target client is determined from multiple clients. The apparatus includes:

[0038] A second receiving module, configured to receive an update notification related to updating the target configuration parameter sent by the server;

[0039] A second sending module, configured to send an update request for updating target configuration parameters to a server in response to an update notification, so that the server determines first server address information of the server based on the update request, and when it is determined that the first server address information matches second server address information in a gray-scale cluster, the parameter value of the target configuration parameter is made effective in a target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.

[0040] Another aspect of the present disclosure provides an electronic device, including: one or more processors; a memory for storing one or more programs, where when the one or more programs are executed by the one or more processors, the one or more processors implement the method for making a configuration parameter effective for a server or the method for making a configuration parameter effective for a target client as described above.

[0041] Another aspect of the present disclosure provides a computer-readable storage medium, on which executable instructions are stored, and when the instructions are executed by a processor, the processor executes the method for making a configuration parameter effective for a server or the method for making a configuration parameter effective for a target client as described above.

[0042] Another aspect of the present disclosure provides a computer program product, where the computer program product includes computer-executable instructions, and the computer-executable instructions are used to implement the method for making a configuration parameter effective for a server or the method for making a configuration parameter effective for a target client as described above when being executed.

[0043] According to an embodiment of the present disclosure, because the technical means of sending an update notification related to updating a target configuration parameter to a target client is adopted, where the target client is determined from multiple clients; receiving an update request sent by the target client in response to the update notification; determining first server address information of the server based on the update request; and when it is determined that the first server address information matches second server address information in a gray-scale cluster, making the parameter value of the target configuration parameter effective in a target server in the gray-scale cluster, where the target server is used to test the target configuration parameter, by sending a release notification of the target configuration parameter to the target client, the parameter value of the target configuration parameter can be first made effective and tested in the target server, and it is not necessary to make the target configuration parameter effective in all servers, so at least partially overcomes the technical problem that the method for updating the configuration parameter of the server in the related art easily causes the server to crash and cannot provide network services for the client, thereby causing production problems. Description of the Drawings

[0044] Through the following description of the embodiments of the present disclosure with reference to the drawings, the above and other objects, features, and advantages of the present disclosure will become clearer. In the drawings:

[0045] Figure 1 Schematically shows an exemplary system architecture to which a method for effectuating configuration parameters according to an embodiment of the present disclosure can be applied;

[0046] Figure 2 Schematically shows a flowchart of a method for effectuating configuration parameters according to an embodiment of the present disclosure;

[0047] Figure 3 Schematically shows a flowchart of a method for effectuating configuration parameters according to another embodiment of the present disclosure;

[0048] Figure 4 Schematically shows an interaction flowchart between a target client and a server for a method for effectuating configuration parameters according to an embodiment of the present disclosure;

[0049] Figure 5 Schematically shows a block diagram of an apparatus for effectuating configuration parameters according to an embodiment of the present disclosure;

[0050] Figure 6 Schematically shows a block diagram of an apparatus for effectuating configuration parameters according to another embodiment of the present disclosure; and

[0051] Figure 7 Schematically shows a block diagram of an electronic device suitable for implementing the method for effectuating configuration parameters described above according to an embodiment of the present disclosure. Detailed implementation manners

[0052] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present disclosure. In the following detailed description, for the sake of explanation, many specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure. However, it is obvious that one or more embodiments can be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily obscuring the concepts of the present disclosure.

[0053] The terms used herein are merely for describing specific embodiments and are not intended to limit the present disclosure. The terms "including", "comprising", etc. used herein indicate the presence of the described features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0054] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those of ordinary skill in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0055] In the case of using expressions such as "at least one of A, B, and C, etc.", generally, it should be interpreted according to the meaning that those skilled in the art usually understand this expression (for example, "a system having at least one of A, B, and C" should include, but not be limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.). In the case of using expressions such as "at least one of A, B, or C, etc.", generally, it should be interpreted according to the meaning that those skilled in the art usually understand this expression (for example, "a system having at least one of A, B, or C" should include, but not be limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.).

[0056] In the technical solutions of the present disclosure, the acquisition, storage, and application of the user's personal information, etc., all comply with the provisions of relevant laws and regulations, take necessary confidentiality measures, and do not violate public order and good customs.

[0057] In the technical solutions of the present disclosure, before obtaining or collecting the user's personal information, the authorization or consent of the user has been obtained.

[0058] Gray release refers to a release method in which two versions, A and B, of an application can be smoothly transitioned. By allowing a part of the users to first use the new version B, if the users do not find any problems, the scope of version B can be gradually expanded until it is completely replaced. In the related art, the gray release of versions is becoming more and more common, and the configuration parameters can only be updated through static configuration or dynamic configuration. The dynamic configuration is that the operation and maintenance personnel of the server directly modify the parameter values of the configuration parameters in the background of the server, and then take effect in the server. For example, for the flow limiting size, by directly modifying the configuration parameters, the dynamic flow limiting control of all servers is realized. If the parameter values of the configuration parameters are set unreasonably, it may lead to the unavailability of the server, etc., causing production problems. For example, when the flow limiting adjustment is made from 50 to 100, it may directly cause a large amount of traffic to pour in, resulting in problems such as server downtime. If the dynamic configuration of the configuration center is adjusted to static configuration and released with the version, the process is cumbersome, the operation volume is large, the cost is high, and subsequent dynamic adjustment is no longer possible.

[0059] In view of this, embodiments of the present disclosure provide a method for validating configuration parameters. By sending an update notification related to updating target configuration parameters to a target client, where the target client is determined from multiple clients; receiving an update request sent by the target client in response to the update notification; determining first server address information of the server based on the update request; and in the case where it is determined that the first server address information matches the second server address information in the gray-scale cluster, validating the parameter value of the target configuration parameter in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.

[0060] Figure 1 Schematically shows an exemplary system architecture 100 to which the method for validating configuration parameters according to embodiments of the present disclosure can be applied. It should be noted that, Figure 1 The illustration is only an example of the system architecture to which embodiments of the present disclosure can be applied, to help those skilled in the art understand the technical content of the present disclosure, but it does not mean that embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.

[0061] As Figure 1 shown, the system architecture 100 according to this embodiment may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, etc.

[0062] Users can use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the terminal devices 101, 102, 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (only as examples). The target client for receiving update notifications may be included in the client.

[0063] The terminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, and desktop computers, etc.

[0064] The server 105 may be a server providing various services, such as a background management server (only as an example) that supports websites browsed by users using the terminal devices 101, 102, 103. The background management server may analyze and process data such as received user requests, etc., and feedback the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.

[0065] The service 105 may also include a target server in the grayscale cluster so that the target configuration parameters can take effect in the target server.

[0066] It should be noted that the method for the configuration parameters to take effect provided in the embodiments of the present disclosure can generally be executed by the server 105. Correspondingly, the device for the configuration parameters to take effect provided in the embodiments of the present disclosure can generally be set in the server 105. The method for the configuration parameters to take effect provided in the embodiments of the present disclosure can also be executed by a server or a server cluster different from the server 105 and capable of communicating with the terminal devices 101, 102, 103, and / or the server 105. Correspondingly, the device for the configuration parameters to take effect provided in the embodiments of the present disclosure can also be set in a server or a server cluster different from the server 105 and capable of communicating with the terminal devices 101, 102, 103, and / or the server 105.

[0067] For example, the update notification generated according to the target configuration parameters can be stored in the server 105 and sent by the server 105 to the target client. In the case where the target client sends an update request in response to the update notification, the server 105 can determine the first server address information of the server based on the update request. In the case where it is determined that the first server address information matches the second server address information in the grayscale cluster, the parameter value of the target configuration parameters is made to take effect in the target server in the grayscale cluster to test the target configuration parameters in the target server.

[0068] It should be understood that Figure 1 the numbers of the terminal devices, the network, and the servers in

[0069] Figure 2 are merely illustrative. According to the implementation requirements, there can be any number of terminal devices, networks, and servers.

[0070] As Figure 2 shown, this method is applied to a server and includes operations S201 to S204.

[0071] In operation S201, an update notification related to updating the target configuration parameters is sent to the target client, where the target client is determined from multiple clients.

[0072] According to an embodiment of the present disclosure, the client can be an application installed in a terminal device, such as a shopping application, a web browser application, a search application, an instant messaging tool, an email client, and / or a social platform software, etc. The target client can be determined from multiple clients according to the information pre-set by the user in the client.

[0073] According to an embodiment of the present disclosure, information interaction can be performed with a server based on reserved information in a client. For example, a user sets in the client to update the client version at night, and the client can initiate a request to the server to update the client version at the time pre-set by the user.

[0074] According to an embodiment of the present disclosure, the target configuration parameter can be a parameter for updating in the server. For example, an update notification can be sent to the target client according to the reserved information in the target client.

[0075] In operation S202, receive an update request sent from the target client in response to the update notification.

[0076] According to an embodiment of the present disclosure, since the update notification is a notification for updating the target configuration parameter, after receiving the update notification, the target client can determine whether to update the target configuration parameter based on the information pre-set by the user in the target client. In the case of determining to update the target configuration parameter, an update request is sent in response to the update notification.

[0077] In operation S203, based on the update request, determine the first server address information of the server.

[0078] According to an embodiment of the present disclosure, the update request of the target client can be sent to the server, and the first server address information can be determined based on the server that receives the update request. The first server address information can be the IP address information of the server that receives the update request.

[0079] In operation S204, in the case of determining that the first server address information matches the second server address information in the gray-scale cluster, make the parameter value of the target configuration parameter take effect in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.

[0080] According to an embodiment of the present disclosure, the gray-scale cluster can be a pre-set server cluster. The configuration parameter can be first updated and tested in the servers in the gray-scale cluster, and after the test is okay, it takes effect in all the servers to achieve the full-scale update of the configuration parameter in all the servers.

[0081] According to an embodiment of the present disclosure, the target server can be a server in the gray-scale cluster, and the second server address information can be the IP address information of the target server. The first server address information can be matched with the server address information of the target server in the gray-scale cluster. In the case of determining that the first server address information matches the second server address information in the gray-scale cluster, that is, the server that receives the update request is the target server, make the parameter value of the target configuration parameter take effect in the target server.

[0082] According to an embodiment of the present disclosure, since an update notification related to updating a target configuration parameter is sent to a target client, where the target client is determined from multiple clients; an update request sent by the target client in response to the update notification is received; based on the update request, first server address information of the server is determined; in the case where it is determined that the first server address information matches the second server address information in the gray-scale cluster, the parameter value of the target configuration parameter is made effective in the target server in the gray-scale cluster, where the target server is used for testing the technical means of the target configuration parameter, by sending a release notification of the target configuration parameter to the target client, the parameter value of the target configuration parameter can be first made effective and tested in the target server, and it is not necessary to make the target configuration parameter effective in all servers, so at least partially overcome the technical problem that the method of updating the configuration parameters of the server in the related art easily causes the server to crash and cannot provide network services for the client, thereby causing production problems.

[0083] According to an embodiment of the present disclosure, where, before sending the update notification related to updating the target configuration parameter to the target client, the above method further includes:

[0084] Based on the parameter value before the update of the target configuration parameter, an initial gray-scale configuration version is created.

[0085] In the initial gray-scale configuration version, the parameter value of the target configuration parameter is changed to obtain a target gray-scale configuration version.

[0086] Based on the target gray-scale configuration version, an update notification related to updating the target configuration parameter is generated.

[0087] According to an embodiment of the present disclosure, the initial gray-scale configuration version may include the parameter value before the update of the target configuration parameter, so as to record the initial value of the target configuration parameter. For example, if the target configuration parameter is the flow limit number of the server, the parameter value before the update of the target configuration parameter may be 20.

[0088] According to an embodiment of the present disclosure, the target configuration parameter in the target gray-scale configuration version may be the parameter value after the change. For example, if the target configuration parameter is the flow limit number of the server, the parameter value after the change of the target configuration parameter may be 50.

[0089] According to an embodiment of the present disclosure, an update notification related to updating the target configuration parameter may be generated according to the target configuration parameter changed in the target gray-scale configuration version, and the update notification may include the time when the target gray-scale configuration version is generated.

[0090] According to an embodiment of the present disclosure, the target gray-scale configuration version is obtained through the updated target configuration parameter, thereby generating an update notification, further avoiding the problem that the server crashes due to directly making the parameter value of the target configuration parameter effective in the server.

[0091] According to an embodiment of the present disclosure, the above method further includes:

[0092] Receiving client information and server information from multiple clients.

[0093] Based on the client information, determining the clients subscribed to the target configuration parameter as target clients.

[0094] Based on the server information, determining a gray-scale cluster from the servers corresponding to the target clients.

[0095] According to an embodiment of the present disclosure, during the process of installing the client to the terminal device, the user can preset the target configuration parameter to be updated, and with the user's permission, send the client information and server information of the client to the server, where the client information may include the target configuration parameter preset by the user to be updated, and the server information may be the address information of the server for information interaction with the client.

[0096] According to an embodiment of the present disclosure, the target configuration parameter to be updated set by the user through the subscription method in the client can be used to determine the target clients according to the clients that set the target configuration parameter to be updated in the client information.

[0097] According to an embodiment of the present disclosure, the server to be matched with the target client can be determined according to the server information of the target client, so as to determine the server matched with the target client as the gray-scale cluster.

[0098] According to an embodiment of the present disclosure, a part of the servers are used as target servers in the gray-scale cluster through the server information, so that the target configuration parameter can take effect in the gray-scale cluster, reducing the risk of production problems caused by unreasonable changes to the configuration parameter.

[0099] According to an embodiment of the present disclosure, the above method further includes:

[0100] Obtaining the parameter value of the original configuration parameter, where the parameter value of the original configuration parameter represents the parameter values of all the configuration parameters in the server.

[0101] Comparing the parameter value of the original configuration parameter with the parameter value of the target configuration parameter to obtain a comparison result.

[0102] Based on the comparison result, merging the parameter values of the original configuration parameter and the target configuration parameter to generate a full-scale update notice related to updating the full-scale configuration parameter.

[0103] Sending the full-scale update notice to multiple clients so that the parameter values of the full-scale configuration parameter can take effect in the server.

[0104] According to an embodiment of the present disclosure, the parameter value of the original configuration parameter may be the parameter values of the configuration parameters in all other servers except the gray-scale cluster.

[0105] According to an embodiment of the present disclosure, the parameter value of the original configuration parameter can be compared with the parameter value of the target configuration parameter to generate a comparison result. When the comparison result indicates that the parameter value of the original configuration parameter is inconsistent with the parameter value of the target configuration parameter, the parameter value of the target configuration parameter is updated to the parameter value of the original configuration parameter to obtain the parameter value of the full-scale configuration parameter, and a full-scale update notification is generated based on the full-scale configuration parameter.

[0106] According to an embodiment of the present disclosure, the full-scale update notification can be sent to multiple clients, and the multiple clients can issue a full-scale update request in response to the full-scale update notification so that the parameter value of the full-scale configuration parameter can take effect in the server, realizing a smooth update of the configuration parameter without affecting the operation of the server.

[0107] According to an embodiment of the present disclosure, wherein, in the initial gray-scale configuration version, changing the parameter value of the target configuration parameter to obtain the target gray-scale configuration version includes:

[0108] In the initial gray-scale configuration version, a gray-scale variable is created based on the target configuration parameter.

[0109] By changing the value of the gray-scale variable, the parameter value of the target configuration parameter is changed to obtain the target gray-scale configuration version.

[0110] According to an embodiment of the present disclosure, a gray-scale variable regarding the target configuration parameter can be created in the initial gray-scale configuration version so that by changing the value of the gray-scale variable, the parameter value of the target configuration parameter is changed to obtain the target gray-scale configuration version.

[0111] According to an embodiment of the present disclosure, a gray-scale variable related to the target configuration parameter can be created in the initial configuration version, and the parameter value of the target configuration parameter is changed by modifying the value of the gray-scale variable, thereby obtaining the target gray-scale configuration version.

[0112] According to an embodiment of the present disclosure, wherein, by changing the value of the gray-scale variable, changing the parameter value of the target configuration parameter to obtain the target gray-scale configuration version includes:

[0113] When the initial gray-scale configuration version includes the target configuration parameter, the value of the gray-scale variable is modified to modify the parameter value of the target configuration parameter to obtain the target gray-scale configuration version.

[0114] And / or

[0115] In the case where the target configuration parameter is not included in the initial grayscale configuration version, increase the value of the grayscale variable to increase the parameter value of the target configuration parameter, and obtain the target grayscale configuration version.

[0116] According to an embodiment of the present disclosure, the change to the grayscale variable may include modification and increase. In the case where the grayscale configuration parameter is included in the initial grayscale configuration version, the value of the grayscale variable may be set to the current parameter value of the grayscale configuration parameter, and the parameter value of the changed target configuration is obtained by modifying the value of the grayscale variable, thereby obtaining the target grayscale configuration version.

[0117] According to an embodiment of the present disclosure, in the case where the target configuration parameter is not included in the initial grayscale configuration version, a grayscale variable may be added to the initial grayscale configuration version, and the variable value of the grayscale variable is made equal to the parameter value of the target configuration parameter, thereby obtaining the target grayscale configuration version.

[0118] According to an embodiment of the present disclosure, by setting the grayscale variable to change the parameter value of the target configuration parameter, the parameter value of the target configuration parameter can be changed in the initial grayscale version, without directly updating the parameter value of the target configuration parameter on the server, further improving the update of the target configuration parameter without affecting the operation of the server and enhancing the stability of the server.

[0119] Figure 3 Schematically shows a flowchart of a method for validating a configuration parameter according to another embodiment of the present disclosure.

[0120] As Figure 3 shown, the method is applied to a target client, where the target client is determined from multiple clients, and the method includes operations S301 to S302.

[0121] In operation S301, receive an update notification related to updating the target configuration parameter sent from the server.

[0122] In operation S302, in response to the update notification, send an update request for updating the target configuration parameter to the server, so that the server determines the first server address information of the server based on the update request, and in the case where it is determined that the first server address information matches the second server address information in the grayscale cluster, the parameter value of the target configuration parameter is made effective in the target server in the grayscale cluster, where the target server is used to test the target configuration parameter.

[0123] According to an embodiment of the present disclosure, the target client may be determined according to the information set by the user, and after receiving the update notification from the server, an update request may be automatically sent in response to the update notification.

[0124] According to an embodiment of the present disclosure, the target client sends an update request to the server. For the detailed description of the server testing the target configuration parameters according to the update request, reference can be made to other embodiments of the present disclosure and will not be elaborated here.

[0125] Figure 4 Schematically shows an interaction flowchart between the target client and the server for the method of validating configuration parameters according to an embodiment of the present disclosure.

[0126] As Figure 4 shown, the method includes operations S401 to S409.

[0127] In operation S401, an initial grayscale configuration version is created based on the parameter value before the update of the target configuration parameter.

[0128] In operation S402, in the initial grayscale configuration version, the parameter value of the target configuration parameter is changed to obtain the target grayscale configuration version.

[0129] In operation S403, an update notification related to updating the target configuration parameter is generated based on the target grayscale configuration version.

[0130] In operation S404, an update notification related to updating the target configuration parameter is sent to the target client.

[0131] In operation S405, an update notification related to updating the target configuration parameter sent by the server is received.

[0132] In operation S406, in response to the update notification, an update request for updating the target configuration parameter is sent to the server.

[0133] In operation S407, an update request sent by the target client in response to the update notification is received.

[0134] In operation S408, based on the update request, the first server address information of the server is determined.

[0135] In operation S409, when it is determined that the first server address information matches the second server address information in the grayscale cluster, the parameter value of the target configuration parameter is made effective in the target server in the grayscale cluster.

[0136] According to an embodiment of the present disclosure, for the descriptions of operations S401 to S409, reference can be made to other embodiments of the present disclosure and will not be elaborated here.

[0137] According to an embodiment of the present disclosure, the target configuration parameter takes effect first in the target server in the gray-scale cluster. When the test of the target configuration parameter by the gray-scale server has no problems, it is then fully released to all servers, realizing the safe and stable update of the configuration parameter, reducing the risk of production problems caused by unreasonable settings of the configuration parameter, reducing the operation risk, and improving the stability of the server.

[0138] Figure 5 A block diagram of an apparatus for the effective application of a configuration parameter according to an embodiment of the present disclosure is schematically shown.

[0139] As Figure 5 shown, the apparatus is applied to a server. The apparatus 500 includes a first sending module 510, a first receiving module 520, a determining module 530, and an effective application module 540.

[0140] The first sending module 510 is configured to send an update notification related to updating a target configuration parameter to a target client, where the target client is determined from a plurality of clients.

[0141] The first receiving module 520 is configured to receive an update request sent by the target client in response to the update notification.

[0142] The determining module 530 is configured to determine first server address information of the server based on the update request.

[0143] The effective application module 540 is configured to, when it is determined that the first server address information matches second server address information in the gray-scale cluster, make the parameter value of the target configuration parameter take effect in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter.

[0144] According to an embodiment of the present disclosure, wherein the above-mentioned apparatus further includes:

[0145] A creating module, configured to create an initial gray-scale configuration version based on the parameter value of the target configuration parameter before the update, before sending an update notification related to updating the target configuration parameter to the target client;

[0146] A target gray-scale configuration version obtaining module, configured to change the parameter value of the target configuration parameter in the initial gray-scale configuration version to obtain a target gray-scale configuration version;

[0147] A first generating module, configured to generate an update notification related to updating the target configuration parameter based on the target gray-scale configuration version.

[0148] According to an embodiment of the present disclosure, the above-mentioned apparatus further includes:

[0149] A third receiving module, configured to receive client information and server information from a plurality of clients;

[0150] A target client determination module, configured to determine, based on client information, a client that has subscribed to target configuration parameters as a target client; and

[0151] A grayscale cluster determination module, configured to determine a grayscale cluster from servers corresponding to the target client based on server information.

[0152] According to an embodiment of the present disclosure, the above device further includes:

[0153] An acquisition module, configured to acquire a parameter value of an original configuration parameter, where the parameter value of the original configuration parameter represents the parameter values of all configuration parameters in the server;

[0154] A obtaining module, configured to compare the parameter value of the original configuration parameter with the parameter value of the target configuration parameter to obtain a comparison result;

[0155] A second generation module, configured to merge the parameter value of the original configuration parameter with the parameter value of the target configuration parameter based on the comparison result to generate a full - volume update notification related to updating the full - volume configuration parameter;

[0156] A full - volume update notification sending module, configured to send the full - volume update notification to multiple clients so that the parameter value of the full - volume configuration parameter can take effect in the server.

[0157] According to an embodiment of the present disclosure, among them, the target grayscale configuration version obtaining module for changing the parameter value of the target configuration parameter in the initial grayscale configuration version to obtain the target grayscale configuration version includes:

[0158] A first obtaining unit, configured to create a grayscale variable based on the target configuration parameter in the initial grayscale configuration version;

[0159] A second obtaining unit, configured to change the parameter value of the target configuration parameter by changing the value of the grayscale variable to obtain the target grayscale configuration version.

[0160] According to an embodiment of the present disclosure, among them, the second obtaining unit for changing the parameter value of the target configuration parameter by changing the value of the grayscale variable to obtain the target grayscale configuration version includes:

[0161] A first obtaining subunit, configured to, when the initial grayscale configuration version includes the target configuration parameter, modify the value of the grayscale variable to modify the parameter value of the target configuration parameter to obtain the target grayscale configuration version; and / or

[0162] A second obtaining subunit, configured to, when the initial grayscale configuration version does not include the target configuration parameter, increase the value of the grayscale variable to increase the parameter value of the target configuration parameter to obtain the target grayscale configuration version.

[0163] Figure 6 A block diagram schematically showing an apparatus for effectuating configuration parameters according to another embodiment of the present disclosure.

[0164] As Figure 6 shown, the apparatus is applied to a target client, where the target client is determined from multiple clients. The apparatus 600 includes a second receiving module 610 and a second sending module 620.

[0165] The second receiving module 610 is configured to receive an update notification related to updating target configuration parameters sent from a server.

[0166] The second sending module 620 is configured to, in response to the update notification, send an update request for updating the target configuration parameters to the server, so that the server, based on the update request, determines first server address information of the server, and in the case where it is determined that the first server address information matches second server address information in a gray-scale cluster, effectuates the parameter value of the target configuration parameters in a target server in the gray-scale cluster, where the target server is used to test the target configuration parameters.

[0167] Any plurality of, or at least part of the functions of any one of, the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be implemented in one module. Any one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be split into multiple modules for implementation. Any one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on a substrate, a system in a package, an application specific integrated circuit (ASIC), or may be implemented by any other reasonable manner of integrating or packaging circuits in hardware or firmware, or implemented in any one of the three implementation manners of software, hardware, and firmware, or in an appropriate combination of any several of them. Alternatively, one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be at least partially implemented as a computer program module, which, when run, may execute corresponding functions.

[0168] For example, any combination of the first sending module 510, the first receiving module 520, the determining module 530, and the taking - effect module 540 can be combined and implemented in one module / unit / sub - unit, or any one of the modules / units / sub - units can be split into multiple modules / units / sub - units. Alternatively, at least part of the functions of one or more of these modules / units / sub - units can be combined with at least part of the functions of other modules / units / sub - units and implemented in one module / unit / sub - unit. According to an embodiment of the present disclosure, at least one of the first sending module 510, the first receiving module 520, the determining module 530, and the taking - effect module 540 can be at least partially implemented as a hardware circuit, such as a field - programmable gate array (FPGA), a programmable logic array (PLA), a system - on - chip, a system - on - substrate, a system - on - package, an application - specific integrated circuit (ASIC), or can be implemented by any other reasonable way of integrating or packaging circuits, etc., in hardware or firmware, or implemented in any one of the three implementation manners of software, hardware, and firmware, or in an appropriate combination of any several of them. Alternatively, at least one of the first sending module 510, the first receiving module 520, the determining module 530, and the taking - effect module 540 can be at least partially implemented as a computer program module, and when the computer program module runs, it can execute corresponding functions.

[0169] It should be noted that the part of the apparatus for taking effect of configuration parameters in the embodiments of the present disclosure corresponds to the part of the method for taking effect of configuration parameters in the embodiments of the present disclosure. For the description of the part of the apparatus for taking effect of configuration parameters, please refer to the part of the method for taking effect of configuration parameters specifically, and details are not described herein again.

[0170] Figure 7 Schematically shows a block diagram of an electronic device suitable for implementing the method for taking effect of configuration parameters described above according to an embodiment of the present disclosure. Figure 7 The shown electronic device is only an example and should not bring any limitation to the functions and usage scope of the embodiments of the present disclosure.

[0171] As Figure 7 As shown, the electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to the program stored in the read - only memory (ROM) 702 or the program loaded from the storage part 708 into the random - access memory (RAM) 703. The processor 701 can include, for example, a general - purpose microprocessor (such as a CPU), an instruction - set processor, and / or a related chipset, and / or a dedicated microprocessor (such as an application - specific integrated circuit (ASIC)), etc. The processor 701 can also include on - board memory for caching purposes. The processor 701 can include a single processing unit or multiple processing units for performing different actions of the method flow according to the embodiments of the present disclosure.

[0172] In the RAM 703, various programs and data required for the operation of the electronic device 700 are stored. The processor 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. The processor 701 performs various operations of the method flow according to the embodiments of the present disclosure by executing programs in the ROM 702 and / or the RAM 703. It should be noted that the programs may also be stored in one or more memories other than the ROM 702 and the RAM 703. The processor 701 may also perform various operations of the method flow according to the embodiments of the present disclosure by executing programs stored in the one or more memories.

[0173] According to an embodiment of the present disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, and the input / output (I / O) interface 705 is also connected to the bus 704. The system 700 may further include one or more of the following components connected to the I / O interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage portion 708 including a hard disk, etc.; and a communication portion 709 including a network interface card such as a LAN card, a modem, etc. The communication portion 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the I / O interface 705 as needed. A removable medium 711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 710 as needed so that a computer program read therefrom can be installed into the storage portion 708 as needed.

[0174] According to an embodiment of the present disclosure, the method flow according to the embodiments of the present disclosure may be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product that includes a computer program carried on a computer-readable storage medium, and the computer program includes program codes for performing the method shown in the flowchart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication portion 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above-described functions defined in the system according to the embodiments of the present disclosure are performed. According to an embodiment of the present disclosure, the above-described systems, devices, apparatuses, modules, units, etc. may be implemented by computer program modules.

[0175] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist separately without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the one or more programs are executed, a method for validating configuration parameters according to the embodiments of the present disclosure is implemented.

[0176] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium. For example, it may include but is not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In the present disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program, and the program may be used by or in conjunction with an instruction execution system, apparatus, or device.

[0177] For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include one or more memories other than the above-described ROM 702 and / or RAM 703 and / or ROM 702 and RAM 703.

[0178] An embodiment of the present disclosure also includes a computer program product, which includes a computer program that contains program code for executing the method shown in the flowchart. When the computer program product runs in a computer system, the program code is used to cause the computer system to implement the method for validating configuration parameters provided by the embodiments of the present disclosure.

[0179] When the computer program is executed by the processor 701, the above functions defined in the system / apparatus of the embodiments of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described systems, apparatuses, modules, units, etc. may be implemented by computer program modules.

[0180] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices and magnetic storage devices. In another embodiment, the computer program may also be transmitted and distributed in the form of a signal on a network medium, and be downloaded and installed through the communication part 709, and / or be installed from the removable medium 711. The program code included in the computer program may be transmitted by any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0181] In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above functions defined in the system of the embodiments of the present disclosure are executed. According to the embodiments of the present disclosure, the systems, devices, apparatuses, modules, units, etc. described above can be implemented by computer program modules.

[0182] According to the embodiments of the present disclosure, the program code for executing the computer program provided by the embodiments of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level procedures and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, such as Java, C++, python, the "C" language, or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, by using an Internet service provider to connect through the Internet).

[0183] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and the combinations of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions. Those skilled in the art can understand that the features recited in the various embodiments and / or claims of the present disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly recited in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features recited in the various embodiments and / or claims of the present disclosure can be combined and / or combined in various ways. All such combinations and / or combinations fall within the scope of the present disclosure.

[0184] The embodiments of the present disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments have been described separately above, this does not mean that the measures in each embodiment cannot be used advantageously in combination. The scope of the present disclosure is defined by the appended claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art can make various substitutions and modifications, and these substitutions and modifications should fall within the scope of the present disclosure.

Claims

1. A method for validating configuration parameters, applied to a server, the method includes: Create an initial gray-scale configuration version based on the parameter value before the target configuration parameter is updated; In the initial gray-scale configuration version, create a gray-scale variable based on the target configuration parameter; By changing the value of the gray-scale variable, change the parameter value of the target configuration parameter to obtain a target gray-scale configuration version; Based on the target gray-scale configuration version, generate an update notification related to updating the target configuration parameter; Send an update notification related to updating the target configuration parameter to a target client, where the target client is determined from multiple clients; Receive an update request sent by the target client in response to the update notification; Based on the update request, determine the first server address information of the server; and In the case where it is determined that the first server address information matches the second server address information in the gray-scale cluster, make the parameter value of the target configuration parameter take effect in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter; It also includes: Receive client information and server information from multiple of the clients; Based on the client information, determine the client that has subscribed to the target configuration parameter as the target client; and Based on the server information, determine the gray-scale cluster from the servers corresponding to the target client.

2. The method according to claim 1, the method also includes: Obtain the parameter value of the original configuration parameter, where the parameter value of the original configuration parameter represents the parameter values of all the configuration parameters in the server; Compare the parameter value of the original configuration parameter with the parameter value of the target configuration parameter to obtain a comparison result; Based on the comparison result, merge the parameter values of the original configuration parameter and the target configuration parameter to generate a full-scale update notification related to updating the full-scale configuration parameter; Send the full-scale update notification to multiple of the clients so that the parameter values of the full-scale configuration parameter can take effect in the server.

3. The method according to claim 1, wherein, The step of changing the parameter value of the target configuration parameter by changing the value of the gray-scale variable to obtain the target gray-scale configuration version includes: In the case where the target configuration parameter is included in the initial gray-scale configuration version, modify the value of the gray-scale variable to modify the parameter value of the target configuration parameter to obtain the target gray-scale configuration version; and / or In the case where the target configuration parameter is not included in the initial gray-scale configuration version, increase the value of the gray-scale variable to increase the parameter value of the target configuration parameter to obtain the target gray-scale configuration version.

4. A method for validating configuration parameters, applied to a target client, wherein, The target client is determined from multiple clients, the method includes: Receive an update notification related to updating the target configuration parameter sent by the server; In response to the update notification, send an update request for updating the target configuration parameter to the server, so that the server creates an initial gray-scale configuration version based on the parameter value before the update of the target configuration parameter. In the initial gray-scale configuration version, a gray-scale variable is created based on the target configuration parameter, and by changing the value of the gray-scale variable, the parameter value of the target configuration parameter is changed to obtain a target gray-scale configuration version. Based on the target gray-scale configuration version, an update notification related to updating the target configuration parameter is generated. Based on the update request, the first server address information of the server is determined, and when it is determined that the first server address information matches the second server address information in the gray-scale cluster, the parameter value of the target configuration parameter is made effective in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter. The server is further configured to receive client information and server information from multiple clients, determine, based on the client information, the client that subscribes to the target configuration parameter as the target client, and determine the gray-scale cluster from the servers corresponding to the target client based on the server information.

5. An apparatus for making a configuration parameter effective, applied to a server, the apparatus comprises: A first sending module, configured to send an update notification related to updating a target configuration parameter to a target client, where the target client is determined from multiple clients; A first receiving module, configured to receive an update request sent by the target client in response to the update notification; A determining module, configured to determine the first server address information of the server based on the update request; and An effective module, configured to, when it is determined that the first server address information matches the second server address information in the gray-scale cluster, make the parameter value of the target configuration parameter effective in the target server in the gray-scale cluster, where the target server is used to test the target configuration parameter; The apparatus further comprises: A third receiving module, configured to receive client information and server information from multiple clients; A target client determining module, configured to determine, based on the client information, the client that subscribes to the target configuration parameter as the target client; and A gray-scale cluster determining module, configured to determine the gray-scale cluster from the servers corresponding to the target client based on the server information; A creating module, configured to create an initial gray-scale configuration version based on the parameter value before the update of the target configuration parameter before sending an update notification related to updating the target configuration parameter to the target client; A target gray-scale configuration version obtaining module, configured to change the parameter value of the target configuration parameter in the initial gray-scale configuration version to obtain a target gray-scale configuration version; A first generating module, configured to generate the update notification related to updating the target configuration parameter based on the target gray-scale configuration version; The target gray-scale configuration version obtaining module comprises: A first obtaining unit, configured to create a grayscale variable based on the target configuration parameter in the initial grayscale configuration version; A second obtaining unit, configured to change the parameter value of the target configuration parameter by changing the value of the grayscale variable, so as to obtain the target grayscale configuration version.

6. An apparatus for effectuating a configuration parameter, applied to a target client, wherein, the target client is determined from multiple clients, and the apparatus includes: A second receiving module, configured to receive an update notification related to updating a target configuration parameter sent by a server; A second sending module, configured to, in response to the update notification, send an update request for updating the target configuration parameter to the server, so that the server creates an initial grayscale configuration version based on the parameter value before the target configuration parameter is updated, creates a grayscale variable based on the target configuration parameter in the initial grayscale configuration version, changes the parameter value of the target configuration parameter by changing the value of the grayscale variable, obtains a target grayscale configuration version, generates the update notification related to updating the target configuration parameter based on the target grayscale configuration version, determines first server address information of the server based on the update request, and in the case where it is determined that the first server address information matches second server address information in a grayscale cluster, effectuate the parameter value of the target configuration parameter in a target server in the grayscale cluster, where the target server is used to test the target configuration parameter, and the server is further configured to receive client information and server information from multiple clients, determine the client that subscribes to the target configuration parameter as the target client based on the client information, and determine the grayscale cluster from the servers corresponding to the target client based on the server information.

7. An electronic device, including: One or more processors; A memory, configured to store one or more programs, wherein, when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method according to any one of claims 1 to 3, or the method according to claim 4.

8. A computer-readable storage medium, on which executable instructions are stored, and when the instructions are executed by a processor, the processor is caused to implement the method according to any one of claims 1 to 3, or the method according to claim 4.

9. A computer program product, the computer program product includes computer-executable instructions, and the computer-executable instructions are used to implement the method according to any one of claims 1 to 3, or the method according to claim 4 when being executed.

Citation Information

Patent Citations

  • Software gray level release method and apparatus

    CN108632374A

  • Business parameter updating method and device, computer equipment and storage medium

    CN114064082A