CN115373696B - Low code configuration method, system, equipment and storage medium for software resource generation - Google Patents

Low code configuration method, system, equipment and storage medium for software resource generation Download PDF

Info

Publication number
CN115373696B
CN115373696B CN202211314947.0A CN202211314947A CN115373696B CN 115373696 B CN115373696 B CN 115373696B CN 202211314947 A CN202211314947 A CN 202211314947A CN 115373696 B CN115373696 B CN 115373696B
Authority
CN
China
Prior art keywords
low
code program
software
deployment
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211314947.0A
Other languages
Chinese (zh)
Other versions
CN115373696A (en
Inventor
贺光忠
艾润
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yudongyuan Beijing Information Technology Co ltd
Original Assignee
Yudongyuan Beijing Information Technology Co ltd
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 Yudongyuan Beijing Information Technology Co ltd filed Critical Yudongyuan Beijing Information Technology Co ltd
Priority to CN202211314947.0A priority Critical patent/CN115373696B/en
Publication of CN115373696A publication Critical patent/CN115373696A/en
Application granted granted Critical
Publication of CN115373696B publication Critical patent/CN115373696B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

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

Abstract

The invention provides a low code configuration method, a system, equipment and a storage medium for software resource generation, wherein the method comprises the following steps: generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on the deployment requirement information of the software to be deployed; analyzing the configuration data, and constructing a deployment strategy diagram of the software to be deployed based on the diagram data obtained by analysis; deploying a policy graph for characterizing dependencies between a plurality of low code program entities; determining the execution sequence of each low-code program entity based on the dependency relationship among the low-code program entities, and sequentially executing each low-code program entity according to the execution sequence; and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resource. The invention does not need to write a large amount of running scripts, but arranges the functional components in a low-code mode, deploys or generates infrastructure resources required by the application software one by one, and has simple operation and high deployment efficiency.

Description

Low code configuration method, system, equipment and storage medium for software resource generation
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method, a system, a device, and a storage medium for configuring low code generated by software resources.
Background
The process from development to release of software usually includes a deployment phase, and the software deployment is to automatically deploy the code to each running environment so that the code can be used by users as soon as possible.
In the prior art, in the software deployment process, when a basic software environment is prepared for application software or the basic software environment and cloud basic resources are reconfigured, operation, setting or modification are mostly performed according to a certain rule or specification in a manner of installing a script, an interactive command line or a management interface, and actions such as creation, modification, uninstallation and the like of the basic resources are completed.
Disclosure of Invention
One of the objectives of the present invention is to provide a method, a system, a device, and a storage medium for configuring low code generated by software resources, so as to simplify a software deployment process and improve software deployment efficiency and flexibility.
In a first aspect, the present invention provides a method for configuring low code generated by a software resource, where the method includes: generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on deployment requirement information of software to be deployed; wherein the low-code program entity is used for generating deployment resources required by the software to be deployed when being executed; analyzing the configuration data corresponding to the low-code program entities, and constructing a deployment strategy graph of the software to be deployed based on graph data obtained by analysis; the deployment policy graph is used to characterize dependencies between a plurality of the low code program entities; generating a scheduling task corresponding to each low-code program entity, and determining the execution sequence of each scheduling task based on the dependency relationship among a plurality of low-code program entities; and sequentially executing each scheduling task according to the execution sequence until all scheduling tasks are successfully executed, and determining that the software to be deployed completes deployment.
In a second aspect, the present invention provides a system for low code configuration for software resource generation, comprising: a low code configuration system for software resource generation, comprising: the system comprises a front-end module, an analysis module, a graph construction module and a graph scheduling module; the front-end module is used for generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on the deployment requirement information of the software to be deployed; wherein the low-code program entity is used for generating deployment resources required by the software to be deployed when being executed; the analysis module is used for analyzing the configuration data corresponding to the low-code program entities, and the graph construction module is used for constructing the deployment strategy graph of the software to be deployed based on the graph data obtained by analysis; the deployment policy graph is used to characterize dependencies between a plurality of the low code program entities; the graph scheduling module is used for determining the execution sequence of each low-code program entity based on the dependency relationship among the low-code program entities and sequentially executing each low-code program entity according to the execution sequence; and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resource.
In a third aspect, an embodiment of the present invention provides a low code configuration device for software resource generation, including: a memory for storing executable instructions; a processor, configured to implement the low code configuration method for software resource generation according to the first aspect when executing the executable instructions stored in the memory.
In a fourth aspect, the present invention provides a storage medium storing executable instructions for implementing the software resource generation low-code configuration method according to the first aspect when executed by a processor.
The invention provides a low code configuration method, a system, equipment and a storage medium for software resource generation, wherein the method comprises the following steps: the method comprises the steps of obtaining a plurality of low-code program entities and configuration data based on deployment demand information of software to be deployed, and obtaining a plurality of low-code program entities and the configuration data, wherein the low-code program entities can generate deployment resources, so that a deployment strategy diagram for representing the dependency relationship among the low-code program entities is constructed based on the configuration data, then the execution sequence of the low-code program entities is determined based on the dependency relationship represented in the deployment strategy diagram, and the configuration task of the software deployment resources is completed.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained according to the drawings without inventive efforts.
Fig. 1 is a block diagram of a low-code configuration device for generating software resources according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart of a low code configuration method for software resource generation according to an embodiment of the present invention;
fig. 3 is a schematic flowchart of step S201 provided in the embodiment of the present invention;
fig. 4 is a schematic flowchart of step S202 provided in the embodiment of the present application;
FIG. 5 is an example of a deployment strategy map provided by an embodiment of the present invention;
fig. 6 is a schematic view of a scenario provided by an embodiment of the present invention;
fig. 7 is a schematic flowchart of step S204 provided by the embodiment of the present invention;
fig. 8 is a schematic diagram of an operation of a cloud component module according to an embodiment of the present invention;
fig. 9 is a functional block diagram of a low-code configuration system for software resource generation according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, 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 some, but not all embodiments of the present invention. The components of embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present invention, as presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. 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.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures.
In the description of the present invention, it should be noted that, if the terms "upper", "lower", "inner", "outer", etc. are used to indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings or the orientation or positional relationship which the product of the present invention is used to usually place, it is only for convenience of description and simplification of the description, but it is not intended to indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus, should not be construed as limiting the present invention.
Furthermore, the appearances of the terms "first," "second," and the like, if any, are used solely to distinguish one from another and are not to be construed as indicating or implying relative importance.
It should be noted that the features of the embodiments of the present invention may be combined with each other without conflict.
The process from development to release of software usually includes a deployment phase, where the software deployment is to automatically deploy codes to each operating environment so that the codes can be used by users as soon as possible, and in the software deployment phase, the used basic resources, such as cloud hosts, databases, application servers, installation scripts of message middleware, and operation modes of interactive command lines, are complex in maintenance, excessive in manual participation, and basically, the basic resource preparation process is not reusable.
For example, the traditional methods are all performed by writing scripts by personnel and performing interaction between people and machines, so that the efficiency is low and errors are easy to occur.
On the other hand, operation and maintenance personnel need to transform and compile a large amount of script codes; meanwhile, the application software can involve deployment and change work of basic resources in various links of development, test and production environment release, such as: adjusting hardware parameters such as the number of memories of the virtual cloud host in the development environment, the number of CPUs (central processing units), the disk capacity, the network bandwidth and the like; the method is characterized by comprising the following steps of testing environment operating system environment parameters, application database configuration parameters and the like, adjusting configuration parameters of message middleware and Web application servers in a production environment and the like, wherein in the existing mode, system operation and maintenance personnel or professional software product service engineers carry out parameter modification and change operations under a specific software and hardware management tool, the automation degree is low (the efficiency is low), and the operation process is generally not reusable.
Further, in the current software deployment process, if the deployment rule or configuration of the application software basic software resource changes, the relevant script code is usually required to be modified or the basic resource parameter is directly modified, and the manual application becomes effective.
In order to solve the above technical problem, an embodiment of the present invention provides a low code configuration method for software resource generation, which mainly defines generation and configuration functions of application software basic resources as one component, arranges the components in a low code manner, and finally draws a deployment strategy diagram for generating and configuring infrastructure resources required by application software, where the deployment strategy diagram is a Directed Acyclic Graph, so that an analysis engine and a scheduling engine based on a Directed Acyclic Graph (DAG) algorithm may deploy or generate relevant infrastructure resources of the application software one by one according to the deployment strategy diagram until the deployment of the application software is completed, and a large number of running scripts do not need to be written in the whole process, so that the operation is simple, and the software deployment efficiency is improved.
The following first describes a software resource generation low-code configuration device for executing the software resource generation low-code configuration method provided by the embodiment of the present invention.
Referring to fig. 1, fig. 1 is a block diagram of a low code configuration device for software resource generation according to an embodiment of the present invention. As shown in fig. 1, the low code configuration device 100 generated by the software resource comprises a memory 101, a processor 102 and a communication interface 103, wherein the memory 101, the processor 102 and the communication interface 103 are electrically connected with each other directly or indirectly to realize the transmission or interaction of data. For example, the components may be electrically connected to each other via one or more communication buses or signal lines.
The memory 101 may be used to store software programs and modules, such as instructions/modules of the software resource generation low-code configuration system 300 provided by the embodiment of the present invention, which may be stored in the memory 101 in the form of software or firmware (firmware) or fixed in an Operating System (OS) of the software resource generation low-code configuration device 100, and the processor 102 executes the software programs and modules stored in the memory 101, so as to execute various functional applications and data processing. The communication interface 103 may be used for communicating signaling or data with other node devices.
The Memory 101 may be, but is not limited to, a Random Access Memory (RAM), a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Read-Only Memory (EPROM), an electrically Erasable Read-Only Memory (EEPROM), and the like.
The processor 102 may be an integrated circuit chip having signal processing capabilities. The processor 102 may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), application Specific Integrated Circuits (ASICs), field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
It will be appreciated that the architecture shown in fig. 1 is merely illustrative and that the software resource generating low code configuration device 100 may also include more or fewer components than shown in fig. 1 or have a different configuration than shown in fig. 1. The components shown in fig. 1 may be implemented in hardware, software, or a combination thereof.
The following describes in detail a low code configuration method for software resource generation according to an embodiment of the present invention, with the low code configuration device 100 for software resource generation shown in fig. 1 as an execution subject.
Referring to fig. 2, fig. 2 is a schematic flowchart of a low code configuration method for generating a software resource according to an embodiment of the present invention, where the method may include the following steps:
s201: and generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on the deployment requirement information of the software to be deployed.
Wherein, the low-code program entity is used for generating deployment resources required by the software to be deployed when being executed;
s202: and analyzing the configuration data corresponding to the low-code program entities, and constructing a deployment strategy graph of the software to be deployed based on graph data obtained by analysis.
Wherein the deployment strategy graph is used for characterizing the dependency relationship among a plurality of low-code program entities;
s203: determining the execution sequence of each low-code program entity based on the dependency relationship among the low-code program entities, and executing each low-code program entity in sequence according to the execution sequence;
s204: and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resources.
In the deployment method, a plurality of low-code program entities and configuration data are obtained based on deployment demand information, and because the low-code program entities can generate deployment resources, a deployment strategy diagram for representing the dependency relationship among the low-code program entities is constructed based on the configuration data, then the execution sequence of the low-code program entities is determined based on the dependency relationship represented in the deployment strategy diagram, so that the configuration task of the software deployment resources is completed.
The following describes steps S201 to S202 in detail.
In step S201, based on the deployment requirement information of the software to be deployed, a plurality of low-code program entities and configuration data corresponding to the plurality of low-code program entities are generated.
In this embodiment, the software to be deployed may be any at least one software developed by a low-code development platform, and the low-code deployment method provided by the embodiment of the present invention may deploy a plurality of software in parallel, thereby improving software deployment efficiency.
The deployment requirement information is used for indicating basic resources used by software to be deployed, such as a cloud host, a database and an application server, wherein the cloud host resources may further include information such as the number of CPUs, the number of memories, a network bandwidth server, and the like, information such as table information required for creating a database server and a web service, a storage process, information such as data content of an imported default table, software related start rules, host address information, and the like.
In this embodiment, the low-code program entity is a program model that can be executed, is an abstraction of functions for implementing the basic software environment or reconfiguring the basic software environment and the cloud basic resources, and is used to generate deployment resources required by software to be deployed when executed, and can also be understood as a program component.
As an alternative implementation, each low-code program entity may be named according to its realizable capability, for example, the low-code program entity provided in this embodiment may implement, but is not limited to, the following functions: generating host resources, database services, web services and tcp services required by the application software, determining a software deployment environment, testing whether a host meets the deployment requirement of the application software, verifying the deployed application software web services and the like.
Therefore, an embodiment of the present invention provides an implementation manner of generating a plurality of low code program entities and configuration data, please refer to fig. 3, where fig. 3 is a schematic flowchart of step S201 provided in the embodiment of the present invention:
s201-1: a plurality of unconfigured low code program models are obtained.
In this embodiment, the low-code program model refers to a component model that has not been configured by the user, and the user may generate a plurality of low-code program models in real time through editing operation at the front end, or may select one from a component library generated in advance.
S201-2: and receiving attribute configuration operation aiming at each low-code program model so that each configured low-code program model has the function of generating the deployment resource information to obtain the low-code program entity.
S201-3: and obtaining the configured dependency relationship among a plurality of low-code program entities, and generating the configuration data based on the dependency relationship and the configured attribute information of the low-code program entities.
It can be understood that, after obtaining a plurality of low-code program entities, a user may configure attribute information for each component based on deployment requirement information, each low-code program entity configured with attribute information becomes a low-code program entity in the embodiment of the present invention, a dependency relationship, that is, a data flow direction relationship between the low-code program entities or a deployment sequence relationship between different deployment resources, and then a complete workflow is completed based on the dependency relationship between the low-code program entities, and a low-code configuration device generated by a software resource generates configuration data based on the dependency relationship and the attribute information of the configured low-code program entity.
In this embodiment of the present application, the configuration data may be a data file or a character string in a Json format or an XML format, and taking the Json format as an example, the configuration data is in the form of:
[{
"name": "start",
"nextnode": ["deploymode"]
"configfile”: ["./config.conf"]
}, {
"name": "deploymode",
"nextnode": ["singlenode"]
}, {
"name": "singlenode",
"cpu": 1,
"disk": 256G,
"memory": 4G,
"nextnode": ["end"]
}, {
"name": "end"
the Json data comprises a start node and an end node, a deployment mode node (deployment mode) and a single node (singleton) are connected in the middle, the single node comprises basic configuration information of a single, a nextnode field can be understood as a dependency relationship field and represents the next node or nodes to be connected with the node, the field is an array type, and the Json example represents a cloud host which can create specified parameters according to information in a configuration file.
As can be seen from the above example, the "name" is the name of the low-code program entity, and taking "alicloud" as an example, it can be seen that the corresponding attribute information is: "cpu" 1, "disk" 256, "mem" 256, wherein "nextnode" represents the next low-code program entity having a dependency relationship with the low-code program entity, and after the low-code configuration device generated by the software resource generates the configuration data, the configuration data can be analyzed to construct a deployment strategy diagram of the software to be deployed, that is, step S202 is executed.
In step S202, the configuration data corresponding to the plurality of low-code program entities is analyzed, and a deployment strategy diagram of the software to be deployed is constructed based on the diagram data obtained through the analysis.
In this embodiment, the deployment policy map is used to characterize dependencies between multiple low code program entities.
It can be understood that the deployment strategy diagram in this embodiment is a directed acyclic graph, where the directed acyclic graph is a finite directed graph without directed cycles, and is composed of finite vertices and directed edges, each directed edge points from one vertex to another vertex, and the directed acyclic graph starts from any point in one graph, and does not return to a previous node regardless of how many divergent intersections are traversed.
An embodiment of the present invention provides an implementation manner for constructing a deployment policy map, please refer to fig. 4, where fig. 4 is a schematic flowchart of step S202 provided in the embodiment of the present application:
s202-1: and analyzing the configuration data to obtain a target low-code program entity corresponding to each low-code program entity.
In the embodiment of the present invention, analyzing the configuration data, and obtaining the graph data includes: configuration information for each low code program entity, and the next low code program entity for each low code program entity, i.e., the destination low code program entity. For example, continuing with the configuration data example above, the name represents the name of each low-code program entity, the nextnode represents the destination low-code program entity corresponding to each low-code program entity, and the cpu, disk, and memory represent the configuration information of the low-code program entity.
S202-2: and establishing a directed connection relation between each low-code program entity and a target low-code program entity corresponding to the low-code program entity, and constructing a deployment strategy graph based on all the directed connection relations.
In this embodiment, as seen from the above Json data example, when the configuration data is analyzed, each "name" corresponds to a low-code program entity, and a "nextnode" represents a next low-code program entity having a dependency relationship with the low-code program entity, that is, a target low-code program entity, and then the low-code program entity is connected with a target low-code program entity corresponding to the low-code program entity, and after all connection relationships are completed, a deployment strategy diagram is formed.
For ease of understanding, referring to fig. 5, fig. 5 is an example of a deployment strategy diagram provided by an embodiment of the present invention, where each block represents a low-code program entity, which may be regarded as a component node, and the low-code program entities are connected by a directed line.
The deployment strategy diagram takes a starting node as a starting point, the node is just marked as the start of basic deployment resource generation, a target component node of the starting node is a warehouse event, when a specific application software package in a software warehouse specified by the component node releases a new version, the component node can be detected by the component node to trigger the warehouse event, and the component node mainly reads application software deployment related initialization information to determine a subsequent basic resource generation result.
Applying a deployment rule: the component node has the main functions of receiving a deployment rule and a related starting rule configured by a user aiming at application software, calculating according to parameters set by the user in the process of analyzing graph data, and determining a final variable value by combining context environment information executed by a current low-code program;
single-node deployment: the component node has the main functions of receiving configuration information of a user and transmitting the information to a subsequent component node;
creating a cloud host: the component node generates host resources required by application software through API service connected with the cloud host according to configuration information transmitted by the single-node deployment node, wherein the configuration information comprises but is not limited to contents such as cloud host provider information, cloud host management API, authentication information and the like, and main configuration contents comprise the number of CPUs (central processing units) of the cloud host, the number of memories, a network bandwidth server, the type and the version of an operating system and the like;
creating a Web server: the component node creates a Web server of a specific type according to the initialization information and deploys the application on the server;
creating a database: the component node deploys and configures the database, and the configuration content comprises table information required by creating a database server and web service, a storage process, imported default table data content and the like;
k8s deployment: the component node has the main functions of receiving configuration information of a user and transmitting the information to a subsequent service node;
creating a plurality of cloud hosts: the component node generates a plurality of host resources required by deployment of an application software cluster through API service connected with the cloud hosts according to configuration information transmitted by the K8s deployment node, wherein the configuration information comprises cloud host provider information, cloud host management API, authentication information and the like, and the configuration main content comprises the number of the cloud hosts, the number of CPUs (central processing units) of each cloud host, the number of memories, a network bandwidth server, the type and version of an operating system and the like;
creating a K8s cluster: the component node receives relevant settings of a user and relevant configuration information of a specified K8s cluster, creates the K8s cluster and deploys application software;
application verification: the component node receives configuration information related to the verification requirement of a user on the application software, is usually a standard HTTP API interface, and returns information whether the deployment of the application software is normal or not according to the state of the interface. When the node is executed, the deployed application software Web service is verified according to the set parameters, whether the service is started normally, whether the core function is normal and other information are checked, and specifically, the function of the HTTP API verified by the application software and the analysis of the information returned by the component to the HTTP API are considered.
To finish, the component node only notifies the parsing execution engine that the low-code program is executed, so as to retain the relevant information.
In an actual scenario, the deployment method provided by the embodiment of the present invention may deploy multiple pieces of software to be deployed in parallel, and therefore, when there are multiple pieces of software to be deployed, the deployment method may perform processing in the following manner:
a1: when a plurality of pieces of configuration data corresponding to the software to be deployed exist, generating a configuration data queue, and creating a plurality of threads;
a2: and for each piece of configuration data, if no idle thread exists in the plurality of threads, controlling the configuration data to be in a waiting state until the idle thread exists, and analyzing the configuration data by using the idle thread.
For example, taking the configuration data as Json data as an example, please refer to fig. 6, where fig. 6 is a schematic view of a scenario provided by an embodiment of the present invention, a generated configuration data queue enters a thread pool according to a submission sequence, an analysis engine searches for an idle thread according to a scheduling rule, if there is no idle thread, the idle thread is blocked until the idle thread appears, after the idle thread is obtained, the thread is used to analyze Json data or XML data, at this time, the thread is in a working state, other Json data cannot be analyzed using the thread, after the thread analyzes the Json data or XML data, a deployment policy map is formed in a memory, and then the obtained deployment policy map is sent to a map scheduling module in a queue manner, until the Json data or XML data is analyzed, the thread is converted from the working state to an idle state, and other blocked Json data or XML data can use the idle state thread.
It can be understood that, in the process of parsing the configuration data, the configuration data may also be checked based on the constraint of the DAG graph, for example, an error is found, that is, the parsing is suspended, and prompt information for data modification is output until the whole graph creating task is finished.
After the deployment strategy diagram is obtained, each low-code program entity may be executed according to the deployment strategy diagram, and the deployment of the software to be deployed is completed, that is, step S203 is executed.
In step S203, an execution order of each low-code program entity is determined based on the dependency relationship between the plurality of low-code program entities, and each low-code program entity is sequentially executed according to the execution order.
In this embodiment, each low-code program entity corresponds to one scheduling task, each directional connection line in the deployment strategy diagram may determine the execution sequence of each scheduling task, and then the scheduling tasks may be executed according to the execution sequence, low-code program entities with dependency relationships need to wait for execution, and low-code program entities without dependency relationships may be executed concurrently.
In step S204, when all the low-code program entities are successfully executed, it is determined that the configuration task of deploying the resources is completed.
In this embodiment, a start node may be found first, and marked as a scheduling start in the memory, then a destination node (i.e., a target low-code program entity) of the start node is found, a new thread is started to execute a scheduling task of a subsequent node, until the destination node is found to be an end node, it is indicated that all scheduling tasks are completed, and a configuration task is marked to be ended in the memory.
Therefore, the embodiment of the present invention provides an implementation manner of step S203, please refer to fig. 7, and fig. 7 is a schematic flowchart of step S203 provided in the embodiment of the present invention:
s203-1: generating a scheduling task for each low-code program entity;
s203-2: taking a target low-code program entity corresponding to the low-code program entity with the attribute information as the starting low-code program entity as a low-code program entity to be executed;
s203-3: running a scheduling task corresponding to a low-code program entity to be executed;
s203-4: and after the low code program entity to be executed is executed, determining the next low code program entity to be executed according to the execution sequence, and returning to the step of running the scheduling task corresponding to the low code program entity to be executed until the attribute information of the next low code program entity to be executed is finished.
If a plurality of low code program entities to be executed exist currently, a plurality of threads are started to execute simultaneously, execution efficiency is improved, after each low code program entity to be executed is executed completely, a subsequent low code program entity to be executed is searched continuously, and thread execution is started continuously.
In the whole deployment strategy diagram executing process, if one low-code program entity has an error, the subsequent low-code program entity is stopped to be executed, and an error log is recorded, so that a user can know details by checking the execution log.
In an optional embodiment, if the component executes the cloud host cluster which needs to be applied for, the component needs to first apply for the cloud host cluster which specifies hardware information such as a memory, a CPU, a hard disk and the like, and deploy software service configured by a user on a corresponding cloud host after the application is successful. Therefore, the deployment method provided by the embodiment of the present invention further includes:
b1: and if the attribute information of the low-code program entity corresponding to the current task to be executed is the cloud host attribute information, sending a cloud host resource application request to the cloud platform, and executing the current task to be executed based on the applied cloud host.
In this embodiment, if the execution of the low-code program entity requires a cloud host, the cloud component module needs to be called to execute a scheduling task of the low-code program entity, and the task applies for a specified number of configurations such as a memory, a CPU, and a hard disk on the cloud platform system through an API provided by a cloud platform service provider. The cloud component modules are mainly used for configuring and managing cloud resources, such as network, computing and data resources, versioning and reusing other cloud construction infrastructures such as the Arrie cloud and the Tencent cloud, and a standardized development interface is adopted, so that each cloud manufacturer can customize the cloud component module, and for different cloud platforms, different cloud component modules are required, and therefore Ping Taiyun component modules can be flexibly added.
The working principle of the cloud component module provided in the embodiment of the present application is shown in fig. 8, and fig. 8 is a working principle diagram of the cloud component module provided in the embodiment of the present invention.
The cloud component module provides 4 interfaces which can be called, namely a creation interface, a reading interface (omitted in fig. 8), an update interface and a deletion interface, wherein the creation interface is used for creating a cloud host required in the deployment task, and the reading interface is used for reading the created cloud host resources. And the updating interface is used for updating and configuring the applied cloud host resources after the task resources are deployed and the configuration information is updated. And the deletion interface is used for releasing the resources after deleting the deployment task.
The cloud component module can communicate with the cloud platform through the HTTP service by calling the interfaces, scheduling task information to be executed is sent to the cloud platform, the cloud platform calls the API interface of the cloud platform according to the scheduling task information to create, delete, update and read cloud host resources, success or failure information is returned to the cloud component module according to a calling result, the cloud component module returns the information to the graph scheduling module, and the working process of the complete cloud component module is finished.
It can be understood that, if a low-code executive entity in the deployment policy graph needs to execute a non-cloud component in the execution process, a corresponding non-cloud component needs to be developed according to the component development specification, and component information of the non-cloud component is registered, so that a corresponding deployment policy graph can be generated according to the non-cloud component information, and in the process of executing the deployment policy graph, a correct non-cloud component can be accessed, and a correct software base resource can be deployed. For example, a database component is created, and the visualized database deployment can be realized by packaging the deployment code of a specific database.
Based on the same inventive concept, an embodiment of the present invention further provides a low code configuration system for software resource generation, please refer to fig. 9, fig. 9 is a functional block diagram of the low code configuration system for software resource generation provided by the embodiment of the present invention, and the low code configuration system 300 for software resource generation may be stored in an Operating System (OS) of the low code configuration device 100 for software resource generation in the form of software or firmware (firmware).
As shown in fig. 9, a system 300 for low-code configuration of software resource generation provided by the embodiment of the present invention may include: a front-end module 310, a parsing module 320, a graph building module 330, and a graph scheduling module 340.
The front-end module 310 is configured to generate a plurality of low-code program entities and configuration data corresponding to the plurality of low-code program entities based on deployment requirement information of software to be deployed; wherein the low code program entity when executed is configured to generate deployment resources required by the software to be deployed;
the analysis module 320 is configured to analyze configuration data corresponding to a plurality of low-code program entities, and the graph construction module 330 is configured to construct a deployment strategy graph of software to be deployed; deploying a policy graph for characterizing dependencies between a plurality of low code program entities;
the graph scheduling module 330 is configured to determine an execution order of each low-code program entity based on a dependency relationship between multiple low-code program entities, and sequentially execute each low-code program entity according to the execution order; and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resources.
In an alternative embodiment, the front-end module 310 is specifically configured to: obtaining a plurality of unconfigured low-code program models; receiving attribute configuration operation aiming at each low-code program model so that each configured low-code program model has the function of generating the deployment resource information to obtain the low-code program entity; and obtaining the configured dependency relationship among a plurality of low-code program entities, and generating the configuration data based on the dependency relationship and the configured attribute information of the low-code program entities.
In an alternative embodiment, parsing module 320: analyzing the configuration data to obtain a target low-code program entity corresponding to each low-code program entity; the graph building module 330 is configured to build a directed connection relationship between each low-code program entity and a destination low-code program entity corresponding to the low-code program entity, and build a deployment strategy graph based on all the directed connection relationships.
In an optional embodiment, the graph scheduling module 330 is further configured to generate a configuration data queue and create a plurality of threads when there are a plurality of pieces of configuration data corresponding to the software to be deployed; the parsing and graph constructing module 320 is further configured to, for each piece of configuration data, control the configuration data to be in a waiting state if there is no idle thread in the multiple threads, and parse the configuration data by using the idle thread until there is an idle thread.
In an alternative embodiment, the graph scheduling module 330 is specifically configured to generate a scheduling task for each of the low-code program entities; taking a target low-code program entity corresponding to the low-code program entity with the attribute information as the starting low-code program entity as a low-code program entity to be executed; running the scheduling task corresponding to the low code program entity to be executed; and after the entity of the low-code program to be executed finishes executing, determining the next entity of the low-code program to be executed according to the execution sequence, and returning to the step of running the scheduling task corresponding to the entity of the low-code program to be executed until the attribute information of the next entity of the low-code program to be executed is finished.
In an optional embodiment, the software resource generation low-code configuration system 300 may further include a cloud component module, which may be as shown in fig. 8, where the cloud component module is configured to send a cloud host resource application request to the cloud platform if the attribute information of the low-code program entity corresponding to the current task to be executed is cloud host attribute information, and execute the current task to be executed based on the applied cloud host.
In an alternative embodiment, the system 300 for low-code configuration of software resource generation may further include a generation module, configured to stop a subsequent scheduling task and generate an error log if any scheduling task performs an error.
An embodiment of the present invention further provides a storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a low code configuration method for software resource generation as in any one of the foregoing embodiments. The computer readable storage medium may be, but is not limited to, various media that can store program codes, such as a U disk, a removable hard disk, a ROM, a RAM, a PROM, an EPROM, an EEPROM, a magnetic or optical disk, etc.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (10)

1. A method for low code configuration for software resource generation, the method comprising:
generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on deployment requirement information of software to be deployed; wherein the low-code program entity is used for generating deployment resources required by the software to be deployed when being executed;
analyzing the configuration data corresponding to the low-code program entities, and constructing a deployment strategy graph of the software to be deployed based on graph data obtained by analysis; the deployment policy map is used to characterize dependencies between a plurality of the low code program entities;
determining an execution sequence of each low-code program entity based on a dependency relationship among a plurality of low-code program entities, and sequentially executing each low-code program entity according to the execution sequence;
and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resource.
2. The method according to claim 1, wherein generating a plurality of low-code program entities and configuration data corresponding to the plurality of low-code program entities based on deployment requirement information of software to be deployed comprises:
obtaining a plurality of unconfigured low-code program models;
receiving attribute configuration operation aiming at each low-code program model so that each configured low-code program model has the function of generating the deployment resource information to obtain the low-code program entity;
and obtaining the configured dependency relationship among a plurality of low-code program entities, and generating the configuration data based on the dependency relationship and the configured attribute information of the low-code program entities.
3. The method according to claim 1, wherein analyzing configuration data corresponding to a plurality of low-code program entities and constructing a deployment strategy map of the software to be deployed based on the map data obtained by analysis comprises:
analyzing the configuration data to obtain a target low-code program entity corresponding to each low-code program entity;
establishing a directed connection relation between each low-code program entity and a target low-code program entity corresponding to the low-code program entity, and constructing the deployment strategy map based on all the directed connection relations.
4. The method of claim 1, further comprising:
when a plurality of pieces of configuration data corresponding to the software to be deployed exist, generating a configuration data queue and creating a plurality of threads;
and for each piece of configuration data, if no idle thread exists in the threads, controlling the configuration data to be in a waiting state until the idle thread exists, and analyzing the configuration data by using the idle thread.
5. The method of claim 1, wherein determining an execution order of each of the low-code program entities based on dependencies among the plurality of low-code program entities and executing each of the low-code program entities in turn according to the execution order comprises:
generating a scheduling task for each of the low code program entities;
taking a target low-code program entity corresponding to the low-code program entity with the attribute information as the starting low-code program entity as a low-code program entity to be executed;
running the scheduling task corresponding to the low code program entity to be executed;
and after the entity of the low-code program to be executed finishes executing, determining the next entity of the low-code program to be executed according to the execution sequence, and returning to the step of running the scheduling task corresponding to the entity of the low-code program to be executed until the attribute information of the next entity of the low-code program to be executed is finished.
6. The method of claim 5, further comprising:
and if the attribute information of the low code program entity to be executed is the cloud host attribute information, sending a cloud host resource application request to a cloud platform, and executing the low code program entity to be executed based on the applied cloud host.
7. The method of claim 1, further comprising:
and if any one of the low-code program entities executes errors, stopping executing the task and generating an error record log.
8. A software resource-generated low code configuration system, comprising: the system comprises a front-end module, an analysis module, a graph construction module and a graph scheduling module;
the front-end module is used for generating a plurality of low-code program entities and configuration data corresponding to the low-code program entities based on the deployment requirement information of the software to be deployed; wherein the low-code program entity is used for generating deployment resources required by the software to be deployed when being executed;
the analysis module is used for analyzing the configuration data corresponding to the low-code program entities, and the graph construction module is used for constructing the deployment strategy graph of the software to be deployed based on the graph data obtained by analysis; the deployment policy map is used to characterize dependencies between a plurality of the low code program entities;
the graph scheduling module is used for determining the execution sequence of each low-code program entity based on the dependency relationship among the low-code program entities and sequentially executing each low-code program entity according to the execution sequence; and when all the low-code program entities are successfully executed, determining to complete the configuration task of the deployment resource.
9. A software resource-generating low-code-configuration device, comprising:
a memory for storing executable instructions;
a processor for implementing the method of any one of claims 1 to 7 when executing executable instructions stored in the memory.
10. A storage medium storing executable instructions for performing the method of any one of claims 1 to 7 when executed by a processor.
CN202211314947.0A 2022-10-26 2022-10-26 Low code configuration method, system, equipment and storage medium for software resource generation Active CN115373696B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211314947.0A CN115373696B (en) 2022-10-26 2022-10-26 Low code configuration method, system, equipment and storage medium for software resource generation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211314947.0A CN115373696B (en) 2022-10-26 2022-10-26 Low code configuration method, system, equipment and storage medium for software resource generation

Publications (2)

Publication Number Publication Date
CN115373696A CN115373696A (en) 2022-11-22
CN115373696B true CN115373696B (en) 2022-12-23

Family

ID=84074351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211314947.0A Active CN115373696B (en) 2022-10-26 2022-10-26 Low code configuration method, system, equipment and storage medium for software resource generation

Country Status (1)

Country Link
CN (1) CN115373696B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113703749A (en) * 2021-09-06 2021-11-26 河北雄安新区公安局 Information system based on visual programming technology and construction method thereof
CN113849165A (en) * 2021-09-28 2021-12-28 航天科工网络信息发展有限公司 Customizable low-code front-end development framework and method based on visual dragging
CN114281318A (en) * 2021-12-27 2022-04-05 武汉创聚信科技服务有限公司 Low-code application software development device
CN114579145A (en) * 2022-02-22 2022-06-03 腾讯科技(深圳)有限公司 Software deployment method and device, computer equipment and storage medium
CN115016784A (en) * 2022-08-08 2022-09-06 宇动源(北京)信息技术有限公司 Low code application multiplexing method, application analysis system, equipment and storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8935666B2 (en) * 2010-06-30 2015-01-13 Gordon G. MILLER, III Systems and methods for dynamic mobile applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113703749A (en) * 2021-09-06 2021-11-26 河北雄安新区公安局 Information system based on visual programming technology and construction method thereof
CN113849165A (en) * 2021-09-28 2021-12-28 航天科工网络信息发展有限公司 Customizable low-code front-end development framework and method based on visual dragging
CN114281318A (en) * 2021-12-27 2022-04-05 武汉创聚信科技服务有限公司 Low-code application software development device
CN114579145A (en) * 2022-02-22 2022-06-03 腾讯科技(深圳)有限公司 Software deployment method and device, computer equipment and storage medium
CN115016784A (en) * 2022-08-08 2022-09-06 宇动源(北京)信息技术有限公司 Low code application multiplexing method, application analysis system, equipment and storage medium

Also Published As

Publication number Publication date
CN115373696A (en) 2022-11-22

Similar Documents

Publication Publication Date Title
US10705808B2 (en) Software defined network controller
CN107370786B (en) General information management system based on micro-service architecture
CN107766126B (en) Container mirror image construction method, system and device and storage medium
US20210311858A1 (en) System and method for providing a test manager for use with a mainframe rehosting platform
CN106559438B (en) Program uploading method and device based on target network platform
CN110673923A (en) XWIKI system configuration method, system and computer equipment
CN113885849B (en) Application development method and device based on industrial internet platform and terminal equipment
US11089000B1 (en) Automated source code log generation
US11381638B1 (en) System and method for parallel execution of activites in an integration flow
CN113448678A (en) Application information generation method, deployment method, device, system and storage medium
US7805711B2 (en) Redirection interface system and method for CIM object manager provider
US20230418623A1 (en) Application remodeling method, system, cluster, medium, and program product
CN117539459A (en) API interface configuration method, system and equipment
CN115632944B (en) Node configuration method, device, equipment, readable storage medium and server
CN115373696B (en) Low code configuration method, system, equipment and storage medium for software resource generation
US20170295085A1 (en) Building and testing composite virtual services using debug automation
CN115617668A (en) Compatibility testing method, device and equipment
CN112558930B (en) Software generation system and method for container service
CN115237441A (en) Upgrade test method, device and medium based on cloud platform
WO2021036987A1 (en) Method and device for achieving operation and maintenance monitoring
CN112363700A (en) Cooperative creation method and device of intelligent contract, computer equipment and storage medium
CN114143235A (en) NFV automatic test method, device, equipment and storage medium
CN109995617A (en) Automated testing method, device, equipment and the storage medium of Host Administration characteristic
US20240004698A1 (en) Distributed process engine in a distributed computing environment
CN115658099A (en) Enterprise-level application operation and maintenance method and system

Legal Events

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