Performance analysis method and device based on configuration information hot loading

By using dynamic proxy objects in cloud platform deployment containers for hot loading and hot deployment of configuration information, the inconsistency and accuracy of performance testing and fault diagnosis on distributed cloud platforms are solved, and efficient performance analysis and fault diagnosis are achieved.

CN113986679BActive Publication Date: 2025-08-29INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111310135.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-05
Publication Date
2025-08-29
Estimated Expiration
2041-11-05

AI Technical Summary

Technical Problem

When performing performance testing and troubleshooting on distributed cloud platforms, the existing technology requires modifying programs, re-creating mirroring and deploying services, resulting in inaccurate and incoherent test results, and consume a lot of time and resources.

Method used

Through the method based on configuration information hot loading, dynamic proxy objects are used to adjust configuration properties in real time in the cloud platform deployment container, and the configuration information is hot loading and hot deployment, reducing labor costs, and maintaining the consistency and accuracy of the test scenario.

Benefits of technology

It realizes flexible adjustment of system configuration, reduces operational difficulty and maintenance costs, improves the accuracy of performance analysis and fault diagnosis, and is suitable for performance testing and fault diagnosis scenarios of distributed cloud platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113986679B_ABST
    Figure CN113986679B_ABST
Patent Text Reader

Abstract

The present disclosure provides a performance analysis method based on hot loading of configuration information, which relates to the field of cloud computing technology. The method includes: initializing the loading of the source configuration file of at least one application of the application terminal to the cloud platform deployment container; monitoring the configuration update push event released by the distributed configuration center to the cloud platform deployment container, and identifying the event type corresponding to the configuration update push event; judging whether the event type is a configuration attribute modification type, if so, creating a dynamic proxy object, injecting the dynamic proxy object into the cloud platform deployment container, triggering the execution of the configuration update push event; in response to the configuration attribute changes monitored during the triggering execution process, replacing the currently running configuration attribute with the dynamic proxy object and initializing the loading. The present disclosure also provides a performance analysis device, equipment, storage medium and program product based on hot loading of configuration information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of cloud computing technology, specifically to the field of performance testing, and more specifically to a performance analysis method and device based on configuration information hot loading. Background Art

[0002] With the establishment and promotion of the basic environment of distributed cloud platforms, which provide hardware-based services, computing, networking, and storage capabilities, more and more enterprise applications are beginning to use cloud platforms to deploy their own applications, combined with the easy-to-use and scalable deployment mechanism of distributed cloud platforms.

[0003] However, in some special scenarios, such as performance testing analysis and fault diagnosis, if the parameters of the running image program need to be adjusted, it is usually necessary to modify and submit the program, re-make the basic image version, and re-stop the service for redeployment. These processes are not conducive to on-site protection and cannot provide more accurate comparative test results.

[0004] For example, the current mainstream Spring program engineering projects deployed through distributed cloud platforms all require program modification, compilation, and packaging of application layer basic images to achieve project deployment and startup through cloud platform deployment. In this cloud platform deployment model, if you need to debug program performance and evaluate the impact of various configuration parameters (such as data source connection pool properties, logging levels, custom thread pool properties, or local cache configuration) on server performance, you must repeatedly modify configuration information, modify the program, redeploy, and prepare test scenarios to conduct performance evaluation processes. This process is likely to consume a lot of work time and costs, and is affected by factors such as inconsistent test scenarios and unstable deployment environments, which can easily lead to inaccurate actual performance evaluation results and unclear scenario comparisons. Summary of the Invention

[0005] In response to the above-mentioned deficiencies in the prior art, the present disclosure provides a performance analysis method and device based on hot loading of configuration information to solve technical problems such as inconsistent performance test evaluation scenarios, untimely on-site protection, or inaccurate comparison content caused by the need for distributed cloud platforms to modify key attributes such as resource configuration in real time.

[0006] According to a first aspect of the present disclosure, a performance analysis method based on hot loading of configuration information is provided, comprising: initializing the loading of a source configuration file of at least one application program of an application terminal into a cloud platform deployment container; monitoring configuration update push events issued by a distributed configuration center to the cloud platform deployment container, and identifying an event type corresponding to the configuration update push event; determining whether the event type is a configuration attribute modification type, and if so, creating a dynamic proxy object, injecting the dynamic proxy object into the cloud platform deployment container, and triggering the execution of the configuration update push event; and in response to configuration attribute changes monitored during the triggering execution process, replacing the currently running configuration attribute with the dynamic proxy object and performing initial loading.

