[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN112286583A - Method, device and system for modular expansion and integration of any granularity - Google Patents

Method, device and system for modular expansion and integration of any granularity Download PDF

Info

Publication number
CN112286583A
CN112286583A CN201910614014.5A CN201910614014A CN112286583A CN 112286583 A CN112286583 A CN 112286583A CN 201910614014 A CN201910614014 A CN 201910614014A CN 112286583 A CN112286583 A CN 112286583A
Authority
CN
China
Prior art keywords
extension
module
expansion
point
modular
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.)
Pending
Application number
CN201910614014.5A
Other languages
Chinese (zh)
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.)
China National Petroleum Corp
BGP Inc
Original Assignee
China National Petroleum Corp
BGP Inc
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 China National Petroleum Corp, BGP Inc filed Critical China National Petroleum Corp
Priority to CN201910614014.5A priority Critical patent/CN112286583A/en
Publication of CN112286583A publication Critical patent/CN112286583A/en
Pending legal-status Critical Current

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/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • 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/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a method, a device and a system for modular expansion and integration of any granularity, wherein the method comprises the steps of dividing the system into a plurality of modules according to a preset rule, and executing the following processing on any two modules: allocating one or more extension points and extension point IDs corresponding to the extension points one by one to an extended module; receiving extension descriptions which are from an extension module and correspond to extension contracts one by one; establishing a module general configuration table according to the extended module and the extension module; loading the extended module and the extended module according to the module total configuration table, and initializing each module; registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager; and the expansion description corresponding to the preset expansion point ID is obtained from the expansion registration manager, and the expansion description corresponding to the preset expansion point ID is sent to the expanded module, so that the expansion capability of the system is improved, and the coupling degree of the module is reduced.

Description

