CN112114893B - Process-oriented service configuration management and integration tool and method - Google Patents

Process-oriented service configuration management and integration tool and method Download PDF

Info

Publication number
CN112114893B
CN112114893B CN202010818889.XA CN202010818889A CN112114893B CN 112114893 B CN112114893 B CN 112114893B CN 202010818889 A CN202010818889 A CN 202010818889A CN 112114893 B CN112114893 B CN 112114893B
Authority
CN
China
Prior art keywords
configuration
instance
service
module
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010818889.XA
Other languages
Chinese (zh)
Other versions
CN112114893A (en
Inventor
朱利鲁
黄凯
台宪青
苏晓露
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Research Institute Institute Of Electronics Chinese Academy Of Sciences
Original Assignee
Suzhou Research Institute Institute Of Electronics Chinese Academy Of Sciences
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Research Institute Institute Of Electronics Chinese Academy Of Sciences filed Critical Suzhou Research Institute Institute Of Electronics Chinese Academy Of Sciences
Priority to CN202010818889.XA priority Critical patent/CN112114893B/en
Publication of CN112114893A publication Critical patent/CN112114893A/en
Application granted granted Critical
Publication of CN112114893B publication Critical patent/CN112114893B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a service configuration management and integration tool and a method facing to a process, wherein the tool comprises a configuration template management module, a configuration instance management module and a configuration integration module, wherein the configuration template management module is used for constructing a configuration template according to a standardized configuration template specification and carrying out service configuration management, the configuration template uses a special placeholder to identify configuration fragments which can be changed in a configuration file and selectable filling values of the configuration fragments, and meanwhile, the configuration fragments which are not modified are shielded; the configuration instance management module is used for instantiating the configuration template according to configuration template configuration items and configuration item constraints and simultaneously realizing the distribution, rollback and distribution history management of the configuration instance; and the configuration integration module is used for opening an interface to the service and performing configuration integration of the service. The invention can realize large-scale service configuration management and has stronger operability and practical value.

Description

Process-oriented service configuration management and integration tool and method
Technical Field
The invention relates to the technical field of computer information, in particular to a service configuration management and integration tool and method facing to a process.
Background
In the early single service architecture era, service configuration and service entities are packaged in the same archive package for installation and deployment, and once the service needs to modify configuration, the service needs to be packaged again or enter the archive package for manual modification, which brings great difficulty to service operation and maintenance management. At present, in the era of micro-service architecture, an application is usually split into a plurality of service units with single functions and capable of being independently deployed and accessed, each service unit has its own configuration, and as the service units have various configurations and large quantities, and the unit configurations are mutually interleaved, a high requirement is provided for unified configuration management. In view of the urgent need for unified configuration management, a great deal of academic research and engineering practice is carried out at home and abroad.
In the aspect of academic research, a distributed consistent microservice configuration center is researched, and the distributed storage problem of microservices is solved based on a distributed consistent algorithm; the distributed application configuration management platform based on the microservice is researched, and a new thought is provided for configuration management and configuration release.
In engineering practice, a hundred-degree distributed configuration management platform Disconf is provided, so that the same online package can be online in a plurality of environments (RD/QA/PRODUCTION) without changing the configuration, the configuration can be changed, and the online package can take effect in real time without repacking or restarting; the distributed configuration management system Diamond of the Taobao can enable the service process in the cluster to dynamically sense the change of the data, and the updating of the configuration data can be realized without restarting the service; the Apollo open source configuration management center developed by a portable framework department can be used for centralized management of configurations applied to different environments and different clusters, and the configurations can be pushed to an application end in real time after being modified; in addition, the Spring Cloud Config provides a configuration management component, and the micro service node configuration automatic refresh function can be realized through the Spring Cloud Bus.
It is noted that the focus of these academic research and engineering practice is mainly on the configuration storage and dynamic configuration update, but neglects the simplification of the configuration management process and the engineering and standardization of the configuration use process. Generally, service development and operation and maintenance are not the same person, after the service is on line, the operation and maintenance person is responsible for the service configuration management (including configuration updating, publishing and the like), and due to the fact that the configuration is separated from the service, readability is lacked, and the configuration changing difficulty and the configuration error probability are greatly improved. Furthermore, the profile content of the service should not be exposed to the operation and maintenance personnel, who are more concerned about the segments whose configuration needs to be changed and how these segments are changed. In summary, a process-oriented, unified and normalized configuration management and integration tool is lacking in the related art, so as to reduce the service configuration use cost and unify the service configuration use flow.
Disclosure of Invention
The invention aims to provide a process-oriented service configuration management and integration tool and a process-oriented service configuration management and integration method, which can normalize the service configuration using process by providing a uniform configuration management and integration process, thereby reducing the service configuration management and using cost.
The technical solution for realizing the purpose of the invention is as follows: a service configuration management and integration tool facing to the process comprises a configuration template management module, a configuration instance management module and a configuration integration module, wherein:
the configuration template management module is used for constructing a configuration template according to a standardized configuration template specification and carrying out service configuration management, the configuration template uses special placeholders to identify configuration fragments which can be changed in a configuration file and optional filling values of the configuration fragments, and meanwhile, the configuration fragments which are not openly modified are shielded;
the configuration instance management module is used for instantiating the configuration template according to configuration template configuration items and configuration item constraints and simultaneously realizing the distribution, rollback and distribution history management of the configuration instance;
and the configuration integration module is used for opening an interface to the service and performing configuration integration of the service.
Further, the configuration template management module comprises a configuration template construction and access sub-module, a configuration item and configuration item constraint extraction sub-module, and a configuration template persistence sub-module, wherein:
the configuration template construction and access submodule is used for constructing a configuration template by using a configuration template specification and replacing configuration fragments needing to be opened and modified by special placeholders;
the configuration item and configuration item constraint extraction submodule is used for extracting the configuration item placeholder and analyzing the configuration item and configuration item constraints;
and the configuration template persistence sub-module is used for uniformly persisting the configuration templates into the relational database.
Furthermore, the configuration template management module further comprises a configuration template registration interface for the third party platform to call and access the service configuration template in the third party platform for unified management.
Furthermore, the special placeholder comprises two parts, namely a configuration item and a configuration item constraint, wherein the configuration item is used for identifying the configuration fragment and comprises three parts, namely a key, a default value and description information; the configuration item constraint is used for constraining the optional filling value and encryption control of the configuration fragment, and comprises a value range and encryption control information.
Further, the configuration instance management module includes a configuration instance construction sub-module, a configuration instance publishing sub-module, and a configuration instance rollback sub-module, wherein:
the configuration instance construction submodule is used for setting configuration item values, mapping the configuration item associations to special placeholders in the configuration template, restoring configuration files available for service, namely configuration instances, and persisting the configuration instances to a relational database;
the configuration instance issuing sub-module is used for receiving a configuration instance issuing request, inquiring information of an issued configuration instance from a relational database, setting the issuing state of the information to be activated, issuing a configuration instance issuing event and synchronizing the issuing information of the configuration instance to an issuing history record;
and the configuration instance rollback sub-module is used for receiving a configuration instance rollback request, inquiring the release history of the configuration instance, acquiring the configuration instance newly released next time, setting the release state of the configuration instance to be activated, setting the state of the configuration instance newly released to be inactivated, and releasing a configuration instance release event.
Further, the configuration integration module includes a uniform open interface sub-module, a configuration cache sub-module, a configuration encryption sub-module, and a change pushing sub-module, wherein:
the unified open interface submodule is used for providing a configuration pull and configuration subscription/push interface and supporting service configuration acquisition;
the configuration cache submodule is used for caching the issued/rolled-back configuration examples in real time, reading the configuration examples from the cache in the configuration pulling process, and loading the configuration examples from the relational database when the configuration examples do not exist in the cache;
the configuration encryption submodule is used for carrying out encryption transmission on the sensitive configuration items in the configuration pulling and changing pushing processes and using the sensitive configuration items after local decryption;
and the change pushing submodule is used for pushing the changed configuration to the application program when the configuration is changed.
Furthermore, the configuration encryption submodule uses the engineering ID created in the configuration template management module as a secret key by introducing an AES encryption technology to implement a configuration encryption/decryption process.
Furthermore, the change pushing sub-module introduces an HTTP long connection technology, and the configuration client subscribes the configuration through the project ID.
A process-oriented service configuration management and integration method is characterized in that configuration pulling and configuration subscription/pushing are carried out based on the process-oriented service configuration management and integration tool.
Further, the specific process of configuring pull and subscribing/pushing is as follows:
the specific process of configuration pulling comprises the following steps:
1.1) calling and configuring a pull interface by a service, and initiating a pull service configuration request;
1.2) the configuration integration module receives the configuration pulling request and processes the return, the concrete steps include:
a) b, inquiring the matched configuration examples from the memory cache, if the matched configuration examples exist, directly returning, and if the matched configuration examples do not exist, executing the step b);
b) the calling configuration instance management module inquires the latest configuration instance issued by the project, caches the configuration instance in the memory and then sends the configuration instance to a calling end, and in addition, sensitive configuration items are encrypted before transmission;
c) the calling end returns the pulled configuration to the service, if a sensitive configuration item exists, decryption is needed first, and meanwhile, the configuration item is cached locally;
1.3) if the configuration acquisition fails due to the error in the step 2), the calling terminal pulls the configuration from the local, so that the failure of missing and starting of the service configuration is avoided;
1.4) service usage configuration;
(II) the specific process of configuring subscription/pushing comprises the following steps:
2.1) the service calls a configuration subscription interface and establishes HTTP long connection communication with the configuration integration module;
2.2) in the long connection overtime time range, if the subscription configuration changes, the configuration instance management module notifies the configuration integrated management module in an event publishing mode, and the configuration integrated management module acquires the configuration change notification in an event monitoring mode and caches the changed configuration in a memory; if the engineering configuration is not changed within the timeout time range of the long connection, the service initiatively initiates the long connection communication process again, the changed configuration example is pushed to a calling end within the timeout range, and in addition, sensitive configuration items are encrypted before transmission;
2.3) the calling end returns the received configuration to the application program, if a sensitive configuration item exists, decryption is needed first, and meanwhile, the configuration item is cached locally;
2.4) service usage changed configuration.
Compared with the prior art, the invention has the remarkable advantages that: 1) a unified configuration management and integration scheme is provided to standardize the configuration and use process of the service. 2) The universal and standardized service configuration management process is provided, and the cost of service configuration management and use is effectively reduced. 3) Based on the effects, the method can realize large-scale service configuration management in engineering application, and has strong operability and practical value.
Drawings
FIG. 1 is a block diagram of the architecture of the process oriented service configuration management and integration tool of the present invention.
Fig. 2 is a schematic diagram of configuration example construction.
Fig. 3 is a schematic diagram of configuration publishing.
FIG. 4 is a diagram of configuration instances versus publication history changes during configuration publication.
Fig. 5 is a diagram of a configuration rollback principle.
FIG. 6 is a diagram of configuration instances versus publication history changes during configuration rollback.
FIG. 7 is a configuration pull dataflow diagram.
Fig. 8 is a configuration push data flow diagram.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The process-oriented service configuration management and integration tool standardizes the configuration and use process of the service through a unified configuration management and integration process, and reduces the service configuration management and use cost. The overall block diagram is shown in fig. 1, and includes a configuration template management module, a configuration instance management module, and a configuration integration module.
And the configuration template management module is used for providing a universal and normalized service configuration management process by using the unified configuration template specification. Special placeholders are used in the configuration template to identify configuration fragments that can be changed in the configuration file, and optional padding values for these configuration fragments. The configuration template management process shields the configuration fragments which are not openly modified, and the configuration management process is effectively simplified.
And the configuration instance management module is used for instantiating the configuration items and the configuration item constraints according to the configuration template and providing functions of configuration instance issuing, rollback, issuing history management and the like. And in the configuration instance management module, realizing the association mapping from the configuration items to the configuration template, so that the configuration template is restored into a configuration file, and the construction of the configuration instance is completed. Meanwhile, the configuration instance management module adopts the modes of event issuing, monitoring and the like to provide the management functions of issuing, rolling back and the like of the configuration instance.
And the configuration integration module is used for supporting the service to carry out configuration integration, opening an interface to the service, providing configuration pull and subscription/push capabilities and completing the configuration integration process of the service. In the configuration integration module, a lightweight HTTP interface and a configuration Client (Client) with multiple languages are provided to realize the configuration integration process.
Configuration template management module
Referring to the corresponding part of fig. 1, a configuration template management module sub-function module, referring to fig. 2, a configuration template and configuration item example, includes the following specific implementation steps:
1. configuration template construction and access
1) The configuration template is built using the configuration template specification. A project is newly built at an interactive interface (such as Portal) end of the configuration management and integration tool, the original configuration file of the service is uploaded and opened in the project, and the configuration fragment needing to be opened and modified is replaced by a special placeholder. The special placeholder comprises two parts of configuration items and configuration item constraints, and is specifically formatted as @ { "KEY": "× ×"), "DEFAULTVALUE": "× ×" and "COMMENT": "×" and "RANGE": [ "×" and "xxx", "" × "]," encryption ": and" XXXX "}, wherein the configuration items are used for identifying configuration segments, and comprise three parts of KEY (KEY), Default (DEFAULTVALUE) and description (COMMENT) information; the configuration item constraint is used for constraining optional filling values and encryption control of the configuration segment, and comprises a value RANGE (RANGE) part and an encryption control (encryption) part. An example configuration template is as follows:
Figure GDA0002954594720000061
the example above is a log4j log configuration template in which irrelevant configuration fragments have been omitted with … …. In the log4j.xml log configuration template, only the configuration fragment occupied by "@ { … … }" supports modification at the Portal end, and the rest part is shielded. The configuration fragment is identified by a configuration item named 'level', the default value is 'info', the configuration item is restricted to take values from three options of 'info', 'war' and 'error', the configuration item is not encrypted for transmission, and the configuration fragment is presented in an original text mode when displayed by a Portal end.
2) And uniformly accessing the configuration template. And a configuration template registration interface can be opened for a third-party platform (such as a container cloud platform) to call, so that the service configuration template in the third-party platform is accessed into the configuration template management module for unified management.
2. Configuration item and configuration item constraint extraction
1) Regular matching extracts configuration item placeholders. Configuration fragment placeholders "@ { … … }" are extracted by a regular expression matching method.
2) And analyzing the configuration items and the configuration item constraints. Configuration items and configuration item constraints are parsed from the configuration fragment placeholders for supporting subsequent configuration management processes.
3. Configuration template association persistence
And (4) persisting the constraint association of the configuration template, the configuration items and the configuration items, and supporting the subsequent configuration instance construction process.
(II) configuration example management module
The configuration example management module sub-function module refers to a corresponding part of fig. 1, the configuration example construction principle refers to fig. 2, the configuration release principle refers to fig. 3 and 4, and the configuration rollback principle refers to fig. 5 and 6, and the specific implementation steps are as follows:
1. configuration instance build
1) And setting configuration items. And modifying the value of the configuration item at the Portal end of the interactive interface in a pull-down selection mode.
2) The configuration items are mapped in association with the configuration templates. As shown in FIG. 2, the restore configuration file process is implemented by mapping the configuration item associations to the configuration template placeholder @ { … … }. The restored configuration file is referred to as a configuration instance.
3) Configuration instance persistence. And the configuration instances are persisted into a relational database for supporting subsequent configuration instance issuing and rollback processes.
2. Configuration instance publishing
1) Submitting a request to publish the configuration instance. And clicking and selecting the configuration instance to be issued at the Portal end of the interactive interface, and clicking an issue button to submit an issue request.
2) Triggering the configuration instance to issue an event. After receiving the configuration release request, the configuration instance management module queries the released configuration instance information from the relational database, and sets the release state of the released configuration instance information to be activated (the release state of the configuration instance is identified through an active field of a data table, and the activated configuration instance is activated if the active field is set to be true, otherwise, the activated configuration instance information is not activated). Meanwhile, the configuration instance management module triggers a configuration instance publishing event and informs the configuration integration module to push the published configuration instance to the configuration client. In addition, the configuration instance management module synchronizes the publication information to the publication history in real time.
3. Configuration instance rollback
1) Submitting a rollback configuration instance request. As shown in FIG. 5, at the interactive interface Portal end, a configuration instance rollback request is submitted.
2) And rolling back the configuration to trigger the configuration instance to issue an event. The configuration instance management module receives the rollback configuration request, queries the configuration instance issuing history, acquires the configuration instance newly issued, sets the issuing state of the configuration instance to be activated, sets the state of the configuration instance newly issued to be inactivated (as shown in fig. 6), triggers a configuration instance issuing event (configuration rollback may be understood as configuration reissue), and notifies the configuration integration module to push the configuration instance after rollback to the configuration client.
(III) configuring the integrated module
The method comprises the following steps of configuring the sub-function module of the integrated module:
1. and unifying the open interfaces. Configuration pull and configuration subscription/push interfaces in a lightweight HTTP mode and a configuration Client (Client) mode are provided, and service configuration acquisition is supported.
2. Configuring a cache: in the configuration pulling process, the configuration example is read from the cache, and the configuration example is loaded from the relational database when the configuration example does not exist in the cache, so that the pulling speed of the service configuration is greatly improved.
3. And (3) encryption is configured: the method is used for encrypting and transmitting the sensitive configuration items in the configuration pulling and changing pushing process, and using the items after local decryption. By introducing an AES encryption technology, the engineering ID established in the configuration template management module is used as a secret key to realize the configuration encryption/decryption process.
4. Change pushing: when the configuration changes (such as a new configuration instance is released), the configuration integration module actively pushes the changed configuration to the configuration client. By introducing the HTTP long connection technology, the configuration client subscribes to configuration through the project ID.
As mentioned above, the service can be used by configuration integration through the lightweight HTTP interface or the configuration client provided by the invention. Firstly, the project configuration template is built and uploaded through an interactive interface Portal, and the configuration example is created and issued. And, the service has completed the configuration integration initialization process using the engineering ID. The following describes the implementation principle of the configuration pull and configuration subscribe/push procedures in detail.
Configuration pulling:
the service actively acquires the configuration by calling a configuration pull interface, and the detailed process comprises the following steps:
1) the service calls a configuration pull interface in an HTTP mode or an integrated configuration Client (Client) mode to initiate a pull service configuration request, as shown in step (r) and (g) of fig. 7.
2) The configuration integration module receives the configuration pull request and processes the return. The method comprises the following specific steps: a) inquiring the matched configuration example from the memory cache (step (r) in fig. 7), if yes, directly returning, and if not, executing step (b); b) and calling a configuration instance management module interface to inquire a newly issued configuration instance of the project, caching the configuration instance in a memory, and returning the configuration instance to an HTTP calling end or a configuration client (step (c) in fig. 7). In addition, the sensitive configuration item is encrypted before transmission; c) and the HTTP calling terminal or the configuration client returns the pulled configuration to the service. For the configuration client, providing local decryption and local cache functions of sensitive configuration items (step (R) in FIG. 7); and for the HTTP calling end, the decryption can be carried out automatically according to the decryption method of the sensitive configuration item, and meanwhile, the local cache function can be realized automatically according to the requirement.
3) If the configuration acquisition fails due to the error in the step 2, the HTTP calling terminal or the configuration client terminal further provides a function of pulling the configuration from the local cache, so as to avoid the failure of the service configuration missing and starting.
4) The service uses the configuration.
Configuration subscription/push:
the service subscribes to the configuration of interest through the engineering ID, and when the configuration changes, the configuration integration module actively pushes the changed configuration to the service. The detailed process comprises the following steps:
1) the service calls a configuration subscription interface (the subscription subject is the project ID) in an HTTP mode or an integrated configuration Client (Client) mode, and establishes HTTP long connection communication with the configuration integration module, as shown in the third step in FIG. 8.
2) Within the long connection timeout time range, if the subscription configuration changes (new configuration instances are published), the configuration instance management module notifies the configuration integration management module in an event publishing mode, and the configuration integration management module acquires the configuration change notification in an event monitoring mode and caches the changed configuration in a memory. If the engineering configuration is not changed within the timeout time range of the long connection, the service initiatively initiates the long connection communication process again through an HTTP mode or a configuration client side mode. The changed configuration instance is pushed to the HTTP call end or the configuration client within the timeout range (e.g., step (c) - (c)) in fig. 8. In addition, the sensitive configuration item is encrypted before transmission.
3) The HTTP call end or the configuration client returns the received configuration to the application (if the presence-sensitive configuration item needs to be decrypted first), and the configuration is cached locally (step ninx in fig. 7).
4) The service uses a changing configuration.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (8)