[0007] According to an embodiment of the present disclosure, the method is applied to a cloud deployment server, and a cloud platform deployment container is built into the cloud deployment server.

[0008] According to an embodiment of the present disclosure, the source configuration file of at least one application of the application terminal is initialized and loaded into the cloud platform deployment container, including: the cloud platform deployment container scans all applications of the application terminal and monitors the process startup process of all applications until each application completes the initialization loading.

[0009] According to an embodiment of the present disclosure, before the step of monitoring the configuration update push event released by the distributed configuration center to the cloud platform deployment container, it also includes: the user submits a configuration change request to the distributed configuration center at the application terminal.

[0010] According to an embodiment of the present disclosure, before the step of identifying the event type corresponding to the configuration update push event, it also includes: according to the configuration update push event, modifying some configuration parameters corresponding to the source configuration file in the distributed configuration center, and pushing the modified part of the configuration parameters to the cloud platform deployment container.

[0011] According to an embodiment of the present disclosure, some configuration parameters corresponding to the source configuration file are transmitted in a key-value pair format to identify the event type corresponding to the configuration update push event, including: identifying the event type corresponding to the configuration update push event based on the attribute variable name of some configuration parameters in the key-value pair format.

[0012] According to an embodiment of the present disclosure, the configuration property modification type includes a data source configuration information modification type, and the dynamic proxy object includes a data source configuration property object.

[0013] According to an embodiment of the present disclosure, after the step of triggering the configuration update push event, the step further includes: preserving the dynamic proxy object and the current operating environment on site.

[0014] According to an embodiment of the present disclosure, the method also includes: creating a reset refresh component based on the currently running configuration properties, and binding the reset refresh component to a dynamic proxy object; locking the currently running configuration properties, and using the dynamic proxy object to replace and refresh the configuration properties; and loading and publishing the refreshed configuration properties.

[0015] According to an embodiment of the present disclosure, loading and publishing refreshed configuration attributes include: loading and publishing using a lazy loading proxy method.

[0016] According to an embodiment of the present disclosure, after the steps of loading and publishing the refreshed configuration attributes, the method further includes: releasing the original operating environment before the configuration attributes are replaced.

[0017] The second aspect of the present disclosure provides a performance analysis device based on hot loading of configuration information, including: an initialization loading module, used to initialize the loading of the source configuration file of at least one application of the application terminal to the cloud platform deployment container; a monitoring and identification module, used to monitor the configuration update push event released by the distributed configuration center to the cloud platform deployment container, and identify the event type corresponding to the configuration update push event; a dynamic proxy creation module, used to determine whether the event type is a configuration attribute modification type, and if so, create a dynamic proxy object, inject the dynamic proxy object into the cloud platform deployment container, and trigger the execution of the configuration update push event; and a hot loading module, used to replace the currently running configuration attribute with the dynamic proxy object and initialize the loading in response to the configuration attribute changes monitored during the triggering execution process.

[0018] According to an embodiment of the present disclosure, it also includes: a refresh component creation module, which is used to create a reset refresh component based on the currently running configuration properties, and bind the reset refresh component to a dynamic proxy object; a hot deployment module, which is used to lock the currently running configuration properties and use the dynamic proxy object to replace and refresh the configuration properties; and a loading and publishing module, which is used to load and publish the refreshed configuration properties.

[0019] The third aspect of the present disclosure provides an electronic device, comprising: one or more processors; a memory for storing one or more programs, wherein, when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned performance analysis method based on hot loading of configuration information.

[0020] A fourth aspect of the present disclosure further provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the above-mentioned performance analysis method based on hot loading of configuration information.

[0021] A fifth aspect of the present disclosure further provides a computer program product, including a computer program, which implements the above-mentioned performance analysis method based on configuration information hot loading when executed by a processor.

[0022] Compared with the prior art, the performance analysis method and device based on configuration information hot loading provided by the present disclosure have at least the following beneficial effects:

[0023] (1) The present disclosure can flexibly adjust the running system program, reduce the labor cost of actual operation and maintenance, maintain the consistency of performance test evaluation scenarios, facilitate comparison of the impact of different configuration parameters on the system operation status, reduce the difficulty of actual operation, and improve usability.

