WO2024002302A1 - 应用管理方法、应用订阅方法及相关设备 - Google Patents
应用管理方法、应用订阅方法及相关设备 Download PDFInfo
- Publication number
- WO2024002302A1 WO2024002302A1 PCT/CN2023/104203 CN2023104203W WO2024002302A1 WO 2024002302 A1 WO2024002302 A1 WO 2024002302A1 CN 2023104203 W CN2023104203 W CN 2023104203W WO 2024002302 A1 WO2024002302 A1 WO 2024002302A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- information
- data model
- program
- program entity
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Definitions
- This application relates to the field of software technology, and in particular to an application management method, application subscription method and related equipment.
- ALM Application lifecycle management
- App development requires writing code to implement functions.
- the APP code needs to be continuously debugged and developed until the APP functions can be realized.
- These processes are source code level management, and APPs can usually be managed through code version management tools such as TFS, Git, and GitHub.
- code version management tools such as TFS, Git, and GitHub.
- management permissions are also controlled at the file and directory level, and the APP cannot be managed at a deeper level.
- developers can also manage APPs by building an integrated platform.
- the integrated platform can only manage the source code of the APP and is not suitable for managing the life cycle of the APP.
- This application provides an application management method, application subscription method and related equipment, which can manage the life cycle of APP.
- this application provides an application management method, which method includes: obtaining a data model of a first application, where the data model of the first application includes program code for realizing functions of the first application; according to the data of the first application The model generates the program entity corresponding to the first application.
- the data model includes attributes, and the attributes of the first application include at least one of a name and version information of the first application.
- the attributes of the first application also include an identifier of the data model of the first application, where the identifier of the data model is unique.
- the attributes of the first application also include at least one of a deployment node corresponding to the first application and a running resource corresponding to the first application.
- the method of "Program Entity" specifically includes: determining the configuration information of the first application according to the data model of the first application, and the configuration information of the first application is used to indicate the configuration value of the attributes of the data model of the first application; according to the first application Configuration information to create the program entity of the first application.
- the data model of the first application is also used to indicate the function of the first application.
- the method further includes: determining a running resource corresponding to the first application, and running a program entity corresponding to the first application on the running resource corresponding to the first application.
- this application provides an application management device, which can implement the application management method described in the first aspect and any possible implementation manner of the first aspect.
- the function of the device can be realized by hardware, or it can be realized by hardware executing corresponding software.
- the hardware or software includes one or more modules or units corresponding to the steps in the application management method described in the first aspect and any possible implementation of the first aspect.
- the device includes: an acquisition module, configured to acquire a data model of the first application, the data model of the first application including program code for realizing the functions of the first application; and a generating module, configured to generate data based on the data of the first application.
- the model generates the program entity corresponding to the first application.
- the data model includes attributes, and the attributes of the first application include at least one of a name and version information of the first application.
- the attributes of the first application also include an identifier of the data model of the first application, where the identifier of the data model is unique.
- the attributes of the first application also include at least one of a deployment node corresponding to the first application and a running resource corresponding to the first application.
- the generation module is specifically configured to: determine configuration information of the first application according to the data model of the first application, where the configuration information of the first application is used to indicate configuration values of attributes of the data model of the first application;
- the configuration information of an application creates a program entity of the first application.
- the data model of the first application is also used to indicate the function of the first application.
- the device further includes a determining module, configured to determine the running resources corresponding to the first application, and run the program entity corresponding to the first application on the running resources corresponding to the first application.
- the present application provides an electronic device.
- the electronic device may be a hardware device corresponding to the application store described in the first aspect.
- the electronic device includes: a processor, a memory used to store instructions executable by the processor; when the processor is configured to execute the instructions, the electronic device implements the first aspect and any possible implementation manner of the first aspect. method described.
- the present application provides a computer-readable storage medium on which computer program instructions are stored; when the computer program instructions are executed by an electronic device, the electronic device enables the electronic device to implement any one of the first aspect and the first aspect. possible implementation methods.
- the present application provides a computer program product, including computer readable code, or a non-volatile computer readable storage medium carrying the computer readable code, when the computer readable code is run in an electronic device , the processor in the electronic device implements the method described in the first aspect and any possible implementation manner of the first aspect.
- this application provides an application subscription method, which method includes: obtaining a data model of a first application, where the data model of the first application includes program code for realizing functions of the first application; according to the first application The data model generates a program entity corresponding to the first application; receives subscription information for subscribing to information of the first application; and sends first indication information related to the running status of the program entity corresponding to the first application.
- the method of "generating a program entity corresponding to the first application according to the data model of the first application” specifically includes: determining the configuration information of the first application according to the data model of the first application.
- the information is used to indicate configuration values of attributes of the data model of the first application; and a program entity of the first application is created according to the configuration information of the first application.
- the first indication information includes the status of the program entity corresponding to the first application; wherein the status of the program entity includes any one of the creation status, running status, and termination status of the program entity.
- the subscription information is also used to subscribe to preset events related to the first application and change information of attributes of the first application.
- the method further includes: when the state of the program entity corresponding to the first application changes, sending first notification information, where the first notification information is used to notify the state of the program entity corresponding to the first application of the change.
- the method further includes: receiving query information, the query information is used to query the information of the first application, the information of the first application includes the information of the first attribute and the information of the second attribute of the first application; sending The query result is used to indicate the information of the first application.
- the information of the first attribute at least includes: the identification information of the data model of the first application; the information of the second attribute at least includes: the name of the attribute of the first application and the identification information of the attribute of the first application.
- the method of "querying the program entities of the first application” specifically includes: searching for the program entities of the first application according to the identification information of the data model of the first application; and counting the number of program entities of the first application. .
- the above method of "querying the program entity of the first application” specifically includes: searching for the status of the program entity of the first application according to the identification information of the data model of the first application.
- the above method of "querying the program entity of the first application” specifically includes: Search the status of the program entity of the first application according to the identification information of the data model indicated by the configuration information of the first application.
- this application provides an application subscription device, which can be used to implement the application subscription method described in the sixth aspect and any possible implementation manner of the sixth aspect.
- the function of the device can be realized by hardware, or it can be realized by hardware executing corresponding software.
- the hardware or software includes one or more modules or units corresponding to the steps in the application subscription method described in the sixth aspect and any possible implementation manner of the sixth aspect.
- the device includes: an acquisition module, configured to acquire a data model of the first application, the data model of the first application including program code for realizing the functions of the first application; and a generating module, configured to generate data based on the data of the first application.
- the model is used to generate the program entity corresponding to the first application;
- the receiving module is used to receive subscription information for subscribing to the information of the first application;
- the sending module is used to send the first information related to the running status of the program entity corresponding to the first application. Instructions.
- the generation module is specifically configured to: determine configuration information of the first application according to the data model of the first application, where the configuration information of the first application is used to indicate configuration values of attributes of the data model of the first application; The configuration information of the first application creates the program entity of the first application.
- the first indication information includes the status of the program entity corresponding to the first application; wherein the status of the program entity includes any one of the creation status, running status, and termination status of the program entity.
- the subscription information is also used to subscribe to preset events related to the first application and change information of attributes of the first application.
- the sending module is further configured to: when the state of the program entity corresponding to the first application changes, send first notification information, and the first notification information is used to notify the state of the program entity corresponding to the first application of the change.
- the receiving module is also configured to receive query information.
- the query information is used to query the information of the first application.
- the information of the first application includes the information of the first attribute and the information of the second attribute of the first application;
- the sending module is also used to send query results, and the query results are used to indicate the information of the first application.
- the information of the first attribute at least includes: the identification information of the data model of the first application; the information of the second attribute at least includes: the name of the attribute of the first application and the identification information of the attribute of the first application.
- the device further includes a query module, configured to search for the program entity of the first application according to the identification information of the data model of the first application; and to count the number of program entities of the first application.
- a query module configured to search for the program entity of the first application according to the identification information of the data model of the first application; and to count the number of program entities of the first application.
- the query module is specifically configured to search for the status of the program entity of the first application according to the identification information of the data model of the first application.
- the query module is specifically configured to search for the status of the program entity of the first application based on the identification information of the data model indicated by the configuration information of the first application.
- the present application provides an electronic device.
- the electronic device may be a hardware device corresponding to the application store described in the first aspect.
- the electronic device includes: a processor, a memory for storing instructions executable by the processor; when the processor is configured to execute the instructions, the electronic device implements the sixth aspect and any possible implementation manner of the sixth aspect. method described.
- the present application provides a computer-readable storage medium on which computer program instructions are stored; when the computer program instructions are executed by an electronic device, the electronic device enables the electronic device to implement any one of the sixth aspect and the sixth aspect. possible implementation methods.
- the present application provides a computer program product, including computer readable code, or a non-volatile computer readable storage medium carrying the computer readable code, when the computer readable code is run in an electronic device , the processor in the electronic device implements the method described in the sixth aspect and any possible implementation manner of the sixth aspect.
- this application at least has the following beneficial effects:
- the application program entity is obtained by objectifying the application data model or program code. Since the application program entity can be used to describe the running program code, for example, it can describe the state of the program code running. Furthermore, the application-based program entity can manage the running process of the application program. That is to say, the development and operation management of the entire life cycle of the application are realized.
- Figure 1 is a schematic flow chart of an application management method provided by an embodiment of the present application.
- Figure 2 is a schematic diagram of the types of data models provided by the embodiment of the present application.
- FIG. 3 is a schematic flowchart of an application subscription method provided by an embodiment of the present application.
- Figure 4 is a schematic flowchart of another application subscription method provided by an embodiment of the present application.
- FIG. 5 is a schematic flowchart of an application management method provided by an embodiment of the present application.
- Figure 6 is a schematic diagram of a data model and predefined structure provided by the embodiment of the present application.
- Figure 7 is a schematic structural diagram of a data model provided by an embodiment of the present application.
- Figure 8 is a schematic structural diagram of an application management device provided by an embodiment of the present application.
- Figure 9 is a schematic structural diagram of an application subscription device provided by an embodiment of the present application.
- a and/or B can mean: A exists alone, A and B exist simultaneously, and B exists alone.
- the character “/” generally indicates that the related objects are in an "or” relationship.
- App development requires writing code to implement functions.
- Applications can usually be managed based on their files and directories through code version management tools such as TFS, Git, and GitHub.
- code version management tools such as TFS, Git, and GitHub.
- management permissions are also controlled at the file and directory level, and applications cannot be managed at a deeper level.
- Integrated development tools can include open source Jenkins, DevOps platforms, etc.
- APP files and directories can be managed through code version management tools such as team foundation server (TFS), Git, and GitHub. Management permissions are controlled at the file and directory level of the APP.
- FFS team foundation server
- Git Git
- GitHub GitHub
- This management method has poor encapsulation and is based on code. Confidentiality is poor when reusing or trading, and binary-based reuse and verification are not easy to modify, and users need to perform compatibility processing.
- Jenkins requires developers to choose or develop relevant tools to build a continuous integration platform, which is not universal and has high construction costs.
- Commercial DevOps platforms are suitable for the development of source code in several specific languages. The management goal is the source code, not the app, and are not suitable for the management of the entire life cycle of the app.
- embodiments of the present application provide an application management method, through which the source code, configuration information, and binary program of the APP can be objectified, thereby realizing the management of the entire life cycle of the APP.
- the method may be implemented on an operation and maintenance system or a module in the operation and maintenance system (such as an operation control module), or a hardware device corresponding to the operation and maintenance system.
- the hardware device may include a server or hardware in the server.
- the server may be a single server, or it may be a server cluster composed of multiple servers. In some implementations, the server cluster may also be a distributed cluster.
- This application does not limit the specific implementation of the hardware equipment corresponding to the operation and maintenance system. The embodiment of this application is explained by taking the execution subject as the running system as an example.
- FIG. 1 is a schematic flowchart of an application management method provided by an embodiment of the present application. As shown in Figure 1, the application management method may include:
- the data model of the first application may be used to indicate the function of the first application.
- the first application's data model may include the first application's program code.
- the program code of the first application may be used to implement the functions of the first application.
- the data model of the first application may also include attributes.
- the attributes of the first application may be used to describe information of the first application.
- the attributes of the first application may include at least one of a name and version information of the first application.
- the attributes of the first application may also include other parameters, for example, they may also include the identifier and type of the data model of the first application.
- the ID of the data model is used to uniquely identify the data model.
- the identifier of the data model can be a globally unique identifier (GUID).
- GUID globally unique identifier
- the attributes of the first application may further include at least one of a deployment node of the first application and a running resource of the first application.
- the types of data models can include C++ data models, Nodejs data models, Java data models, etc.
- the configuration information of different types of data models can include guid, name, version number, language category, assembly, sub-predefined list, and configuration item list. These configuration information are described below:
- Guid can be generated for the development system and is globally unique. The name can be customized by the user.
- Version numbers can be managed by the development system, and consecutive version numbers can be monotonically increasing.
- the language category may refer to the programming language of the program code.
- the language type of the C++ data model is C++
- the language type of the Nodejs data model is Nodejs
- the language type of the Java data model is Java.
- Assembly that is, program code, can include command line, source code, binary, etc.
- the command line refers to the command line to be executed when the application is loaded and run, for example, the name of the program to be started, the command parameters to be passed in, the registration command, etc.
- Source code can refer to source code and resource files used (can be empty). Other users can purchase the original license to view and use the source code.
- Source code can include C++ source code, Nodejs JavaScript source code, Java source code, etc.
- Running binaries can include binary packages. Since C++ is not cross-platform, the binaries of the C++ data model's assemblies are platform-specific. For example, the platform may include a general linux platform, a general windows platform, Android, Mac, etc. The running binary in the Java data model assembly is cross-platform and only needs to store a class file or jar package.
- the sub-predefined list can be predefined generated by the data model, regardless of language category.
- Configuration item list A list of configuration items (key-value) that can be defined.
- the development system can obtain the data model of the first application by interacting with a device corresponding to the development studio of the first application.
- the development studio of the first application may send the data model of the first application to the development system in response to the upload operation.
- the program entity corresponding to the first application may also be called an application (running) object, which may refer to an actually running program, or may also be used to describe an actually running program. For example, you can trace Describes the deployment node, running status, running resources (such as central processing unit (CPU), memory) and other information of the application.
- running application
- running resources such as central processing unit (CPU), memory
- the operation and maintenance system may determine the configuration information of the first application based on the data model of the first application, and create a program entity corresponding to the first application based on the configuration information of the first application.
- the configuration information of the first application refers to the attribute information of the data model of the first application.
- the configuration information of the first application may include the name of the first application, the identification (guid) of the first application, the identification (guid) and version number of the data model of the first application, and the configuration value of the attribute of the first application. one or more.
- the configuration information of the first application may also include the deployment node of the first application, the running resources of the first application, etc. In this way, the management system can determine the running resources corresponding to the first application according to the configuration information of the first application.
- the program entity of the application is obtained by objectifying the data model or program code of the application. Because the application program entity can be used to describe the running program code, for example, it can describe the deployment node, status, running resources, etc. of the program code. Furthermore, application-based program entities can manage the application's program code, deployment nodes, and running resources. That is to say, the development and operation management of the entire life cycle of the application are realized.
- the method provided by the embodiment of the present application may further include: determining the running resources of the first application, and running the program entity corresponding to the first application on the running resources of the first application.
- the running resources of the first application may include CPU, memory, etc. configured when the first application is running.
- the operation and maintenance system may obtain the running node and running resources corresponding to the first application from the configuration information of the first application. Then, the operation and maintenance system may send running instruction information to the running node, so that the running node uses the running resource to run the program entity corresponding to the first application.
- the running instruction information may be used to instruct the running node to run the first application and the running resources required for running the first application.
- the running node can allocate corresponding running resources to the first application according to the running instruction information, and use the running resources to run the program entity of the first application.
- the data model of the first application can be uploaded to the target node (such as an application store).
- the target node such as an application store
- the operation and maintenance system may, after determining the running resources of the first application, Deploy the program entity of the first application on the running resource of the first application. This enables management of deployment during the life cycle of the application.
- embodiments of the present application also provide an application subscription method, as shown in Figure 3, the method may include S301 ⁇ S304.
- S301 and S302 may refer to the description of S101 and S102 above, and will not be described again.
- the subscription information is used to subscribe to information of the first application.
- the subscription information may include information about the subscribing user, the identification of the first application, etc.
- the subscriber's information may include the subscriber's account, the identification of the device used, etc.
- the information of the first application may include the status of the program entity corresponding to the first application, and may also include attribute information, configuration information, etc. of the first application.
- the status of the program entity may include any one of the creation status, running status, and termination status of the program entity.
- subscribing users can send subscription information to the running system through the device they use. Accordingly, the running system can receive subscription information.
- the subscription information can also be used to subscribe to preset events related to the first application and change information of the first application.
- the preset events may include adding events, modifying events, deleting events, etc.
- the adding event may mean that a new configuration item is added to the configuration information of the first application.
- the modification event may mean that the configuration item in the configuration information of the first application is modified.
- the deletion event may mean that the configuration item in the configuration information of the first application is deleted.
- the change information of the first application may be change information of attributes of the first application, change information of attributes of the second application related to the first application, etc.
- the first indication information is related to the running status of the program entity of the first application.
- the first indication information may include the status of the program entity corresponding to the first application.
- the status of the program entity may include the creation status, running status and termination status of the program entity.
- the first indication information may be used to indicate whether the status of the program entity of the first application is abnormal.
- the first indication information when used to indicate whether the status of the program entity of the first application is abnormal, may include the first identification.
- the first identification may be used to indicate whether the status of the program entity of the first application is normal.
- the first identifier can be a number or a character or a combination of numbers and characters. combine. For example, when the first identifier is the first indicator, it indicates that the status of the program entity of the first application is normal; when the first identifier is the second indicator, it indicates that the status of the program entity of the first application is abnormal.
- the first indicator and the second indicator are different.
- the first indication information may also include information about the abnormal running status of the program entity of the first application (such as exception cause, exception code, occurrence time, etc.).
- the operation and maintenance system after the operation and maintenance system receives the subscription information, it can monitor the status of the first application according to the identification of the first application in the subscription information, and send the detected status of the first application to the subscription The device used by the user. For example, the operation and maintenance system can periodically detect the status of the first application. In this way, the operation and maintenance system can promptly and quickly send the information required by the subscriber to the subscriber.
- the first indication information can also be used to indicate the status of the second application. That is, the first indication information may be used to indicate the status of the first application and the status of the second application. For example, the first indication information may include the status of the first application and/or the status of the second application.
- the operation and maintenance system may respond to the user's subscription information and send information related to the running status of the program entity of the application to the user. This enables access management to applications.
- the method may further include: sending the first notification information when a state change of the program entity corresponding to the first application is detected. .
- the first notification information may be used to notify that the status of the program entity corresponding to the first application changes.
- the first notification information may include the second identification.
- the second identification may be used to identify a change in the state of the program entity corresponding to the first application.
- the first notification information may include the changed status of the program entity corresponding to the first application.
- the first notification information may include the first status information.
- the first status information may indicate that the program entity corresponding to the first application terminates execution.
- the first status information may include APP1-END. APP1 represents the program entity corresponding to the first application, and END represents the termination of execution.
- notification information can be sent to the subscribing user, so that the subscribing user can promptly learn about the status change of the subscribed application. Realizes the management of application status.
- the method provided by the embodiment of the present application may also include:
- S401 Receive query information.
- the query information may be used to query information of the first application.
- the information of the first application may include information of a first attribute and information of a second attribute of the first application.
- the information of the first attribute may at least include identification information of the data model of the first application.
- the information of the second attribute may at least include the name of the attribute of the first application and the identification information of the attribute of the first application.
- the query information may include an identifier of the first application or an identifier of the data model of the first application or an identifier of the configuration information of the first application. Based on this identification, the operation and maintenance system can search for the information of the first application.
- users who may or may not be subscribers
- the operation and maintenance system can receive the query information from the subscriber and query the information of the first application.
- the operation and maintenance information can be queried for the information of the first application in the following manner.
- Method 1 The operation and maintenance system can search for the program entities of the first application based on the identification information of the data model of the first application, and count the number of program entities of the first application.
- Method 2 The operation and maintenance system can search for the status of the program entity of the first application based on the identification information of the data model of the first application.
- Method 3 The operation and maintenance system can query the status of the program entity of the first application according to the identification information of the data model indicated by the configuration information of the first application.
- the query result is used to indicate the information of the first application.
- the query result may include information on the first attribute and information on the second attribute of the first application.
- the development system can determine the relevant information of the application based on the query information. Furthermore, application-related information is sent to the corresponding user. While meeting the personalized needs of users, it also implements corresponding query management.
- the above embodiment describes the management method of the entire life cycle of an application from the perspective of a single application.
- the following describes the entire life cycle of multiple applications with associated relationships.
- multiple applications with associated relationships may refer to multiple applications with parent-child relationships.
- multiple applications with an associated relationship include a first application and a second application, and the second application may be a parent application of the first application. That is, the second application can call the first application to implement the functions of the first application.
- this embodiment of the present application provides an operation and maintenance system, including an application warehouse, an operation control device, and devices in multiple development studios.
- the application warehouse communicates and connects with equipment and operation control equipment in multiple development studios.
- the application warehouse can be used to store the pre-definition of the application (also called APP pre-definition).
- the application warehouse receives an access request from a user, it can verify the user's permissions (such as verifying whether the user's account and corresponding password are consistent with the stored account and password).
- the application warehouse can allow the user to access the predefined applications stored in the application warehouse.
- the application warehouse can be a server.
- the server may have multiple interfaces, and the multiple interfaces may be used to interact with the devices in the development studio.
- the development studio refers to the place where developers develop applications. That is, developers can use equipment (such as computers, computers, etc.) in the development studio to develop applications and data models of applications.
- the device in the development studio may also create a pre-definition of the application based on the application's data model and upload the pre-definition of the application to the application repository.
- the operation control device can be used to control the predefined creation, operation and termination of the application.
- the execution control device sends the pre-definition of the application to the target node, so that the target node can run the deployed application.
- the target node can also run the sub-applications.
- the operation control device can be a server, computer, etc.
- the embodiment of the present application places no special restrictions on the specific form of the operation control device. It can interact with users through one or more methods such as keyboard, touch pad, touch screen, remote control, voice interaction or handwriting device.
- the method provided by the embodiment of the present application may include S501 to S505.
- the first device uploads APP predefinition 1 corresponding to APP1 to the application warehouse.
- the application repository receives and stores the device's APP predefinition 1 from the development studio.
- the first device may refer to a device in a development studio corresponding to the first application. Developers can develop application data model equipment through the development room equipment.
- the application warehouse can be used to store uploaded APP pre-definitions.
- An application's predefinition may be a specific set of configuration values for properties of the application's data model. For details, please refer to the following description, which will not be described again here.
- the developer can complete the development of APP data model 1 on the development studio, and upload the predefinition of the second application to the application warehouse through the device of the development studio.
- the configuration item list of the first application may be used to store code files, script files, program files, etc. of the first application.
- the content of the configuration item list can be stored in the form of key-value.
- the configuration item list can also modify the key-value of the contents in the list in response to the user's configuration operation.
- the application warehouse receives the first request information from the second device.
- the second device may refer to a device in a development studio where the second application is developed.
- the first request information is used to request to obtain APP predefined 1.
- the application warehouse sends APP predefinition 1 to the second device.
- the second device receives the APP predefinition 1 from the application warehouse.
- the second device Based on the APP predefinition 1, the second device builds the APP data model 2.
- the second device can use the predefinition of the first application as a sub-predefinition of the second application. Furthermore, the second device can use the data model of the first application as a sub-model of the data model of the second application to construct The data model of the second application.
- the second device sends APP predefinition 2 to the application warehouse.
- the application warehouse receives and stores the predefinition 2 of the second application from the second device.
- APP predefinition 2 is generated based on APP data model 2. Specifically, you may refer to the description of the association between the predefinition and the data model in Figure 6 below, which will not be described again.
- the operation control module receives the first control instruction.
- the first control instruction may be used to instruct deployment and running of the second application.
- the first control instruction may include an identification of the second application or an identification of the configuration information of the second application.
- the first control instruction may be an instruction sent by the manager to the operation control module through the device used, or may be an instruction sent by the application warehouse in response to the operation of the manager.
- the first control instruction can also be used to instruct the deployment node, running resources, etc. to run the second application.
- running resources may include CPU, memory, etc.
- the operation control module obtains APP predefinition 2 from the application warehouse.
- the operation control module can create APP object 2 according to APP predefinition 2, and run the first APP object 2. Because there is a parent-child relationship between APP2 and APP1. Therefore, the run control module can also create APP object 1 based on the sub-predefinition (APP predefinition 1) of APP predefinition 2, and deploy and run APP object 1 on the corresponding running resource.
- APP predefinition 1 sub-predefinition 1 of APP predefinition 2
- the run control module can send the APP predefinition 2 to the node, so that the deployment node can use the corresponding run resources to run the APP predefinition. Definition 2.
- APP predefined 2 when APP predefined 2 is running, the creation and creation of APP predefined 1 can be controlled. Run and terminate.
- APP predefined 2 can control the creation, running and termination of APP predefined 1 through program scripts. That is, the functional logic of APP object 2 can start and stop APP object 1.
- the run control module can generate the program file (exe) of APP2 through the digital twin, and generate the program file (exe) of APP1 through the digital twin.
- the program file of APP2 can include sub-predefined lists.
- the program file of APP1 can include a configuration item list.
- the configuration item list can include data to be processed (ie, data object 1) and data processing results (ie, data object 2).
- predefinition is a set of specific configuration values for the attributes of the data model.
- the predefinition records the configuration information of the data model.
- the predefinition is used to instantiate the object.
- the instantiated object constructs the structure of the object according to the structure of its model, and uses the parameter value as the initial value of the object.
- Predefinitions can also be referenced by other models as subpredefinitions.
- operations can include: creating a new model, assigning names and identifiers; adding members, specifying member types; deleting members; adding or deleting sub-predefined; setting the initial value of sub-predefined; updating the model version; publishing a certain Model version generation predefined, etc.
- operations can include: specifying a model version to publish (create) the predefinition; assigning a name and identity; setting predefined parameter values (attributes and members), etc.
- FIG. 6 is a schematic diagram of the data model and predefined relationships provided by the embodiment of the present application.
- the data model can include basic attributes and member lists; basic attributes can include name, description, GUID, version and other information; the member list can include: "Member 1: Name + Type", “Member 2: Name + Type”, “Member 3: Name + Type” and other information.
- Predefinition can include basic attributes and member lists; basic attributes can include name, description, GUID, model GUID+version and other information; member lists can include: “Member 1+value”, “Member 2+value”, “Member 3+value” " and other information.
- FIG. 7 is a schematic diagram of the data model provided by the embodiment of the present application.
- the data model may include: basic attributes, member list, and sub-model list.
- a data model with sub-models is a composite data model.
- data model A in the figure is a composite data model
- data model B and data model C are sub-models of data model A.
- the submodel list records the predefined identification of the data that refers to the data model of the submodel, establishing the dependency relationship between the submodel and the data model.
- the submodel list of data model A includes data model B and data model C.
- the predefined identification of the data such as: "name B1+referenced model ID+parameter value”, "name B2+referenced model ID+parameter value”, "name C3+referenced model ID+parameter value”, etc.
- motor equipment has parameters such as speed, temperature, and current.
- Establish a data model of the motor equipment The data model of the motor equipment can include members of speed, temperature, and current.
- the data model of the motor equipment can uniformly describe similar motors.
- the compressor workshop has a fixed plate production line, a static plate production line, and a final assembly line, and establish a data model of the compressor workshop.
- the data model of the compressor workshop can include sub-models: fixed plate production line, static plate production line, Assembly production line, etc.
- the data model of a compressor shop can describe similar compressor shop models.
- the operation and maintenance system described in the embodiment of the present application may include one or more hardware structures and/or software modules for implementing the corresponding application management method and application subscription method mentioned above.
- These execution hardware Structural and/or software modules may constitute an electronic device.
- the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving the hardware depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each specific application, but such implementations should not be considered beyond the scope of this application.
- FIG. 8 is a schematic structural diagram of an application management device provided by an embodiment of the present application.
- the application management device may include: an acquisition module 801, configured to acquire a data model of a first application.
- the data model of the first application includes program code for implementing the functions of the first application.
- the generation module 802 is configured to generate a program entity corresponding to the first application according to the data model of the first application.
- the data model includes attributes, and the attributes of the first application include at least one of a name and version information of the first application.
- the attributes of the first application also include an identifier of the data model of the first application, where the identifier of the data model is unique.
- the attributes of the first application also include at least one of a deployment node corresponding to the first application and a running resource corresponding to the first application.
- the generation module 802 is specifically configured to: determine the configuration information of the first application according to the data model of the first application, and the configuration information of the first application is used to indicate the configuration value of the attributes of the data model of the first application; The configuration information of the first application creates the program entity of the first application.
- the data model of the first application is also used to indicate the function of the first application.
- the device further includes a determination module 803 for determining the running resources corresponding to the first application, and running the program entity corresponding to the first application on the running resources corresponding to the first application.
- FIG. 9 is a schematic structural diagram of an application subscription device provided by an embodiment of the present application.
- the application subscription device may include: an acquisition module 901, configured to acquire a data model of a first application.
- the data model of the first application includes program code for implementing functions of the first application.
- the generation module 902 is configured to generate a program entity corresponding to the first application according to the data model of the first application.
- the receiving module 903 is configured to receive subscription information for subscribing to information of the first application.
- the sending module 904 is configured to send first indication information related to the running status of the program entity corresponding to the first application.
- the generation module 902 is specifically configured to: determine the configuration information of the first application according to the data model of the first application, and the configuration information of the first application is used to indicate the configuration value of the attributes of the data model of the first application; Create a program entity of the first application according to the configuration information of the first application.
- the first indication information includes the status of the program entity corresponding to the first application; wherein the status of the program entity includes any one of the creation status, running status, and termination status of the program entity.
- the subscription information is also used to subscribe to preset events related to the first application and change information of attributes of the first application.
- the sending module 904 is also configured to send first notification information when the status of the program entity corresponding to the first application changes.
- the first notification information is used to notify that the status of the program entity corresponding to the first application changes. .
- the receiving module 903 is also configured to receive query information.
- the query information is used to query the information of the first application.
- the information of the first application includes the information of the first attribute and the information of the second attribute of the first application.
- the sending module 904 is also used to send query results, and the query results are used to indicate the information of the first application.
- the information of the first attribute at least includes: identification information of the data model of the first application; the information of the second attribute at least includes: the name of the attribute of the first application and the attribute name of the first application. Sexual identification information.
- the device also includes a query module 905, configured to search for the program entity of the first application according to the identification information of the data model of the first application; and to count the program entities of the first application. quantity.
- the query module 905 is specifically configured to search for the status of the program entity of the first application according to the identification information of the data model of the first application.
- the query module 905 is specifically configured to search for the status of the program entity of the first application according to the identification information of the data model indicated by the configuration information of the first application.
- embodiments of the present application can divide each execution subject involved in the application management method and the application subscription method into functional modules according to the above method examples.
- the above integrated modules can be implemented in the form of hardware or software function modules.
- the division of modules in the embodiment of the present application is schematic and is only a logical function division. In actual implementation, there may be other division methods.
- each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module.
- An embodiment of the present application also provides an electronic device, which may be a hardware device in an operation and maintenance system.
- the electronic device includes: a processor, a memory used to store instructions executable by the processor; when the processor is configured to execute the instructions, the electronic device implements the method as described in the previous embodiment.
- embodiments of the present application also provide a computer-readable storage medium on which computer program instructions are stored; when the computer program instructions are executed by an electronic device, the electronic device implements the implementation as described in the foregoing embodiments. method described.
- the above-mentioned computer-readable storage medium may be a non-transitory computer-readable storage medium.
- the non-transitory computer-readable storage medium may be ROM, random access memory (RAM), CD-ROM, magnetic tape, Floppy disks and optical data storage devices, etc.
- embodiments of the present application further provide a computer program product, including a computer readable code, or a non-volatile computer readable storage medium carrying the computer readable code, when the computer readable code
- the processor in the electronic device implements the method described in the foregoing embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
Abstract
Description
Claims (22)
- 一种应用管理方法,其特征在于,所述方法包括:获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;根据所述第一应用的数据模型,生成所述第一应用对应的程序实体。
- 根据权利要求1所述的方法,其特征在于,所述数据模型包括属性,所述第一应用的属性包括所述第一应用的名称和版本信息中的至少一个。
- 根据权利要求2所述的方法,其特征在于,所述第一应用的属性还包括所述第一应用的数据模型的标识,其中,所述数据模型的标识为唯一标识。
- 根据权利要求3所述的方法,其特征在于,所述第一应用的属性还包括所述第一应用对应的部署节点和所述第一应用对应的运行资源中的至少一个。
- 根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述第一应用的数据模型,生成所述第一应用对应的程序实体,包括:根据所述第一应用的数据模型,确定所述第一应用的配置信息,所述第一应用的配置信息用于指示所述第一应用的数据模型的属性的配置值;根据所述第一应用的配置信息,创建所述第一应用对应的程序实体。
- 根据权利要求5所述的方法,其特征在于,所述第一应用的数据模型还用于指示所述第一应用的功能。
- 根据权利要求4所述的方法,其特征在于,所述方法还包括:确定所述第一应用对应的运行资源,并在所述第一应用对应的运行资源上运行所述第一应用对应的程序实体。
- 一种应用订阅方法,其特征在于,所述方法包括:获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;根据所述第一应用的数据模型,生成所述第一应用对应的程序实体;接收订阅信息,所述订阅信息用于订阅所述第一应用的信息;发送第一指示信息,所述第一指示信息与所述第一应用对应的程序实体的运行状态相关。
- 根据权利要求8所述的方法,其特征在于,所述根据所述第一应用的数据模型,生成所述第一应用对应的程序实体,包括:根据所述第一应用的数据模型,确定所述第一应用的配置信息,所述第一应用的配置信息用于指示所述第一应用的数据模型的属性的配置值;根据所述第一应用的配置信息,创建所述第一应用对应的程序实体。
- 根据权利要求9所述的方法,其特征在于,所述第一指示信息包括所述第一应用对应的程序实体的状态;其中,所述程序实体的状态包括所述程序实体的创建状态、运行状态和终止状态中的任一种状态。
- 根据权利要求8所述的方法,其特征在于,所述订阅信息还用于订阅与所述第一应用相关的预设事件以及所述第一应用的属性的变更信息。
- 根据权利要求11所述的方法,其特征在于,所述方法还包括:当所述第一应用对应的程序实体的状态变更时,发送第一通知信息,所述第一通知信息用于通知所述第一应用对应的程序实体的状态发生变更。
- 根据权利要求8-12任一项所述的方法,其特征在于,所述方法还包括:接收查询信息,所述查询信息用于查询所述第一应用的信息,所述第一应用的信息包括所述第一应用的第一属性的信息和第二属性的信息;发送查询结果,所述查询结果用于指示所述第一应用的信息。
- 根据权利要求13所述的方法,其特征在于,所述第一属性的信息至少包括:所述第一应用的数据模型的标识信息;所述第二属性的信息至少包括:所述第一应用的属性的名称和所述第一应用的属性的标识信息。
- 根据权利要求14所述的方法,其特征在于,所述查询所述第一应用的信息,包括:根据所述第一应用的数据模型的标识信息,查找所述第一应用的程序实体;统计所述第一应用的程序实体的数量。
- 根据权利要求15所述的方法,其特征在于,所述查询所述第一应用的信息,包括:根据所述第一应用的数据模型的标识信息,查找所述第一应用的程序实体的状态。
- 根据权利要求15所述的方法,其特征在于,所述查询第一应用的信息,包括:根据所述第一应用的配置信息指示的数据模型的标识信息,查找所述第一应用的程序实体的状态。
- 一种应用管理装置,其特征在于,所述装置包括:获取模块,用于获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;生成模块,用于根据所述第一应用的数据模型,生成所述第一应用对应的程序实体。
- 一种应用订阅装置,其特征在于,所述装置包括:获取模块,用于获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;生成模块,用于根据所述第一应用的数据模型,生成所述第一应用对应的程序实体;接收模块,用于接收订阅信息,所述订阅信息用于订阅所述第一应用的信息;发送模块,用于发送第一指示信息,所述第一指示信息与所述第一应用对应的程序实体的运行状态相关。
- 一种电子设备,其特征在于,包括:处理器;存储器;以及计算机程序;其中,所述计算机程序存储在所述存储器上,当所述计算机程序被所述处理器执行时,使得所述电子设备实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
- 一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,其特征在于,当所述计算机程序在电子设备上运行时,使得所述电子设备实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
- 一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,其特征在于,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/879,755 US20250390296A1 (en) | 2022-06-30 | 2023-06-29 | Application management method, application subscription method, and related device |
| EP23830466.1A EP4538872A4 (en) | 2022-06-30 | 2023-06-29 | APPLICATION MANAGEMENT METHOD, APPLICATION SUBSCRIPTION METHOD AND RELATED DEVICE |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210760285.3 | 2022-06-30 | ||
| CN202210760285.3A CN115202712B (zh) | 2022-06-30 | 2022-06-30 | 应用管理方法、应用订阅方法及相关设备 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024002302A1 true WO2024002302A1 (zh) | 2024-01-04 |
Family
ID=83577513
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/104203 Ceased WO2024002302A1 (zh) | 2022-06-30 | 2023-06-29 | 应用管理方法、应用订阅方法及相关设备 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250390296A1 (zh) |
| EP (1) | EP4538872A4 (zh) |
| CN (1) | CN115202712B (zh) |
| WO (1) | WO2024002302A1 (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115202712B (zh) * | 2022-06-30 | 2023-12-29 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080235363A1 (en) * | 2007-03-21 | 2008-09-25 | Hemal Shah | Method and system for platform level data model for indications based event control and data transfer |
| CN109582329A (zh) * | 2018-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 数据管理及订阅方法、装置、系统、电子设备及存储介质 |
| CN110768833A (zh) * | 2019-10-25 | 2020-02-07 | 北京宝兰德软件股份有限公司 | 基于kubernetes的应用编排部署方法及装置 |
| CN111930521A (zh) * | 2020-09-23 | 2020-11-13 | 北京百度网讯科技有限公司 | 用于部署应用的方法、装置、电子设备及可读存储介质 |
| CN115202712A (zh) * | 2022-06-30 | 2022-10-18 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110535671B (zh) * | 2018-05-23 | 2022-11-08 | 龙芯中科(山西)技术有限公司 | 云平台的管理方法及装置 |
| US10924538B2 (en) * | 2018-12-20 | 2021-02-16 | The Boeing Company | Systems and methods of monitoring software application processes |
| CN112039934A (zh) * | 2019-06-03 | 2020-12-04 | 大唐移动通信设备有限公司 | 一种信息反馈、反馈信息处理方法及装置 |
| US11018953B2 (en) * | 2019-06-19 | 2021-05-25 | International Business Machines Corporation | Data center cartography bootstrapping from process table data |
| CN113076096B (zh) * | 2021-04-29 | 2024-04-23 | 成都星云智联科技有限公司 | 一种桌面应用程序开发方法、装置、设备及存储介质 |
| CN113741889B (zh) * | 2021-08-26 | 2024-11-19 | 北京深演智能科技股份有限公司 | 异构数据库智能存取数据的方法及设备 |
| CN114564209B (zh) * | 2022-02-08 | 2025-09-16 | 福思(杭州)智能科技有限公司 | 智能汽车数据的处理方法、装置、设备及存储介质 |
-
2022
- 2022-06-30 CN CN202210760285.3A patent/CN115202712B/zh active Active
-
2023
- 2023-06-29 EP EP23830466.1A patent/EP4538872A4/en active Pending
- 2023-06-29 US US18/879,755 patent/US20250390296A1/en active Pending
- 2023-06-29 WO PCT/CN2023/104203 patent/WO2024002302A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080235363A1 (en) * | 2007-03-21 | 2008-09-25 | Hemal Shah | Method and system for platform level data model for indications based event control and data transfer |
| CN109582329A (zh) * | 2018-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 数据管理及订阅方法、装置、系统、电子设备及存储介质 |
| CN110768833A (zh) * | 2019-10-25 | 2020-02-07 | 北京宝兰德软件股份有限公司 | 基于kubernetes的应用编排部署方法及装置 |
| CN111930521A (zh) * | 2020-09-23 | 2020-11-13 | 北京百度网讯科技有限公司 | 用于部署应用的方法、装置、电子设备及可读存储介质 |
| CN115202712A (zh) * | 2022-06-30 | 2022-10-18 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4538872A4 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20250390296A1 (en) | 2025-12-25 |
| EP4538872A4 (en) | 2025-09-24 |
| EP4538872A1 (en) | 2025-04-16 |
| CN115202712B (zh) | 2023-12-29 |
| CN115202712A (zh) | 2022-10-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107766126B (zh) | 容器镜像的构建方法、系统、装置及存储介质 | |
| KR102008037B1 (ko) | 분산형 애플리케이션 객체에 대한 업데이트 통지를 제공하는 기법 | |
| CN115061717B (zh) | 应用管理方法、应用订阅方法及相关设备 | |
| CN107608710A (zh) | 基于Jenkins工具的软件项目构建任务配置方法及装置 | |
| WO2020015191A1 (zh) | 业务规则的发布管理方法、电子装置及可读存储介质 | |
| CN103152327B (zh) | 一种配置压缩/解压缩插件的方法、客户端及系统 | |
| CN113495723B (zh) | 一种调用功能组件的方法、装置及存储介质 | |
| CN106569880B (zh) | 一种Android应用间动态共享资源的方法及系统 | |
| US20250390312A1 (en) | Application management method and related device | |
| US20200117354A1 (en) | User interface development in a transcompiling environment | |
| CN113032004A (zh) | 在开发环境中管理开发作业的方法、设备和程序产品 | |
| US20250390292A1 (en) | Application management method, application subscription method, and related device | |
| WO2024002229A1 (zh) | 应用管理方法及相关设备 | |
| CN114756363A (zh) | 一种资源配置检测方法及装置 | |
| WO2024002302A1 (zh) | 应用管理方法、应用订阅方法及相关设备 | |
| CN106055348A (zh) | 一种通知系统属性更新的方法和装置 | |
| CN109408336B (zh) | 一种启动项监控方法、装置、终端及计算机可读介质 | |
| CN114546410A (zh) | 一种基于设计模式的代码优化方法及相关设备 | |
| JP5209058B2 (ja) | ソフトウェア・コンポーネントを作成するための方法 | |
| CN112035102A (zh) | 数据接口的配置方法及装置、存储介质、电子装置 | |
| CN115309376A (zh) | 一种应用创建方法、装置、电子设备及存储介质 | |
| CN115469917A (zh) | 文件处理方法、装置、设备及存储介质 | |
| US20260046344A1 (en) | Database systems and client-side methods for pausing flows offline | |
| US12353401B1 (en) | Database systems and client-side methods for offline operation | |
| US20250238205A1 (en) | Application creation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23830466 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18879755 Country of ref document: US |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023830466 Country of ref document: EP |
|
| ENP | Entry into the national phase |
Ref document number: 2023830466 Country of ref document: EP Effective date: 20250109 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWP | Wipo information: published in national office |
Ref document number: 2023830466 Country of ref document: EP |