Method, device and system for modular expansion and integration of any granularity
Technical Field
The invention relates to the field of software and hardware systems, in particular to a method, a device and a system for modular expansion and integration of any granularity.
Background
Modular technology has been known for many years, for example, a seismic survey data processing system is a very typical modular system, which is composed of a series of algorithm modules that must meet certain specifications in order to be used in a data system, where data access and transfer is important.
With the deepening of production practice, the system sequence of other industries puts more requirements on the expandability of the system. These systems start to increase scalability step by step, but their implementation techniques are either not generic and cannot be generalized to other systems; or too simple to implement and not strong in expansion capability. For example:
1) module opacification, system development needs to know in which module a certain function is, and true decoupling is not achieved, which is the case very much.
2) The protocol of functional interoperability between modules is not self-assignable. This is usually a fixed protocol by the developer, requiring that other modules must comply with the protocol. The problem that this brings is that the scalability of the system is usually very limited, and this kind of modular approach has no generality, is often too deeply associated with services in a specific certain domain, and has no replaceability and reusability.
3) The granularity of the modules is fixed. The scalability and applicability of such modular approaches is also limited.
Disclosure of Invention
The embodiments of the present invention mainly aim to provide a method, an apparatus, and a system for modular expansion and integration with arbitrary granularity, so as to improve the expansion capability of the system, reduce the coupling degree between modules of the system, and increase the replaceability, reusability, and applicability of each module of the system.
In order to achieve the above object, an embodiment of the present invention provides a method for modular expansion and integration with arbitrary granularity, including:
dividing one or more systems into a plurality of modules according to a preset rule;
the following processing is performed for any two of the plurality of modules:
allocating one or more extension points and extension point IDs corresponding to the extension points one by one to an extended module;
receiving one or more extension contracts corresponding to each extension point ID from the extended module;
sending one or more extension contracts corresponding to each extension point ID to an extension module;
receiving extension descriptions which are from an extension module and correspond to extension contracts one by one;
establishing a module general configuration table according to the extended module and the extension module;
loading the extended module and the extended module according to the module total configuration table, and initializing each module;
registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager;
receiving a preset extension point ID from an extended module;
obtaining an extension description corresponding to a preset extension point ID from an extension registration manager;
and sending the extension description corresponding to the preset extension point ID to the extended module.
The embodiment of the invention also provides a modular expansion and integration method with any granularity, which comprises the following steps:
receiving one or more extension points from a modular extension and integrated management device of arbitrary granularity and extension point IDs in one-to-one correspondence with the extension points;
generating one or more extension contracts corresponding to each extension point ID;
sending one or more extension contracts corresponding to each extension point ID to a modular extension and integration management device with any granularity;
sending a preset extension point ID to a modular extension and integration management device with any granularity;
receiving an extension description corresponding to a preset extension point ID from a modular extension and integration management device with any granularity;
and acquiring the corresponding function from the expansion module according to the expansion description.
The embodiment of the invention also provides a modular expansion and integration method with any granularity, which comprises the following steps:
receiving one or more extension contracts corresponding to each extension point ID of the integrated management device from modular extensions of arbitrary granularity;
generating extension descriptions corresponding to the extension contracts one by one;
sending extension descriptions to modular extensions and integrated management devices of arbitrary granularity.
The embodiment of the invention also provides a device for modular expansion and integration of any granularity, which is applied to a management device for modular expansion and integration of any granularity, and comprises the following steps:
the system comprises a dividing unit, a processing unit and a processing unit, wherein the dividing unit is used for dividing one or more systems into a plurality of modules according to a preset rule;
the distribution unit is used for distributing one or more extension points and extension point IDs which are in one-to-one correspondence with the extension points to the extended module;
a first receiving unit, configured to receive one or more extension contracts corresponding to each extension point ID from an extended module; receiving extension descriptions which are from an extension module and correspond to extension contracts one by one; receiving a preset extension point ID from an extended module;
the first sending unit is used for sending one or more expansion contracts corresponding to each expansion point ID to the expansion module; sending an extension description corresponding to a preset extension point ID to an extended module;
the total configuration table unit is used for establishing a module total configuration table according to the extended module and the extension module;
the initialization unit is used for loading the extended module and the extended module according to the module general configuration table and initializing each module;
a registration unit, configured to register, in an extension registration manager, one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID;
and the acquisition unit is used for acquiring the extension description corresponding to the preset extension point ID from the extension registration manager.
The embodiment of the invention also provides a device for modular expansion and integration with any granularity, which is applied to an expanded module and comprises the following components:
a second receiving unit configured to receive one or more extension points from a modular extension and integration management apparatus of an arbitrary granularity and extension point IDs corresponding to the extension points one to one; receiving an extension description corresponding to a preset extension point ID from a modular extension and integration management device with any granularity;
an extension contract unit for generating one or more extension contracts corresponding to each extension point ID;
a second sending unit, configured to send one or more extension contracts corresponding to each extension point ID to a modular extension and integration management device of any granularity; sending a preset extension point ID to a modular extension and integration management device with any granularity;
and the functional unit is used for acquiring the corresponding function from the expansion module according to the expansion description.
The embodiment of the invention also provides a device for modular expansion and integration with any granularity, which is applied to an expansion module and comprises the following components:
a third receiving unit configured to receive one or more extension contracts corresponding to each extension point ID of the integrated management apparatus from modular extensions of arbitrary granularity;
the extension description unit is used for generating extension descriptions which correspond to the extension contracts one by one;
and a third sending unit, configured to send the extension description to the modular extension and integrated management apparatus of any granularity.
The embodiment of the present invention further provides a system for modular expansion and integration of any granularity, including:
modular extension and integration apparatus of any granularity as described above applied to modular extension and integration management apparatus of any granularity;
the apparatus for modular expansion and integration of arbitrary granularity as applied to the expanded modules as described above;
the device applies to modular expansion and integration of arbitrary granularity of expansion modules as described above.
The method, the device and the system for modular expansion and integration with any granularity can divide an independent system into a plurality of modules according to various business requirements, automatically integrate and combine the divided modules into a new organic whole, improve the expansion capability of the system, reduce the coupling degree among the modules of the system, increase the replaceability, reusability and applicability of the modules of the system, ensure that the safety of the system cannot be influenced by the problems of a single module, and provide a foundation for independently producing, developing and testing the independent sub-modules.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained based on these drawings without creative efforts.
FIG. 1 is a flow diagram of a method for modular expansion and integration of arbitrary granularity (from an arbitrary granularity of modular expansion and integration of a management device) in an embodiment of the invention;
FIG. 2 is a flow diagram of a method of modular expansion and integration of arbitrary granularity (from an arbitrary granularity of modular expansion and integration of a management device) in another embodiment of the invention;
FIG. 3 is a schematic diagram of a plurality of modules linked together;
FIG. 4 is a flow diagram of a method (from the perspective of an expanded module) for modular expansion and integration of arbitrary granularity in one embodiment of the invention;
FIG. 5 is a flow diagram of a method (from the expansion module perspective) of modular expansion and integration of arbitrary granularity in one embodiment of the invention;
FIG. 6 is a block diagram of a modular extension and integration apparatus of arbitrary granularity applied to a modular extension and integration apparatus of arbitrary granularity in an embodiment of the present invention;
FIG. 7 is a block diagram of the architecture of the apparatus for modular expansion and integration of arbitrary granularity applied to the expanded modules in the embodiment of the present invention;
FIG. 8 is a block diagram of an apparatus for modular expansion and integration of arbitrary granularity as applied to expansion modules in an embodiment of the present invention;
FIG. 9 is a block diagram of a system for modular expansion and integration of arbitrary granularity in an embodiment of the invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As will be appreciated by one skilled in the art, embodiments of the present invention may be embodied as a system, apparatus, device, method, or computer program product. Accordingly, the present disclosure may be embodied in the form of: entirely hardware, entirely software (including firmware, resident software, micro-code, etc.), or a combination of hardware and software.
In view of the fact that the prior art does not achieve true decoupling, has no replaceability and reusability, and is limited in expandability and applicability, embodiments of the present invention provide a modular expansion and integration method of any granularity, so as to improve the expandability of the system, reduce the coupling degree between modules of the system, and increase the replaceability, reusability and applicability of modules of the system. The present invention will be described in detail below with reference to the accompanying drawings.
Fig. 1 is a flow chart of a method for modular extension and integration of arbitrary granularity (management device from modular extension and integration of arbitrary granularity) in an embodiment of the invention. As shown in fig. 1, the method for modular expansion and integration of arbitrary granularity includes:
s101: one or more systems are divided into a plurality of modules according to preset rules.
In specific implementation, the system can be reasonably decomposed into a plurality of modules according to the distribution condition of the service and the function of any granularity as required.
The following processing is performed for any two of the plurality of modules:
s102: one or more extension points and extension point IDs corresponding to the extension points one by one are allocated to the extended module.
Wherein the expanded module is an expanded main module.
S103: and receiving one or more extension contracts corresponding to each extension point ID from the extended module.
S104: and sending one or more extension contracts corresponding to each extension point ID to the extension module.
The expansion module is a slave module which is a plug-in module of the expanded module.
S105: and receiving the extension description which corresponds to the extension contract one by one from the extension module.
S106: and establishing a module total configuration table according to the extended module and the extension module.
S107: and loading the extended module and the extended module according to the module total configuration table, and initializing each module.
S108: one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID are registered in an extension registration manager.
S109: and receiving a preset extension point ID from the extended module.
S110: an extension description corresponding to a preset extension point ID is retrieved from an extension registration manager.
S111: and sending the extension description corresponding to the preset extension point ID to the extended module.
The execution subject of the modular extension and integration method of arbitrary granularity shown in fig. 1 may be a modular extension and integration device of arbitrary granularity applied to a modular extension and integration management device of arbitrary granularity. As can be seen from the flow shown in fig. 1, the method for modular expansion and integration with arbitrary granularity (from the perspective of a management device for modular expansion and integration with arbitrary granularity) according to the embodiment of the present invention divides one or more systems into a plurality of modules according to a preset rule, and performs the following processing on any two modules in the plurality of modules: firstly allocating one or more extension points and extension point IDs corresponding to the extension points one to an extended module, receiving and sending one or more extension contracts corresponding to each extension point ID from the extended module to the extended module, receiving extension descriptions corresponding to the extension contracts one to one from the extended module, then establishing a module total configuration table according to the extended module and the extended module, loading the extended module and the extended module according to the module total configuration table, initializing each module, registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager, receiving a preset extension point ID from the extended module, finally obtaining and sending a pair of the preset extension point ID from an extension registration manager to the extended module, and improving the extension capability of the system, the coupling degree among all modules of the system is reduced, the replaceability, reusability and applicability of all the modules of the system are improved, the safety of the system cannot be influenced by the problems of a single module, and a foundation is provided for independently producing, developing and testing the independent sub-modules.
In one embodiment, after executing S110, the method further includes: and when the number of the extension descriptions corresponding to the preset extension point ID is multiple, screening the extension descriptions according to a preset screening rule, and sending the screened extension descriptions to the extended module.
Fig. 2 is a flow chart of a method for modular extension and integration of arbitrary granularity (management device from modular extension and integration of arbitrary granularity) in another embodiment of the invention. As shown in fig. 2, the method for modular expansion and integration of arbitrary granularity further includes:
s201: one or more extension contracts corresponding to each extension point ID are registered in an extension registration manager.
S202: and obtaining an extension contract corresponding to the preset extension point ID from the extension registration manager.
S203: and judging whether the expansion contract corresponding to the preset expansion point ID corresponds to the expansion description corresponding to the preset expansion point ID one by one.
S204: and when the extension contract corresponding to the preset extension point ID corresponds to the extension description corresponding to the preset extension point ID, sending the extension description corresponding to the preset extension point ID to the extended module.
The above steps can prevent sending an incorrect extended description to the extended module.
The specific flow of the method for modular expansion and integration of any granularity (from the perspective of the management device for modular expansion and integration of any granularity) is as follows:
1. one or more systems are divided into a plurality of modules according to preset rules.
In specific implementation, modules need to be divided into the system according to the function distribution of each part of the system, and the function boundaries of the modules are defined. Taking the seismic exploration data interpretation system as an example, the seismic exploration data interpretation system can be decomposed into a conventional interpretation subsystem, a three-dimensional visual interpretation subsystem, a seismic forward and backward modeling subsystem, a logging interpretation subsystem and the like, and the subsystems can still be decomposed continuously according to business rules, for example, the logging interpretation subsystem can be subdivided into a logging data display scene module, various interactive editing modules can be connected to the logging data display scene module, a new logging data display module can be expanded, and particularly, the development and connection of a third-party module can be supported. A subsystem can be defined as a module, even the whole system is a large module, or can be decomposed into a plurality of small enough modules.
2. The following processing is performed for any two of the plurality of modules: one or more extension points and extension point IDs corresponding to the extension points one by one are distributed to the extended module, and one or more extension contracts corresponding to each extension point ID from the extended module are received. And sending one or more extension contracts corresponding to each extension point ID to the extension module, and receiving extension descriptions corresponding to the extension contracts from the extension module.
The extended module is a master module which is extended, and the extension module is a slave module which is a plug-in module of the extended module. The extended main module needs the extension point to realize the extension, and each extension point must have a unique identification number ID and provide an extension contract. If the expansion module as a plug-in unit is to expand functions for the expanded module, the contract is adhered to link the expansion module and the expanded module.
An extended contract is typically described in XML format nodes, for example:
<extension-point id="EXTP_ToggleWindow"
index-property-name=""
file="itogglewindow.h"
inertface="MainFrame::IToggleWindow">
<EXT_ToggleWindow
extension-point="EXTP_ToggleWindow"
id=""
class=""
icon=""
label=""
single-inst="true"
hide-only=""
can-create-empty=""
accept-data=""
single-data=""
ribbon-pages=""/>
<EXT_ToggleWindow>
</extension-point>
a module can have a plurality of expansion contracts, each expansion contract can be expanded by other modules, the content of the contract is completely determined by the expanded module and is not limited by any other conditions, so that the expansion capability of the expanded module is very strong. If the extended module also needs executable extension capability, it can also indicate the interface type by giving the interface attribute and ask the extension module to give the value of class attribute. In addition, the extended module may define the executable extension capability in other ways, such as by adding a python attribute so that other modules may implement the executable extension with python instructions. How the extended module extends the functionality of the other modules depends entirely on the content of the extension contract.
Likewise, if the extension module is to extend the functions of the extended module, i.e. it is to link to the extended module, the extension module must also give its own extension description, which is described by nodes in XML format, for example:
<EXT_ToggleWindow
extension-point="EXTP_ToggleWindow"
id="ToggleWindow.well"
class="MyWindow"
icon="abc.png"
label="my window"
single-inst="true"
hide-only="yes"
can-create-empty="false"
accept-data=""
single-data=""
ribbon-pages="">
<EXT_ToggleWindow>
the extension module must comply with the extension contract given by the extension module, so the extension description of the extension module cannot be determined arbitrarily by the extension module, but is defined according to the description of the extension contract given by the extension module, the content of which must be configured according to the extension contract, and the extension description of the extension module must indicate an extension-point ID (EXTP _ ToggleWindow), which indicates which extension-point in the extended module the extension module extends.
An extension point can be linked by one or more extension descriptions (an extension, an extension description is a part of an extension), and an extension description can only be linked to one extension point. A module usually has not only one extension point, but also a plurality of extension points and a plurality of extension contracts corresponding to the extension points one by one; meanwhile, one module can also realize the expansion of a plurality of other modules generally, so that a plurality of expansion descriptions are possible. The module has only one extension contract or extension description at minimum granularity. With the expansion contract and the expansion description, the linkage among a plurality of modules is naturally established, and finally all the modules are linked together to automatically form a unified system. Fig. 3 is a schematic diagram of a plurality of modules linked together. As shown in fig. 3, each module may be both an expanded module (a master module that is expanded) and an expansion module (a slave module that is another expanded module plug-in).
3. And establishing a module total configuration table according to the extended module and the extension module, loading the extended module and the extension module according to the module total configuration table, and initializing each module.
4. One or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID are registered in an extension registration manager.
After registration, the system automatically forms an organic whole according to the link relation among the modules in the extended registration manager. After the system is integrated, the functions of the modules can be expanded and used in a way of common service, link points, links and the like, and the transparency of the modules can be realized, namely, when the functions provided by other modules are used, the function from which the module comes does not need to be concerned, and the time when the module can be loaded does not need to be known, so that the coupling among the modules is greatly reduced.
5. Receiving a preset extension point ID from an extended module, acquiring an extension description corresponding to the preset extension point ID from an extension registration manager, and sending the extension description corresponding to the preset extension point ID to the extended module.
When the number of the extension descriptions corresponding to the preset extension point ID is multiple, the extension descriptions may be filtered according to a preset filtering rule, and the filtered extension descriptions are sent to the extended module. For example, the latest version of the extended description is selected from the plurality of extended descriptions.
In summary, the modular extension and integration method with arbitrary granularity (from the perspective of the management device with arbitrary granularity) according to the embodiment of the present invention divides one or more systems into a plurality of modules according to a preset rule, and performs the following processing on any two modules in the plurality of modules: firstly allocating one or more extension points and extension point IDs corresponding to the extension points one to an extended module, receiving and sending one or more extension contracts corresponding to each extension point ID from the extended module to the extended module, receiving extension descriptions corresponding to the extension contracts one to one from the extended module, then establishing a module total configuration table according to the extended module and the extended module, loading the extended module and the extended module according to the module total configuration table, initializing each module, registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager, receiving a preset extension point ID from the extended module, finally obtaining and sending a pair of the preset extension point ID from an extension registration manager to the extended module, and improving the extension capability of the system, the coupling degree among all modules of the system is reduced, the replaceability, reusability and applicability of all the modules of the system are improved, the safety of the system cannot be influenced by the problems of a single module, and a foundation is provided for independently producing, developing and testing the independent sub-modules.
FIG. 4 is a flow diagram of a method (from the perspective of an expanded module) for modular expansion and integration of arbitrary granularity in one embodiment of the invention. As shown in fig. 4, the method for modular expansion and integration of arbitrary granularity includes:
s301: one or more extension points from a modular extension and integrated management device of arbitrary granularity and extension point IDs in one-to-one correspondence with the extension points are received.
S302: one or more extension contracts corresponding to each extension point ID are generated.
S303: and sending one or more extension contracts corresponding to each extension point ID to a modular extension and integration management device with any granularity.
S304: and sending the preset extension point ID to a modular extension and integrated management device with any granularity.
S305: an extension description corresponding to a preset extension point ID is received from a modular extension and integration management device of arbitrary granularity.
S306: and acquiring the corresponding function from the expansion module according to the expansion description.
The execution subject of the method for modular expansion and integration of arbitrary granularity shown in fig. 4 may be a device for modular expansion and integration of arbitrary granularity applied to the expanded module. As can be seen from the flow shown in fig. 4, the method for modular expansion and integration with arbitrary granularity (from the perspective of the expanded module) of the embodiment of the present invention firstly receives one or more expansion points from the management apparatus for modular expansion and integration with arbitrary granularity and expansion point IDs corresponding to the expansion points one by one, then generates one or more expansion contracts corresponding to each expansion point ID, then sends one or more expansion contracts corresponding to each expansion point ID to the management apparatus for modular expansion and integration with arbitrary granularity, sends a preset expansion point ID to the management apparatus for modular expansion and integration with arbitrary granularity, finally receives an expansion description corresponding to the preset expansion point ID from the management apparatus for modular expansion and integration with arbitrary granularity, and obtains corresponding functions from the expansion module according to the expansion description, thereby improving the expansion capability of the system, the coupling degree among all modules of the system is reduced, the replaceability, reusability and applicability of all the modules of the system are improved, the safety of the system cannot be influenced by the problems of a single module, and a foundation is provided for independently producing, developing and testing the independent sub-modules.
FIG. 5 is a flow diagram of a method (from the expansion module perspective) for modular expansion and integration of arbitrary granularity in one embodiment of the invention. As shown in fig. 5, the method for modular expansion and integration of arbitrary granularity includes:
s401: one or more extension contracts corresponding to each extension point ID of the integrated management device are received from modular extensions of arbitrary granularity.
S402: and generating the extension description which corresponds to the extension contract one by one.
S403: sending extension descriptions to modular extensions and integrated management devices of arbitrary granularity.
The execution subject of the modular expansion and integration method of arbitrary granularity shown in fig. 5 may be a modular expansion and integration apparatus of arbitrary granularity applied to an expansion module. As can be seen from the flow shown in fig. 5, in the method for modular expansion and integration of arbitrary granularity (from the perspective of the expansion module) according to the embodiment of the present invention, one or more expansion contracts corresponding to each expansion point ID of the management apparatus for modular expansion and integration of arbitrary granularity are received first, an expansion description corresponding to the expansion contract one to one is generated, and then the expansion description is transmitted to the management apparatus for modular expansion and integration of arbitrary granularity, so that the expansion capability of the system is improved, the coupling degree between the modules of the system is reduced, the replaceability, reusability and applicability of each module of the system are increased, the problem occurring in a single module does not affect the safety of the system, and a basis is provided for individually producing, developing and testing independent sub-modules.
Based on the same inventive concept, the embodiment of the invention also provides a device for modular expansion and integration with any granularity. Since the principle of the device for solving the problems is similar to the method of modular expansion and integration of any granularity (from the perspective of the management device of modular expansion and integration of any granularity), the implementation of the device can refer to the implementation of the method, and repeated details are omitted.
Fig. 6 is a block diagram of a modular extension and integration apparatus of any granularity applied to a modular extension and integration apparatus of any granularity in an embodiment of the present invention. As shown in fig. 6, the modular extension and integration apparatus of arbitrary granularity applied to the modular extension and integration apparatus of arbitrary granularity includes:
the system comprises a dividing unit, a processing unit and a processing unit, wherein the dividing unit is used for dividing one or more systems into a plurality of modules according to a preset rule;
the distribution unit is used for distributing one or more extension points and extension point IDs which are in one-to-one correspondence with the extension points to the extended module;
a first receiving unit, configured to receive one or more extension contracts corresponding to each extension point ID from an extended module; receiving extension descriptions which are from an extension module and correspond to extension contracts one by one; receiving a preset extension point ID from an extended module;
the first sending unit is used for sending one or more expansion contracts corresponding to each expansion point ID to the expansion module; sending an extension description corresponding to a preset extension point ID to an extended module;
the total configuration table unit is used for establishing a module total configuration table according to the extended module and the extension module;
the initialization unit is used for loading the extended module and the extended module according to the module general configuration table and initializing each module;
a registration unit, configured to register, in an extension registration manager, one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID;
and the acquisition unit is used for acquiring the extension description corresponding to the preset extension point ID from the extension registration manager.
In one embodiment, the method further comprises the following steps:
the screening unit is used for screening the extension descriptions according to a preset screening rule when the number of the extension descriptions corresponding to the preset extension point ID is multiple;
the first sending unit is specifically configured to: and sending the screened extension description to the extended module.
In one embodiment, the registration unit is further configured to: registering one or more extension contracts corresponding to each extension point ID in an extension registration manager;
the acquisition unit is further configured to: acquiring an extension contract corresponding to a preset extension point ID from an extension registration manager;
the modular expansion and integration device with any granularity further comprises: a judging unit, configured to judge whether an extension contract corresponding to a preset extension point ID corresponds to an extension description corresponding to the preset extension point ID one to one;
the first sending unit is further configured to: and when the extension contract corresponding to the preset extension point ID corresponds to the extension description corresponding to the preset extension point ID, sending the extension description corresponding to the preset extension point ID to the extended module.
In summary, the modular expansion and integration apparatus with arbitrary granularity (from the perspective of the modular expansion and integration management apparatus with arbitrary granularity) according to the embodiment of the present invention divides one or more systems into a plurality of modules according to a preset rule, and performs the following processing on any two modules in the plurality of modules: firstly allocating one or more extension points and extension point IDs corresponding to the extension points one to an extended module, receiving and sending one or more extension contracts corresponding to each extension point ID from the extended module to the extended module, receiving extension descriptions corresponding to the extension contracts one to one from the extended module, then establishing a module total configuration table according to the extended module and the extended module, loading the extended module and the extended module according to the module total configuration table, initializing each module, registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager, receiving a preset extension point ID from the extended module, finally obtaining and sending a pair of the preset extension point ID from an extension registration manager to the extended module, and improving the extension capability of the system, the coupling degree among all modules of the system is reduced, the replaceability, reusability and applicability of all the modules of the system are improved, the safety of the system cannot be influenced by the problems of a single module, and a foundation is provided for independently producing, developing and testing the independent sub-modules.
Based on the same inventive concept, the embodiment of the invention also provides a device for modular expansion and integration with any granularity. Since the principle of the device for solving the problems is similar to the method of modular expansion and integration (from the perspective of the expanded modules) with any granularity, the implementation of the device can refer to the implementation of the method, and repeated details are omitted.
Fig. 7 is a block diagram of a device for modular expansion and integration of arbitrary granularity applied to expanded modules in the embodiment of the present invention. As shown in fig. 7, the apparatus for modular expansion and integration of arbitrary granularity applied to the expanded module includes:
a second receiving unit configured to receive one or more extension points from a modular extension and integration management apparatus of an arbitrary granularity and extension point IDs corresponding to the extension points one to one; receiving an extension description corresponding to a preset extension point ID from a modular extension and integration management device with any granularity;
an extension contract unit for generating one or more extension contracts corresponding to each extension point ID;
a second sending unit, configured to send one or more extension contracts corresponding to each extension point ID to a modular extension and integration management device of any granularity; sending a preset extension point ID to a modular extension and integration management device with any granularity;
and the functional unit is used for acquiring the corresponding function from the expansion module according to the expansion description.
To sum up, the device for modular extension and integration of arbitrary granularity (from the perspective of the extended module) of the embodiment of the present invention first receives one or more extension points from the management device for modular extension and integration of arbitrary granularity and extension point IDs corresponding to the extension points one by one, generates one or more extension contracts corresponding to each extension point ID, then sends one or more extension contracts corresponding to each extension point ID to the management device for modular extension and integration of arbitrary granularity, sends a preset extension point ID to the management device for modular extension and integration of arbitrary granularity, and finally receives an extension description corresponding to the preset extension point ID from the management device for modular extension and integration of arbitrary granularity, and obtains corresponding functions from the extension modules according to the extension description, thereby improving the extension capability of the system and reducing the coupling degree between the modules of the system, the replaceability, reusability and applicability of each module of the system are increased, so that the safety of the system cannot be influenced by the problems of a single module, and a foundation is provided for independently producing, developing and testing independent sub-modules.
Based on the same inventive concept, the embodiment of the invention also provides a device for modular expansion and integration with any granularity. Because the principle of solving the problem of the device is similar to the method of modular expansion and integration (from the perspective of the expansion module) with any granularity, the implementation of the device can refer to the implementation of the method, and repeated details are not repeated.
Fig. 8 is a block diagram of a modular expansion and integration apparatus of arbitrary granularity applied to an expansion module in an embodiment of the present invention. As shown in fig. 8, the apparatus for modular expansion and integration of arbitrary granularity applied to the expansion module includes:
a third receiving unit configured to receive one or more extension contracts corresponding to each extension point ID of the integrated management apparatus from modular extensions of arbitrary granularity;
the extension description unit is used for generating extension descriptions which correspond to the extension contracts one by one;
and a third sending unit, configured to send the extension description to the modular extension and integrated management apparatus of any granularity.
The modular expansion and integration device with any granularity (from the perspective of an expansion module) of the embodiment of the invention firstly receives one or more expansion contracts corresponding to each expansion point ID from the modular expansion and integration management device with any granularity, then generates expansion descriptions corresponding to the expansion contracts one by one, and then sends the expansion descriptions to the modular expansion and integration management device with any granularity, thereby improving the expansion capability of the system, reducing the coupling degree among the modules of the system, increasing the replaceability, reusability and applicability of the modules of the system, preventing the problem of a single module from influencing the safety of the system, and providing a foundation for independently producing, developing and testing independent sub-modules.
Based on the same inventive concept, the embodiment of the invention also provides a modular expansion and integration system with any granularity. FIG. 9 is a block diagram of a system for modular expansion and integration of arbitrary granularity in an embodiment of the invention. As shown in fig. 9, the modular extension and integration system of arbitrary granularity includes a modular extension and integration apparatus of arbitrary granularity applied to a modular extension and integration management apparatus of arbitrary granularity as described above; the apparatus for modular expansion and integration of arbitrary granularity as applied to the expanded modules as described above; the device applies to modular expansion and integration of arbitrary granularity of expansion modules as described above.
The specific flow of the system for modular expansion and integration of any granularity is as follows:
1. the management device for modular expansion and integration of any granularity divides one or more systems into a plurality of modules according to preset rules, and executes the following processing on any two modules in the plurality of modules: one or more extension points and extension point IDs corresponding to the extension points one by one are allocated to the extended module.
2. The extended module receives one or more extension points from the modular extension and integration management device with any granularity and extension point IDs corresponding to the extension points one by one, and generates and sends one or more extension contracts corresponding to each extension point ID to the modular extension and integration management device with any granularity.
3. The modular expansion and integration management device with any granularity receives one or more expansion contracts corresponding to each expansion point ID from the expanded module and sends the one or more expansion contracts corresponding to each expansion point ID to the expansion module.
4. The extension module receives one or more extension contracts corresponding to each extension point ID from the modular extension and integrated management device with any granularity, and generates and sends extension descriptions corresponding to the extension contracts to the modular extension and integrated management device with any granularity.
5. The modular expansion and integration management device with any granularity receives expansion description corresponding to the expansion contract from the expansion module.
6. The modular expansion and integration management device with any granularity establishes a module general configuration table according to the expanded module and the expansion module, loads the expanded module and the expansion module according to the module general configuration table, and initializes each module. The management apparatus for modular extension and integration of arbitrary granularity further registers one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in the extension registration manager.
7. And the extended module sends a preset extension point ID to the modular extension and integration management device with any granularity.
8. The modular extension and integration management device with any granularity receives a preset extension point ID from an extended module, acquires an extension description corresponding to the preset extension point ID from an extension registration manager and sends the extension description to the extended module.
9. The extended module receives an extension description corresponding to a preset extension point ID from the modular extension and integration management device with any granularity, and acquires a corresponding function from the extension module according to the extension description.
For example, when an extended module wants a function of an extended module, an extension point ID corresponding to the function of the extended module is sent to a modular extension and integration management device with an arbitrary granularity, and an extension description of the extended module is acquired by the modular extension and integration management device with the arbitrary granularity according to the extension point ID to acquire the function corresponding to the extension description. The functions may be certain resources given by the expansion module, or the expansion module may provide computing services, or some other business function, etc.
The modular expansion and integration system with any granularity can divide an independent system into a plurality of modules according to various service requirements, and can automatically integrate and merge the divided modules into a new organic whole, thereby improving the expansion capability of the system, reducing the coupling degree among the modules of the system, increasing the replaceability, reusability and applicability of the modules of the system, preventing the problem of a single module from influencing the safety of the system, and providing a foundation for independently producing, developing and testing the independent sub-modules.
In summary, the modular expansion and integration system with any granularity provided by the embodiment of the present invention has the following beneficial effects:
1. any size of granularity of the support module. For any system, a modular approach is supported in multiple ways: a fully modular approach, or a master module + flat module approach.
2. The module expansion contract is popularized (only API is contained no longer) and has accurate description; this makes the expansion capability almost unlimited.
3. The modules are diversified. The meaning of the module is generalized and can be integrated into the system as long as the extension contract and the extension description are followed.
4. The functions of the modules can be used mutually, so that the modules are transparent, and research personnel do not need to care where the modules exist.
5. The expansibility, reusability and replaceability of the system are realized. Based on the system established by the invention, if the existing functions of the system are not enough to complete certain services, a system developer or a third-party user can develop own modules by experienced personnel and add the modules into the system, and the modules are automatically integrated with the original system modules into an organic whole, which is expandability; after any module has a problem, the whole system cannot be influenced, and the system can be quickly used only by replacing or modifying the module. Problematic modules can also be discarded and the system can still generally operate, which is both reusable and replaceable. During production, the system can be decomposed into a proper number of modules according to the team scale, each group is responsible for one module, and after the module research and development are completed, some modules are combined according to needs. It is very easy to merge modules as long as the coupling of the parts is reduced as much as possible when developing.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are only exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (11)

1. A method for modular expansion and integration of arbitrary granularity, comprising:
dividing one or more systems into a plurality of modules according to a preset rule;
performing the following processing on any two of the plurality of modules:
allocating one or more extension points and extension point IDs corresponding to the extension points one by one to an extended module;
receiving one or more extension contracts corresponding to each extension point ID from the extended module;
sending one or more extension contracts corresponding to each extension point ID to an extension module;
receiving an extension description which is from the extension module and corresponds to the extension contract one by one;
establishing a module total configuration table according to the extended module and the extension module;
loading the extended module and the extended module according to the module total configuration table, and initializing each module;
registering one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID in an extension registration manager;
receiving a preset extension point ID from the extended module;
acquiring an extension description corresponding to the preset extension point ID from the extension registration manager;
and sending the extension description corresponding to the preset extension point ID to the extended module.
2. The method for modular extension and integration of any granularity according to claim 1, further comprising, after retrieving the extension description corresponding to the preset extension point ID from the extension registration manager:
when the number of the extension descriptions corresponding to the preset extension point ID is multiple, screening the extension descriptions according to a preset screening rule;
and sending the screened extension description to the extended module.
3. The method for modular expansion and integration of arbitrary granularity of claim 1, further comprising:
registering one or more extension contracts corresponding to each extension point ID in an extension registration manager;
acquiring an extension contract corresponding to the preset extension point ID from the extension registration manager;
judging whether the expansion contract corresponding to the preset expansion point ID corresponds to the expansion description corresponding to the preset expansion point ID one by one;
and when the extension contract corresponding to the preset extension point ID corresponds to the extension description corresponding to the preset extension point ID, sending the extension description corresponding to the preset extension point ID to the extended module.
4. A method for modular expansion and integration of arbitrary granularity, comprising:
receiving one or more extension points from the modular extension and integration management device of arbitrary granularity and extension point IDs corresponding to the extension points one to one;
generating one or more extension contracts corresponding to each extension point ID;
sending one or more extension contracts corresponding to each extension point ID to the modular extension and integration management device with any granularity;
sending a preset extension point ID to the modular extension and integration management device with any granularity;
receiving an extension description corresponding to the preset extension point ID from the modular extension and integration management device with any granularity;
and acquiring the corresponding function from the expansion module according to the expansion description.
5. A method for modular expansion and integration of arbitrary granularity, comprising:
receiving one or more extension contracts corresponding to each extension point ID of the integrated management device from the modular extensions of arbitrary granularity;
generating extension descriptions corresponding to the extension contracts one by one;
and sending the extension description to the modular extension and integrated management device with the arbitrary granularity.
6. A modular expansion and integration device of any granularity is applied to a modular expansion and integration management device of any granularity, and is characterized by comprising:
the system comprises a dividing unit, a processing unit and a processing unit, wherein the dividing unit is used for dividing one or more systems into a plurality of modules according to a preset rule;
the expansion point distribution unit is used for distributing one or more expansion points and expansion point IDs which are in one-to-one correspondence with the expansion points to the expanded modules;
a first receiving unit, configured to receive one or more extension contracts corresponding to each extension point ID from the extended module; receiving extension descriptions which are from an extension module and correspond to the extension contracts one by one; receiving a preset extension point ID from the extended module;
the first sending unit is used for sending one or more expansion contracts corresponding to each expansion point ID to the expansion module; sending an extension description corresponding to a preset extension point ID to the extended module;
the total configuration table unit is used for establishing a module total configuration table according to the expanded module and the expansion module;
the initialization unit is used for loading the extended module and the extended module according to the module general configuration table and initializing each module;
a registration unit, configured to register, in an extension registration manager, one or more extension point IDs corresponding to each module and one or more extension descriptions corresponding to each extension point ID;
an obtaining unit, configured to obtain, from the extension registration manager, an extension description corresponding to the preset extension point ID.
7. The apparatus for modular expansion and integration of arbitrary granularity according to claim 6, applied to the management apparatus for modular expansion and integration of arbitrary granularity, further comprising:
the screening unit is used for screening the extension descriptions according to a preset screening rule when the number of the extension descriptions corresponding to the preset extension point ID is multiple;
the first sending unit is specifically configured to: and sending the screened extension description to the extended module.
8. The modular expansion and integration apparatus of any granularity according to claim 6, applied to the modular expansion and integration management apparatus of any granularity,
the registration unit is further configured to: registering one or more extension contracts corresponding to each extension point ID in an extension registration manager;
the acquisition unit is further configured to: acquiring an extension contract corresponding to the preset extension point ID from the extension registration manager;
the modular expansion and integration device with arbitrary granularity further comprises: a judging unit, configured to judge whether an extension contract corresponding to the preset extension point ID corresponds to an extension description corresponding to the preset extension point ID one to one;
the first sending unit is further configured to: and when the extension contract corresponding to the preset extension point ID corresponds to the extension description corresponding to the preset extension point ID, sending the extension description corresponding to the preset extension point ID to the extended module.
9. An arbitrary granularity modular extension and integration device applied to an extended module is characterized by comprising:
a second receiving unit, configured to receive one or more extension points from the modular extension and integration management apparatus of any granularity and extension point IDs corresponding to the extension points one to one; receiving an extension description corresponding to a preset extension point ID from the modular extension and integration management device with any granularity;
an extension contract unit for generating one or more extension contracts corresponding to each extension point ID;
a second sending unit, configured to send one or more extension contracts corresponding to each extension point ID to the modular extension and integration management device with any granularity; sending a preset extension point ID to the modular extension and integration management device with any granularity;
and the functional unit is used for acquiring the corresponding function from the expansion module according to the expansion description.
10. A modular expansion and integration device with any granularity is applied to an expansion module and is characterized by comprising:
a third receiving unit, configured to receive one or more extension contracts corresponding to each extension point ID of the integrated management apparatus from the modular extension of the arbitrary granularity;
the extension description unit is used for generating extension descriptions which are in one-to-one correspondence with the extension contracts;
a third sending unit, configured to send the extension description to the modular extension and integrated management apparatus with any granularity.
11. A system for modular expansion and integration of arbitrary granularity, comprising:
the modular expansion and integration management device of any granularity applied to the modular expansion and integration management device of any granularity of any claim 6 to 8;
the apparatus of claim 9 applied to modular expansion and integration of said arbitrary granularity of expanded modules;
the apparatus of claim 10 applied to modular expansion and integration of said arbitrary granularity of expansion modules.
CN201910614014.5A 2019-07-09 2019-07-09 Method, device and system for modular expansion and integration of any granularity Pending CN112286583A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910614014.5A CN112286583A (en) 2019-07-09 2019-07-09 Method, device and system for modular expansion and integration of any granularity

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910614014.5A CN112286583A (en) 2019-07-09 2019-07-09 Method, device and system for modular expansion and integration of any granularity

Publications (1)

Publication Number Publication Date
CN112286583A true CN112286583A (en) 2021-01-29

Family

ID=74418995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910614014.5A Pending CN112286583A (en) 2019-07-09 2019-07-09 Method, device and system for modular expansion and integration of any granularity

Country Status (1)

Country Link
CN (1) CN112286583A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080196010A1 (en) * 2007-02-13 2008-08-14 Kollivakkam Raghavan Controlling and extending programmable network functions using a declarative approach
CN101295250A (en) * 2008-06-26 2008-10-29 腾讯科技(深圳)有限公司 Method and device for calling software module
CN102087594A (en) * 2010-12-27 2011-06-08 用友软件股份有限公司 Management method and device for extension point and plugins
CN102495730A (en) * 2011-12-02 2012-06-13 曙光信息产业(北京)有限公司 Dynamic and extendable web interface method
US20140366045A1 (en) * 2013-06-07 2014-12-11 Microsoft Corporation Dynamic management of composable api sets
CN104346144A (en) * 2013-07-26 2015-02-11 南京中兴力维软件有限公司 Eclipse RCP (rich client platform) extension point configuration method and device
CN105700881A (en) * 2016-01-12 2016-06-22 成都中科合迅科技有限公司 Application module calling method and device
CN105847026A (en) * 2015-11-28 2016-08-10 成都广达新网科技股份有限公司 Method for extending functions of network management system based on extension points

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080196010A1 (en) * 2007-02-13 2008-08-14 Kollivakkam Raghavan Controlling and extending programmable network functions using a declarative approach
CN101295250A (en) * 2008-06-26 2008-10-29 腾讯科技(深圳)有限公司 Method and device for calling software module
CN102087594A (en) * 2010-12-27 2011-06-08 用友软件股份有限公司 Management method and device for extension point and plugins
CN102495730A (en) * 2011-12-02 2012-06-13 曙光信息产业(北京)有限公司 Dynamic and extendable web interface method
US20140366045A1 (en) * 2013-06-07 2014-12-11 Microsoft Corporation Dynamic management of composable api sets
CN104346144A (en) * 2013-07-26 2015-02-11 南京中兴力维软件有限公司 Eclipse RCP (rich client platform) extension point configuration method and device
CN105847026A (en) * 2015-11-28 2016-08-10 成都广达新网科技股份有限公司 Method for extending functions of network management system based on extension points
CN105700881A (en) * 2016-01-12 2016-06-22 成都中科合迅科技有限公司 Application module calling method and device

Similar Documents

Publication Publication Date Title
CN107168746B (en) Micro-service generation method and device
CN108958708B (en) Software system architecture based on components and software implementation method
US20070094641A1 (en) Product configuration using configuration patterns
US8005878B2 (en) Providing processing instructions for updating schema
US9864581B2 (en) Modularized XML namespaces
US20180359161A1 (en) Service-oriented modular system architecture
US20160358354A1 (en) System and method for graphically displaying recommended mappings in an integration cloud service design time
CN109445841B (en) Interface document management method, device, server and storage medium
CN108595316A (en) Life cycle management method, manager, equipment and the medium of Distributed Application
CN111104103A (en) Visualization method and system for software editing microservice
CN110784377A (en) Method for uniformly managing cloud monitoring data in multi-cloud environment
US20070245296A1 (en) Code management in a distributed software development environment
CN112286583A (en) Method, device and system for modular expansion and integration of any granularity
CN114115821A (en) Application development method and platform, application deployment method and node, system and equipment
CN111090591B (en) Test method and device, electronic equipment and computer readable storage medium
US20110087458A1 (en) Processing transaction timestamps
CN111143408A (en) Event processing method and device based on business rules
CN114124977B (en) Cross-tenant data sharing method and device and electronic equipment
US20100037217A1 (en) Computer program product for evaluating the workloads of installation plans in quantity by building a pre-requisite relation knowledge-base
CN113179332B (en) Method, electronic device and storage medium for acquiring configuration information
CN116010287A (en) Method for automatically generating interface test case
CN113434382A (en) Database performance monitoring method and device, electronic equipment and computer readable medium
CN107451294B (en) Data interaction method and device
CN118092943B (en) Application release method and device, computer readable storage medium and terminal
CN116016559A (en) Information synchronization method, device and equipment of cloud computing platform 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