[0024] (2) Based on the existing distributed cloud platform deployment environment, the present invention integrates various customized functional components to realize the organization of hot loading and hot deployment of application configuration information, so as to reduce the work cost and overhead of version production and code maintenance.

[0025] (3) The present disclosure provides a performance analysis component that is adapted to existing distributed cloud deployments, which can flexibly adjust the scenarios to be analyzed and improve the accuracy of performance analysis and fault diagnosis. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0027] Figure 1 The system architecture of the performance analysis method and device based on configuration information hot loading according to an embodiment of the present disclosure is schematically shown;

[0028] Figure 2 Schematically shows a flow chart of a performance analysis method based on configuration information hot loading according to an embodiment of the present disclosure;

[0029] Figure 3 Schematically shows a flow chart of the execution publishing process according to an embodiment of the present disclosure;

[0030] Figure 4 A block diagram schematically illustrates a performance analysis device based on configuration information hot loading according to an embodiment of the present disclosure;

[0031] Figure 5 A block diagram schematically illustrates an execution and publishing process of a performance analysis device based on configuration information hot loading according to an embodiment of the present disclosure; and

[0032] Figure 6 A block diagram of an electronic device suitable for implementing a performance analysis method based on configuration information hot loading according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0033] 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 detailed description below, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

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

[0035] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled 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.

[0036] When expressions such as "at least one of A, B and C, etc." are used, they should generally be interpreted in accordance with the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0037] In the technical solution disclosed herein, the acquisition, storage and application of user personal information involved comply with the provisions of relevant laws and regulations, take necessary confidentiality measures, and do not violate public order and good morals.

[0038] Existing performance testing analysis, fault diagnosis and other scenarios based on distributed cloud platform deployment have shown that tool components that support real-time configuration information adjustment are more conducive to observing and evaluating the impact of various configuration attributes on project operation status.

[0039] In view of this, the embodiments of the present disclosure provide a performance analysis method, apparatus, device, storage medium and program product based on hot loading of configuration information, which relates to the field of cloud computing technology. The method comprises: initializing the loading of the source configuration file of at least one application of the application terminal into the cloud platform deployment container; monitoring the configuration update push event issued by the distributed configuration center to the cloud platform deployment container, and identifying the event type corresponding to the configuration update push event; determining whether the event type is a configuration attribute modification type, and if so, creating a dynamic proxy object, injecting the dynamic proxy object into the cloud platform deployment container, and triggering the execution of the configuration update push event; in response to the configuration attribute changes monitored during the triggering execution process, replacing the currently running configuration attribute with the dynamic proxy object and initializing the loading.

[0040] Figure 1 The system architecture 100 of the performance analysis method and apparatus suitable for hot loading based on configuration information according to an embodiment of the present disclosure is schematically shown. It should be noted that, Figure 1 The examples shown are merely examples of system architectures to which the embodiments of the present disclosure may be applied, to help those skilled in the art understand the technical content of the present disclosure, but do not mean that the embodiments of the present disclosure may not be used in other devices, systems, environments or scenarios.

[0041] like Figure 1 As shown, the system architecture 100 according to this embodiment may include application terminals 101, 102, 103, a distributed configuration center 104, and a cloud deployment server 105. It should be noted that communication links can be provided through a network between the application terminals 101, 102, 103 and the distributed configuration center 104, as well as between the distributed configuration center 104 and the cloud deployment server 105, to achieve mutual communication. The network may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0042] Users can use application terminals 101, 102, and 103 to interact with the distributed configuration center 104 via the network to receive or send messages, etc. Various communication client applications can be installed on the application terminals 101, 102, and 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

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

[0044] The distributed configuration center 104 can centrally manage the configurations of different application environments and clusters. After the configuration is modified, it can be pushed to the application terminals 101, 102, and 103 in real time through the network. It also has standardized permissions, process governance and other features, and is suitable for microservice configuration management scenarios.

[0045] The cloud deployment server 105 can be a server that provides various services, such as a background management server (for example only) that provides support for the configuration attributes built by the distributed configuration center 104. The background management server can analyze and process the received configuration attribute information and feed back the processing results to the distributed configuration center 104.