1. The service configuration management and integration tool facing the process is characterized by comprising a configuration template management module, a configuration instance management module and a configuration integration module, wherein:
the configuration template management module is used for constructing a configuration template according to a standardized configuration template specification and carrying out service configuration management, the configuration template uses special placeholders to identify configuration fragments which can be changed in a configuration file and optional filling values of the configuration fragments, and meanwhile, the configuration fragments which are not openly modified are shielded;
the configuration instance management module is used for instantiating the configuration template according to configuration template configuration items and configuration item constraints and simultaneously realizing the distribution, rollback and distribution history management of the configuration instance;
the configuration integration module is used for opening an interface to the service and performing configuration integration of the service;
the configuration template management module comprises a configuration template construction and access sub-module, a configuration item and configuration item constraint extraction sub-module and a configuration template persistence sub-module, wherein:
the configuration template construction and access submodule is used for constructing a configuration template by using a configuration template specification and replacing configuration fragments needing to be opened and modified by special placeholders;
the configuration item and configuration item constraint extraction submodule is used for extracting the configuration item placeholder and analyzing the configuration item and configuration item constraints;
the configuration template persistence sub-module is used for uniformly persisting the configuration templates into the relational database;
the configuration integration module comprises a uniform open interface submodule, a configuration cache submodule, a configuration encryption submodule and a change pushing submodule, wherein:
the unified open interface submodule is used for providing a configuration pull and configuration subscription/push interface and supporting service configuration acquisition;
the configuration cache submodule is used for caching the issued/rolled-back configuration examples in real time, reading the configuration examples from the cache in the configuration pulling process, and loading the configuration examples from the relational database when the configuration examples do not exist in the cache;
the configuration encryption submodule is used for carrying out encryption transmission on the sensitive configuration items in the configuration pulling and changing pushing processes and using the sensitive configuration items after local decryption;
and the change pushing submodule is used for pushing the changed configuration to the application program when the configuration is changed.
2. The process-oriented service configuration management and integration tool of claim 1, wherein the configuration template management module further comprises a configuration template registration interface for a third party platform to call and access a service configuration template in the third party platform for unified management.
3. The process-oriented service configuration management and integration tool of claim 1, wherein the special placeholder comprises two parts, a configuration item and a configuration item constraint, wherein the configuration item is used for identifying a configuration fragment, and comprises three parts, namely a key, a default value and description information; the configuration item constraint is used for constraining the optional filling value and encryption control of the configuration fragment, and comprises a value range and encryption control information.
4. The process-oriented service configuration management and integration tool of claim 1, wherein the configuration instance management module comprises a configuration instance construction sub-module, a configuration instance publishing sub-module, and a configuration instance rollback sub-module, wherein:
the configuration instance construction submodule is used for setting configuration item values, mapping the configuration item associations to special placeholders in the configuration template, restoring configuration files available for service, namely configuration instances, and persisting the configuration instances to a relational database;
the configuration instance issuing sub-module is used for receiving a configuration instance issuing request, inquiring information of an issued configuration instance from a relational database, setting the issuing state of the information to be activated, issuing a configuration instance issuing event and synchronizing the issuing information of the configuration instance to an issuing history record;
and the configuration instance rollback sub-module is used for receiving a configuration instance rollback request, inquiring the release history of the configuration instance, acquiring the configuration instance newly released next time, setting the release state of the configuration instance to be activated, setting the state of the configuration instance newly released to be inactivated, and releasing a configuration instance release event.
5. The process-oriented service configuration management and integration tool of claim 1, wherein the configuration encryption sub-module implements a configuration encryption/decryption process by introducing AES encryption technology using an engineering ID created in the configuration template management module as a key.
6. The process-oriented service configuration management and integration tool of claim 1, wherein the change push sub-module introduces HTTP long connect technology and the configuration client subscribes to configuration via engineering ID.
7. A process-oriented service configuration management and integration method, characterized in that based on the process-oriented service configuration management and integration tool of any of claims 1-6, configuration pull and configuration subscription/push are performed.
8. The process-oriented service configuration management and integration method according to claim 7, wherein the specific processes of configuration pull and configuration subscription/push are as follows:
the specific process of configuration pulling comprises the following steps:
1.1) calling and configuring a pull interface by a service, and initiating a pull service configuration request;
1.2) the configuration integration module receives the configuration pulling request and processes the return, the concrete steps include:
a) b, inquiring the matched configuration examples from the memory cache, if the matched configuration examples exist, directly returning, and if the matched configuration examples do not exist, executing the step b);
b) the calling configuration instance management module inquires the latest configuration instance issued by the project, caches the configuration instance in the memory and then sends the configuration instance to a calling end, and in addition, sensitive configuration items are encrypted before transmission;
c) the calling end returns the pulled configuration to the service, if a sensitive configuration item exists, decryption is needed first, and meanwhile, the configuration item is cached locally;
1.3) if the configuration acquisition fails due to the error in the step 1.2), the calling terminal pulls the configuration from the local, so that the failure of missing and starting of the service configuration is avoided;
1.4) service usage configuration;
(II) the specific process of configuring subscription/pushing comprises the following steps:
2.1) the service calls a configuration subscription interface and establishes HTTP long connection communication with the configuration integration module;
2.2) in the long connection overtime time range, if the subscription configuration changes, the configuration instance management module notifies the configuration integrated management module in an event publishing mode, and the configuration integrated management module acquires the configuration change notification in an event monitoring mode and caches the changed configuration in a memory; if the engineering configuration is not changed within the timeout time range of the long connection, the service initiatively initiates the long connection communication process again, the changed configuration example is pushed to a calling end within the timeout range, and in addition, sensitive configuration items are encrypted before transmission;
2.3) the calling end returns the received configuration to the application program, if a sensitive configuration item exists, decryption is needed first, and meanwhile, the configuration item is cached locally;
2.4) service usage changed configuration.
CN202010818889.XA 2020-08-14 2020-08-14 Process-oriented service configuration management and integration tool and method Active CN112114893B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010818889.XA CN112114893B (en) 2020-08-14 2020-08-14 Process-oriented service configuration management and integration tool and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010818889.XA CN112114893B (en) 2020-08-14 2020-08-14 Process-oriented service configuration management and integration tool and method