[0046] It should be noted that the performance analysis method based on hot loading of configuration information provided in the embodiment of the present disclosure can be executed by the cloud deployment server 105. Accordingly, the performance analysis device based on hot loading of configuration information provided in the embodiment of the present disclosure can be set in the cloud deployment server 105. Alternatively, the performance analysis method based on hot loading of configuration information provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the cloud deployment server 105 and can communicate with the application terminals 101, 102, 103 and / or the distributed configuration center 104. Accordingly, the performance analysis device based on hot loading of configuration information provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the cloud deployment server 105 and can communicate with the application terminals 101, 102, 103 and / or the distributed configuration center 104.

[0047] It should be understood that Figure 1 The number of application terminals, distributed configuration centers, and cloud deployment servers in the embodiment is merely illustrative. Any number of application terminals, distributed configuration centers, and cloud deployment servers may be provided as required.

[0048] The following will be based on Figure 1 The system architecture described by Figures 2 and 3 A performance analysis method based on configuration information hot loading according to a disclosed embodiment is described in detail.

[0049] Spring is an open source development framework for Java. The Spring container is controlled by Spring and is used to manage all application resources (including classes, configuration files, etc.). In traditional programs, classes (i.e., objects) are created by developers, while in the Spring container, the generation of objects is completed by the Spring framework. Applications refer to programs running in the system. Each program has corresponding files stored in a specific location, mainly including class files, configuration files, etc. The disclosed embodiment combines the configuration property loading mechanism of the mainstream Spring project to achieve the function of hot loading and hot deployment of configuration information, which can be flexibly configured and takes effect in real time.

[0050] Figure 2 The flowchart of the performance analysis method based on configuration information hot loading according to an embodiment of the present disclosure is schematically shown.

[0051] like Figure 2 As shown, the performance analysis method based on configuration information hot loading of this embodiment may include operations S210 to S240.

[0052] In operation S210 , a source configuration file of at least one application program of the application terminal is initially loaded into a cloud platform deployment container.

[0053] In operation S220 , a configuration update push event published by the distributed configuration center to the cloud platform deployment container is monitored, and an event type corresponding to the configuration update push event is identified.

[0054] In operation S230 , it is determined whether the event type is a configuration attribute modification type. If so, a dynamic proxy object is created and injected into the cloud platform deployment container to trigger the execution of a configuration update push event.

[0055] In operation S240 , in response to the configuration property changes monitored during the triggering execution process, the currently running configuration properties are replaced with dynamic proxy objects and initialized and loaded.

[0056] According to an embodiment of the present disclosure, the method is applied to a cloud deployment server, and the cloud platform deployment container is built into the cloud deployment server. Therefore, the method of the present disclosure can be executed by the cloud deployment server.

[0057] Through the embodiments of the present disclosure, a cloud platform deployment container built into a cloud deployment server is utilized to deploy application processes, and configuration information is hot loaded and hot deployed through the created dynamic proxy object. This can be applied to performance test setup scenarios with greater flexibility and adaptability, and is particularly suitable for performance test scenarios that require real-time modification of key attributes such as resource configuration to maintain consistency in comparative monitoring.

[0058] In the embodiment of the present disclosure, the above-mentioned operation S210 initializes the loading of the source configuration file of at least one application of the application terminal to the cloud platform deployment container, which may specifically include: the cloud platform deployment container scans all applications of the application terminal, monitors the process startup process of all applications until each application completes the initialization loading.

[0059] During application startup, the application needs to identify, load, and initialize the configuration properties required for running the application. Applications are deployed as processes on the corresponding host machine on the cloud platform. The process startup process spans from waking up the virtual machine to ensuring that all startup information within the process is loaded and configured, ready for network calls. This step is implemented by a program that scans the startup process within the cloud platform's deployed containers to confirm that all configuration properties within the container have been initialized and loaded.

[0060] In operation S220, the monitoring action can be performed using an event monitoring component built into the cloud deployment server. Upon receiving configuration information changes, the distributed configuration center will publish the configuration event, transmitting the modified content via the network in the form of a configuration file to the cloud platform deployment container of each subscribing configuration center.

[0061] In the disclosed embodiment, before monitoring configuration update push events issued by the distributed configuration center to the cloud platform deployment container, the following step is also included: a user submits a configuration change request to the distributed configuration center via an application terminal. First, the user terminal manually submits the configuration information changes to the distributed configuration center. After receiving the changes, the distributed configuration center pushes the modified configuration information cache file to the cloud platform deployment container.

[0062] In an embodiment of the present disclosure, before the step of identifying the event type corresponding to the configuration update push event, it also includes: according to the configuration update push event, modifying some configuration parameters corresponding to the source configuration file in the distributed configuration center, and pushing the modified configuration parameters to the cloud platform deployment container.

[0063] Since the distributed configuration center has not made any substantial changes to the configuration information when it publishes the configuration update push event to the cloud platform deployment container, this step requires configuring the configuration information attributes that need to be modified, that is, some configuration parameters corresponding to the source configuration file, under the specified namespace system of the distributed configuration center, and pushing the modified configuration parameters to the cloud platform deployment container, so that the cloud platform deployment container receives the corresponding modified configuration cache file.

[0064] In the embodiment of the present disclosure, some configuration parameters corresponding to the source configuration file are transmitted in a key-value pair format. A key-value pair is a data format that is structured to be stored and transmitted in a key-value pair format.

[0065] Furthermore, identifying the event type corresponding to the configuration update push event in the above operation S220 includes: identifying the event type corresponding to the configuration update push event according to the attribute variable name of the partial configuration parameters in the key-value pair format.

[0066] For example, the attribute variable name in the key-value pair format can be represented as the corresponding key-value key value. Therefore, the present disclosure implements the screening and filtering of restriction requests by identifying whether the key value actually received by the cloud platform deployment container represents the attribute configuration modification.

[0067] If the event type is determined to be a configuration property modification, a dynamic proxy object is created and injected into the cloud platform deployment container, triggering the configuration update push event. Specifically, based on the Spring project configuration mechanism, a new dynamic proxy object can be created through a BeanPostProcessor, and the corresponding key-value pairs can be injected into the dynamic proxy object processing process through custom annotations.

[0068] Since dynamic proxy is a proxy mode in programming, it is equivalent to dynamically generating proxy objects using reflection mechanism when the program is running, and can flexibly generate proxy processing. Therefore, the embodiment of the present disclosure can flexibly adjust the running system program and reduce the labor cost of actual operation and maintenance.

[0069] Specifically, in the embodiments of the present disclosure, the configuration property modification type includes the data source configuration information modification type, and the dynamic proxy object includes the data source configuration property object. That is, for example, identifying the key value actually received to represent the data source configuration information modification type. Since the data source configuration information modification type is only an example scenario supporting hot reload deployment, the dynamic proxy process can be specified to execute the data source creation method. Thus, the present disclosure can create a new data source configuration property object through the dynamic proxy process.

[0070] After the dynamic proxy object is created and the new configuration loading properties are prepared, the dynamic proxy will match the actual event to be published and triggered, that is, immediately trigger the configuration update push event.

[0071] In the embodiment of the present disclosure, after the step of triggering the configuration update push event, the following step is further included: preserving the dynamic proxy object and the current operating environment. Preserving the current operating environment means preserving the operating environment scene before modification.

[0072] By using the dynamic proxy to trigger and execute configuration update push events, a new monitoring component can be provided during the dynamic proxy execution process to monitor configuration attribute changes that occur during the trigger execution process in real time. Upon detecting a configuration attribute change, the currently running configuration attributes are replaced with the dynamic proxy object and initialized and loaded in response to the configuration attribute changes detected during the trigger execution process. Specifically, the currently running configuration attributes may include, for example, data source configuration, as well as configuration source information such as circuit breaker parameters and network configuration parameters.

[0073] Figure 3 The flowchart of the execution publishing process according to the embodiment of the present disclosure is schematically shown.

[0074] like Figure 3 As shown, the steps after operation S240 may further include operations S310 to S330.

[0075] In operation S310, a reset refresh component is created according to the configuration properties of the current operation, and the reset refresh component is bound to a dynamic proxy object.

[0076] In operation S320 , the currently running configuration properties are locked, and the dynamic proxy object is used to replace and refresh the configuration properties.

[0077] In operation S330 , the refreshed configuration properties are loaded and published.

[0078] Through the embodiments of the present disclosure, the reset refresh component is used to obtain and refresh the current running environment. This step binds the newly created reset refresh component to the newly created dynamic proxy object, and the dynamic proxy object performs configuration attribute replacement and refresh, and performs hot deployment of the configuration file, which saves time and further improves the efficiency of hot deployment, thereby reducing the work cost and overhead of version production and code maintenance.