Publications (2)

Publication Number Publication Date
CN112114893A CN112114893A (en) 2020-12-22
CN112114893B true CN112114893B (en) 2021-08-03

Family

ID=73804093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010818889.XA Active CN112114893B (en) 2020-08-14 2020-08-14 Process-oriented service configuration management and integration tool and method

Country Status (1)

Country Link
CN (1) CN112114893B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114047963A (en) * 2021-11-26 2022-02-15 南方电网科学研究院有限责任公司 Online monitoring device configuration method, device, equipment and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10700931B2 (en) * 2014-08-17 2020-06-30 Microsoft Technology Licensing, Llc Network device configuration framework
WO2016185013A1 (en) * 2015-05-20 2016-11-24 Assa Abloy Ab Reader setup/rekeying with dedicated card
CN106681921B (en) * 2016-12-27 2020-11-10 腾讯科技(深圳)有限公司 Method and device for realizing data parameterization
CN108037961B (en) * 2017-12-07 2021-01-19 北京锐安科技有限公司 Application program configuration method, device, server and storage medium
CN108540529A (en) * 2018-03-07 2018-09-14 江苏电力信息技术有限公司 Do not restart dynamic parameter method for refreshing under a kind of framework based on micro services

Also Published As

Publication number Publication date
CN112114893A (en) 2020-12-22