[0079] In the disclosed embodiment, the loading and publishing of the refreshed configuration properties in the aforementioned operation S330 includes: loading and publishing using a lazy loading proxy method. Lazy loading (LazyInitMethod) is a method of loading configuration properties in Spring, indicating that the loading process is not loaded when the process is started, but is loaded when it is actually triggered.

[0080] In the embodiment of the present disclosure, after loading and publishing the refreshed configuration attributes, the method further includes releasing the original operating environment before the configuration attributes are replaced, wherein the release of the original operating environment includes but is not limited to network connection resources.

[0081] Through the embodiments of the present disclosure, based on the processing and handling of the above-mentioned component processes, the embodiments of the present disclosure can realize real-time hot deployment of running application processes to achieve the purpose of flexible adjustment, timely monitoring, and protection of environmental stability, which is convenient for system monitoring and analysis.

[0082] Based on the above performance analysis method based on configuration information hot loading, the present disclosure also provides a performance analysis device based on configuration information hot loading. Figures 4 and 5 The device is described in detail.

[0083] Figure 4A block diagram of a performance analysis device based on configuration information hot loading according to an embodiment of the present disclosure is schematically shown.

[0084] like Figure 4 As shown, the performance analysis device 400 based on configuration information hot loading may include an initialization loading module 410 , a monitoring identification module 420 , a dynamic proxy creation module 430 and a hot loading module 440 .

[0085] The initialization loading module 410 is used to initialize and load the source configuration file of at least one application program of the application terminal to the cloud platform deployment container. In one embodiment, the initialization loading module 410 can be used to perform the operation S210 described above, which will not be repeated here.

[0086] The monitoring identification module 420 is used to monitor the configuration update push event released by the distributed configuration center to the cloud platform deployment container and identify the event type corresponding to the configuration update push event. In one embodiment, the monitoring identification module 420 can be used to perform the operation S220 described above, which will not be repeated here.

[0087] Dynamic proxy creation module 430 is used to determine whether the event type is a configuration attribute modification type. If so, it creates a dynamic proxy object and injects the dynamic proxy object into the cloud platform deployment container to trigger the execution of the configuration update push event. In one embodiment, dynamic proxy creation module 430 can be used to perform operation S230 described above, which will not be repeated here.

[0088] The hot loading module 440 is used to replace the currently running configuration attributes with the dynamic proxy object and initialize the loading in response to the configuration attribute changes monitored during the trigger execution process. In one embodiment, the hot loading module 440 can be used to perform the operation S240 described above, which will not be repeated here.

[0089] Through the embodiments of the present disclosure, a cloud platform deployment container built into a cloud deployment server is utilized to deploy application processes and perform hot loading and hot deployment of configuration information. This can be applied to performance test setup scenarios with greater flexibility and adaptability, and is particularly suitable for performance test scenarios that require real-time modification of key attributes such as resource configuration to maintain consistency in comparative monitoring.

[0090] Figure 5 A block diagram schematically illustrates an execution release process of a performance analysis device based on configuration information hot loading according to an embodiment of the present disclosure.

[0091] like Figure 5 As shown, according to an embodiment of the present disclosure, it further includes a refresh component creation module 510 , a hot deployment module 520 and a load release module 530 .

[0092] The refresh component creation module 510 is used to create a reset refresh component according to the currently running configuration attributes and bind the reset refresh component to the dynamic proxy object. In one embodiment, the refresh component creation module 510 can be used to perform the operation S310 described above, which will not be repeated here.

[0093] The hot deployment module 520 is used to lock the currently running configuration attributes and use the dynamic proxy object to replace and refresh the configuration attributes. In one embodiment, the hot deployment module 520 can be used to perform the operation S320 described above, which will not be repeated here.

[0094] The loading and publishing module 530 is used to load and publish the refreshed configuration attributes. In one embodiment, the loading and publishing module 530 can be used to perform the operation S330 described above, which will not be described in detail here.

[0095] Through the embodiments of the present disclosure, the reset refresh component is used to obtain and refresh the current operating environment. This step binds the newly created reset refresh component to the newly created dynamic proxy object, and the dynamic proxy object performs configuration attribute replacement and refresh, and performs hot deployment of the configuration file, which saves time and further improves the efficiency of hot deployment.

[0096] According to an embodiment of the present disclosure, any multiple modules among the initialization loading module 410, the monitoring identification module 420, the dynamic proxy creation module 430, the hot loading module 440, the refresh component creation module 510, the hot deployment module 520, and the load release module 530 can be combined into a single module for implementation, or any one of these modules can be split into multiple modules. Alternatively, at least part of the functionality of one or more of these modules can be combined with at least part of the functionality of other modules and implemented in a single module. According to an embodiment of the present disclosure, at least one of the initialization loading module 410, the monitoring identification module 420, the dynamic proxy creation module 430, the hot loading module 440, the refresh component creation module 510, the hot deployment module 520, and the load release module 530 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 a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or in any one of the three implementation methods of software, hardware, and firmware, or in an appropriate combination of any of them. Alternatively, at least one of the initialization loading module 410, the monitoring identification module 420, the dynamic proxy creation module 430, the hot loading module 440, the refresh component creation module 510, the hot deployment module 520, and the load release module 530 can be at least partially implemented as a computer program module, which can perform the corresponding function when the computer program module is executed.

[0097] Figure 6 A block diagram of an electronic device suitable for implementing a performance analysis method based on configuration information hot loading according to an embodiment of the present disclosure is schematically shown.

[0098] like Figure 6 As shown, the electronic device 600 according to an embodiment of the present disclosure includes a processor 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage part 608 into a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include an onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for executing different actions of the method flow according to an embodiment of the present disclosure.

[0099] Various programs and data required for the operation of the electronic device 600 are stored in the RAM 603. The processor 601, ROM 602, and RAM 603 are connected to each other via a bus 604. The processor 601 performs various operations of the method flow according to the embodiment of the present disclosure by executing the programs in the ROM 602 and / or RAM 603. It should be noted that the programs may also be stored in one or more memories other than the ROM 602 and RAM 603. The processor 601 may also perform various operations of the method flow according to the embodiment of the present disclosure by executing the programs stored in the one or more memories.

[0100] According to an embodiment of the present disclosure, the electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to the bus 604. The electronic device 600 may further include one or more of the following components connected to the I / O interface 605: an input portion 606 including a keyboard, a mouse, etc.; an output portion 607 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage portion 608 including a hard disk; and a communication portion 609 including a network interface card such as a LAN card or a modem. The communication portion 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the I / O interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed in the drive 610 as needed, so that a computer program read therefrom can be installed into the storage portion 608 as needed.

[0101] 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 independently without being incorporated into the device / apparatus / system. The computer-readable storage medium carries one or more programs, which, when executed, implement the performance analysis method based on configuration information hot loading according to the embodiments of the present disclosure.

[0102] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, such as but not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, apparatus, or device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 602 and / or RAM 603 described above and / or one or more memories other than ROM 602 and RAM 603.

[0103] Embodiments of the present disclosure also include a computer program product, comprising a computer program containing program code for executing the method shown in the flowchart. When the computer program product is executed in a computer system, the program code is used to enable the computer system to implement the performance analysis method based on hot loading of configuration information provided in the embodiments of the present disclosure.

[0104] The computer program executes the above functions defined in the system / device of the embodiment of the present disclosure when the processor 601 executes the computer program. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0105] In one embodiment, the computer program may be stored on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may be transmitted and distributed in the form of a signal on a network medium, downloaded and installed via the communication portion 609, and / or installed from a removable medium 611. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0106] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 609, and / or installed from a removable medium 611. When the computer program is executed by the processor 601, the above-described functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the systems, devices, means, modules, units, etc. described above can be implemented by computer program modules.

[0107] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computer programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, python, "C" 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 cases involving 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, using an Internet service provider to connect via the Internet).

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

[0109] Those skilled in the art will appreciate that the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways, even if such combinations and / or couplings are not explicitly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or couplings are intended to fall within the scope of this disclosure.

[0110] The embodiments of the present disclosure are described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although each embodiment has been described separately above, this does not mean that the measures in each embodiment cannot be used in combination to advantage. 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 may make various substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A performance analysis method based on hot loading of configuration information, applied to a cloud deployment server, wherein an application terminal is communicatively connected to the cloud deployment server via a distributed configuration center, the method comprising: Initially loading a source configuration file of at least one application program of the application terminal into a cloud platform deployment container, wherein the cloud platform deployment container is built into the cloud deployment server and the cloud platform deployment container has subscribed to the distributed configuration center; Listening to configuration update push events published by the distributed configuration center to the cloud platform deployment container, and identifying the event type corresponding to the configuration update push event; Determine whether the event type is a configuration attribute modification type. If so, create a dynamic proxy object, inject the dynamic proxy object into the cloud platform deployment container, and trigger the execution of the configuration update push event; In response to the configuration property changes monitored during the trigger execution process, the currently running configuration properties are replaced with the dynamic proxy object and initialized and loaded.

2. The method according to claim 1, wherein Initializing the loading of a source configuration file of at least one application program of the application terminal into a cloud platform deployment container includes: The cloud platform deploys a container to scan all applications on the application terminal and monitor the process startup of all applications until each application completes initialization loading.

3. The method according to claim 1, wherein Before the step of monitoring the configuration update push event published by the distributed configuration center to the cloud platform deployment container, the method further includes: The user submits a configuration change request to the distributed configuration center at the application terminal.

4. The method according to claim 1, wherein Before the step of identifying the event type corresponding to the configuration update push event, the method further includes: According to the configuration update push event, some configuration parameters corresponding to the source configuration file are modified in the distributed configuration center, and the modified configuration parameters are pushed to the cloud platform deployment container.

5. The method according to claim 4, wherein Some configuration parameters corresponding to the source configuration file are transmitted in a key-value pair format, and the identifying the event type corresponding to the configuration update push event includes: According to the attribute variable names of the partial configuration parameters in the key-value pair format, an event type corresponding to the configuration update push event is identified.

6. The method according to claim 1, wherein The configuration attribute modification type includes a data source configuration information modification type, and the dynamic proxy object includes a data source configuration attribute object.

7. The method according to claim 1, wherein After the step of triggering the execution of the configuration update push event, the method further includes: The dynamic proxy object and the current operating environment are retained on site.

8. The method according to claim 1, wherein The method further comprises: Creating a reset refresh component according to the currently running configuration properties, and binding the reset refresh component to the dynamic proxy object; Lock the currently running configuration properties, and use the dynamic proxy object to replace and refresh the configuration properties; Load and publish the refreshed configuration properties.

9. The method according to claim 8, wherein The loading and publishing of the refreshed configuration attributes includes: Use lazy loading proxy method for loading and publishing.

10. The method according to claim 8, wherein After the steps of loading and publishing the refreshed configuration attributes, the method further includes: Release the original runtime environment before configuration properties are replaced.

11. A performance analysis device based on hot loading of configuration information, applied to a cloud deployment server, wherein an application terminal is communicatively connected to the cloud deployment server via a distributed configuration center, the device comprising: an initialization loading module, configured to initialize and load a source configuration file of at least one application program of the application terminal into a cloud platform deployment container, wherein the cloud platform deployment container is built into the cloud deployment server and the cloud platform deployment container has subscribed to the distributed configuration center; A monitoring and identification module is used to monitor the configuration update push event released by the distributed configuration center to the cloud platform deployment container, and identify the event type corresponding to the configuration update push event; a dynamic proxy creation module, configured to determine whether the event type is a configuration attribute modification type, and if so, to create a dynamic proxy object, inject the dynamic proxy object into the cloud platform deployment container, and trigger the execution of the configuration update push event; and The hot loading module is used to replace the currently running configuration attributes with the dynamic proxy object and perform initial loading in response to the configuration attribute changes monitored during the trigger execution process.

12. The device according to claim 11, wherein Also includes: A refresh component creation module, configured to create a reset refresh component according to the currently running configuration properties, and bind the reset refresh component to the dynamic proxy object; A hot deployment module, configured to lock the currently running configuration attributes and use the dynamic proxy object to replace and refresh the configuration attributes; as well as The loading and publishing module is used to load and publish the refreshed configuration properties.

13. An electronic device comprising: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors are enabled to execute the method according to any one of claims 1 to 10.

14. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to perform the method according to any one of claims 1 to 10.

15. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 10 is implemented.

Citation Information

Patent Citations

  • PHP dynamic configuration automatic effective method and system

    CN113157332A