Similar Documents

Publication Publication Date Title
US7546335B2 (en) System and method for a data protocol layer and the transfer of data objects using the data protocol layer
CN102255752B (en) Configuration management system and method of server cluster
US7970823B2 (en) System for sharing data objects among applications
CN101188566B (en) A method and system for data buffering and synchronization under cluster environment
US20080065753A1 (en) Electronic Device Management
US20050234931A1 (en) Managing client configuration data
US8230414B1 (en) Software distribution and cache management across client machines on a network
CN101924775B (en) Android application component transparent loading method and system
US20140365523A1 (en) Push subscriptions
WO2008031314A1 (en) A method for reporting the device capability information and a terminal device
CN101160563A (en) Method and system for hosting and executing a component application
CN113973053B (en) Probe management system and method for network target range
WO2012155643A1 (en) Method for implementing configuration console based on database, configuration console, and system
CN112114893B (en) Process-oriented service configuration management and integration tool and method
CN110837535A (en) Data synchronization method, device, equipment and medium
CN114531197B (en) On-orbit distributed information resource application service system
CN111708586A (en) Application starting configuration item loading method and device, computer equipment and storage medium
CN111163074B (en) Gateway service control method and device
CN114900570A (en) Standardized data acquisition and transmission method and system
CN114629883A (en) Service request processing method and device, electronic equipment and storage medium
US8001216B2 (en) System and method for a web service portlet registry
US7853676B1 (en) Protocol for efficient exchange of XML documents with a network device
CN111124542A (en) Configuration information management system
CN115658791A (en) Ground application management control system and method
CN111314118B (en) Data management method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant