Method and system for generating arrangement program, electronic equipment and storage medium
In the research and development of intelligent connected vehicle software, the orchestration engine and protocol stack are used to separate the business logic as common and differentiated parts to generate orchestration programs, which solves the problems of long development cycle and poor reusability, and realizes efficient orchestration program generation and maintenance.
Patent Information
- Application Number
- CN202510381389.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-27
- Publication Date
- 2025-07-22
AI Technical Summary
In the research and development of intelligent connected vehicle software, the existing manual programming methods lead to long development cycles and poor reusability, resulting in low development efficiency and inability to efficiently reuse orchestration programs.
By obtaining common information of the business to be orchestrated, using the orchestration engine to generate the initial orchestration program, and configuring the differential information based on the protocol stack, the target orchestration program is generated, and the business logic is separated into common and differential parts to achieve rapid orchestration.
Improve development efficiency, reduce repeated development costs, simplify maintenance processes, enhance system stability and security, and reduce maintenance complexity.
Smart Images

Figure CN120353467A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the technical field of software development, and in particular, to a method, a system, an electronic device, and a storage medium for generating an orchestration program. Background Art
[0002] Currently, in the field of intelligent connected vehicles, especially for the implementation of business logic in the process of automotive software development, developers generally rely on traditional manual programming methods. In the process of using this method, developers need to start from scratch and use programming languages such as Java, C++, or Python to implement each functional module in the business logic one by one. For example, defining data structures, writing algorithms, handling exceptions, designing user interfaces, and implementing data input and output, etc. Although this method provides a high degree of customization ability, it also brings problems such as long development cycles and poor reusability. Especially when facing complex and changeable business forms, it is necessary to design and implement an orchestration program for each business separately, which reduces the development efficiency. Summary of the Invention
[0003] The embodiments of the present application provide a method, a system, an electronic device, and a storage medium for generating an orchestration program, aiming to improve the technical problems of low development efficiency and low reuse degree of the orchestration program caused by the need to repeatedly develop the same functions for different orchestration services in the process of developing an orchestration system.
[0004] According to one embodiment of the present application, a method for generating an orchestration program is provided, including: obtaining a first service to be orchestrated; configuring common information of the first service to be orchestrated based on an orchestration engine to generate an initial orchestration program; and based on the initial orchestration program, configuring differential information of the first service to be orchestrated based on a protocol stack to generate a target orchestration program, so as to implement the orchestration of the first service to be orchestrated.
[0005] In the above optional embodiment of the present application, by obtaining the first service to be orchestrated, configuring common information of the first service to be orchestrated based on the orchestration engine to generate an initial orchestration program, and based on the initial orchestration program, configuring differential information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, developers can quickly generate an initial framework of the orchestration program, save a large amount of development time and resources by configuring common information, and only need a small amount of customization work to complete the orchestration of complex services by expanding differential information, thereby further improving the development efficiency. Moreover, by dividing the business logic into two parts: common and differential, the code of the common capabilities can be reused by multiple different services, reducing the cost of repeated development. At the same time, the adjustment and maintenance of differential information become simpler, reducing the maintenance cost and complexity.
[0006] Optionally, generating an initial orchestration program based on the common information of the first business to be orchestrated configured by the orchestration engine includes: configuring the common information of the first business to be orchestrated by the orchestration engine to obtain a first configuration file, where the first configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the common information; verifying the first configuration file according to a preset protocol to obtain a verification result; in response to determining that the first configuration file conforms to the preset protocol based on the verification result, loading the orchestration engine to generate an initial orchestration program.
[0007] In the above optional embodiment of the present application, by configuring the common information and generating the first configuration file, operators, data types, and plugins can be quickly designed and added to the orchestration system. Moreover, before the orchestration engine is loaded and the initial orchestration program is generated, strict verification of the first configuration file according to the preset protocol can ensure that the definitions of all operators, data types, and plugins follow the established specifications, which helps to detect and prevent potential errors and insecure code in advance and guarantees the stability and security of the system operation.
[0008] Optionally, based on the initial orchestration program, generating a target orchestration program based on the differential information of the first business to be orchestrated configured by the protocol stack includes: using the protocol stack to configure the differential information of the first business to be orchestrated to generate a second configuration file, where the second configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the differential information; mapping the second configuration file to the architecture of the initial orchestration program to generate a target orchestration program.
[0009] In the above optional embodiment of the present application, through the protocol stack, operators, data types, and plugins can be added or modified for specific services without modifying the core code of the orchestration engine. The high degree of customization and flexibility enables the orchestration system to quickly adapt to various service requirements and improve development efficiency. Moreover, through the protocol stack mechanism, changes or extensions to the business logic only need to be made in the second configuration file without affecting the stability of the orchestration engine and the operation of other services, making maintenance and upgrade simpler and reducing the maintenance cost.
[0010] Optionally, verifying the first configuration file according to a preset protocol to obtain a verification result includes: in response to the startup of the orchestration engine, reading the operator definition file; verifying the operator definition file according to a preset operator definition protocol to obtain a verification result; in response to determining that the first configuration file conforms to the preset protocol based on the verification result, loading the orchestration engine to generate an initial orchestration program, including: in response to determining that the operator definition file conforms to the preset operator definition protocol based on the verification result, rendering and generating an operator list.
[0011] In the above optional embodiments of the present application, the preset operator definition protocol is used as a verification standard, which can effectively ensure that the operator definition file has been strictly checked before being accessed by the orchestration engine, ensuring the correctness and security of the operator definition file.
[0012] Optionally, verifying the first configuration file according to a preset protocol to obtain a verification result, including: in response to the start of the orchestration engine, reading the data type definition file; verifying the data type definition file based on the preset data type definition protocol to obtain a verification result; in response to determining that the first configuration file conforms to the preset protocol according to the verification result, loading the orchestration engine and generating an initial orchestration program, including: in response to determining that the data type definition file conforms to the preset data type protocol according to the verification result, rendering and generating an attribute editing area.
[0013] In the above optional embodiments of the present application, the preset data type definition protocol is used as the development standard for the data type definition file, providing clear guidance and specifications, enabling the second configuration file to follow the same interfaces and data formats during design. This not only simplifies the development and integration process of the second configuration file but also ensures the compatibility and interchangeability between the second configuration files, enabling the second configuration files that conform to the protocol to seamlessly access the orchestration engine, enhancing the flexibility and scalability of the orchestration system.
[0014] Optionally, verifying the first configuration file according to a preset protocol to obtain a verification result, including: in response to the start of the orchestration engine, reading the plugin definition file; verifying the plugin definition file based on the preset plugin definition protocol to obtain a verification result; in response to determining that the first configuration file conforms to the preset protocol according to the verification result, loading the orchestration engine and generating an initial orchestration program, including: in response to determining that the plugin definition file conforms to the preset plugin protocol according to the verification result, controlling the logical access of the plugin definition to the orchestration engine.
[0015] In the above optional embodiments of the present application, it can ensure that all plugins conform to the established specifications and standards before being loaded and used, thus effectively preventing system crashes, data corruption, or security vulnerabilities caused by incorrect or non-compliant plugin code, and significantly enhancing the security and operational reliability of the orchestration system.
[0016] Optionally, the above method for generating an orchestration program further includes: setting the initial orchestration program as a basic orchestration module; in response to obtaining a second business to be orchestrated, determining the input information of the basic orchestration module based on the difference information of the second business to be orchestrated; and generating a target orchestration program based on the mapping relationship between the input information and the basic orchestration module.
[0017] In the above optional embodiment of the present application, the basic orchestration module is used as a pre-configured framework, which includes a complete set of general orchestration engine capabilities. When new orchestration business requirements are obtained, developers only need to customize around the business difference information, rather than building the entire orchestration system from scratch. Therefore, for each new orchestration business, developers only need to focus on and implement the parts that are different from the basic module, shortening the development cycle and improving the development efficiency.
[0018] According to an embodiment of the present application, there is also provided a system for generating an orchestration program, including: an acquisition module for acquiring a first business to be orchestrated; a configuration module for configuring the common information of the first business to be orchestrated based on an orchestration engine to generate an initial orchestration program; and a generation module for generating a target orchestration program based on the protocol stack to configure the difference information of the first business to be orchestrated on the basis of the initial orchestration program, so as to implement the orchestration of the first business to be orchestrated.
[0019] Optionally, the configuration module is further configured to: configure the common information of the first business to be orchestrated based on the orchestration engine to obtain a first configuration file, where the first configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the common information; verify the first configuration file according to a preset protocol to obtain a verification result; and in response to determining that the first configuration file conforms to the preset protocol according to the verification result, load the orchestration engine to generate an initial orchestration program.
[0020] Optionally, the generation module is further configured to: configure the difference information of the first business to be orchestrated by using the protocol stack to generate a second configuration file, where the second configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the difference information; and map the second configuration file to the architecture of the initial orchestration program to generate a target orchestration program.
[0021] Optionally, the system for generating an orchestration program further includes a verification module, configured to: in response to the start of the orchestration engine, read the operator definition file; verify the operator definition file according to a preset operator definition protocol to obtain a verification result; and in response to determining that the operator definition file conforms to the preset operator definition protocol according to the verification result, render and generate an operator list.
[0022] Optionally, the verification module is further configured to: in response to the start of the orchestration engine, read the data type definition file; verify the data type definition file according to a preset data type definition protocol to obtain a verification result; and in response to determining that the data type definition file conforms to the preset data type protocol according to the verification result, render and generate an attribute editing area.
[0023] Optionally, the verification module is further configured to: upon startup of the orchestration engine, read the plugin definition file; verify the plugin definition file based on a preset plugin definition protocol to obtain a verification result; and upon determining that the plugin definition file complies with the preset plugin protocol according to the verification result, control the logical access of the plugin definition to the orchestration engine.
[0024] Optionally, the generation module is further configured to: set the initial orchestration program as the basic orchestration module; upon obtaining the second business to be orchestrated, determine the input information of the basic orchestration module based on the difference information of the second business to be orchestrated; and generate a target orchestration program based on the mapping relationship between the input information and the basic orchestration module.
[0025] According to another aspect of the embodiments of the present application, there is provided an electronic device, including a processor; a memory for storing processor-executable instructions; wherein, the processor is configured to execute the instructions to implement the method for generating an orchestration program as described above.
[0026] According to another aspect of the embodiments of the present application, there is provided a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the method for generating an orchestration program as described above when being run by a processor. Description of the Drawings
[0027] Figure 1 is a flowchart of a method for generating an orchestration program provided by an embodiment of the present application;
[0028] Figure 2 is a schematic diagram of a method for generating an orchestration program provided by an embodiment of the present application;
[0029] Figure 3 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application;
[0030] Figure 4 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application;
[0031] Figure 5 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application;
[0032] Figure 6 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application;
[0033] Figure 7 is a structural diagram of a system for generating an orchestration program provided by an embodiment of the present application;
[0034] Figure 8 is a structural diagram of the electronic device provided by an embodiment of the present application. Detailed implementation manners
[0035] In order to make the technical problems, technical solutions and beneficial effects solved by the present application more clear and understandable, the present application will be further described in detail below in conjunction with embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0036] A method for generating an orchestration program provided by an embodiment of the present application includes: obtaining a first business to be orchestrated; configuring common information of the first business to be orchestrated based on an orchestration engine to generate an initial orchestration program; and based on a protocol stack, configuring differential information of the first business to be orchestrated on the basis of the initial orchestration program to generate a target orchestration program so as to implement the orchestration of the first business to be orchestrated.
[0037] The method for generating an orchestration program provided by the embodiment of the present application achieves the following technical effects: XXX.
[0038] Embodiment 1
[0039] An embodiment of the present application provides a method for generating an orchestration program. Please refer to Figure 1 , Figure 1 which is a flowchart of a method for generating an orchestration program provided by an embodiment of the present application. The method includes the following steps:
[0040] Step S10: Obtain a first business to be orchestrated;
[0041] In step S10, the above-mentioned first business to be orchestrated is used to represent a business that needs to organize and implement its logic in the form of a data stream, a workflow or a task flow. In the software R & D scenario of intelligent connected vehicles, the first business to be orchestrated includes, but is not limited to, vehicle status monitoring, fault diagnosis, driving behavior analysis, vehicle-cloud interaction protocol processing, data preprocessing and analysis, and orchestration of autonomous driving decision algorithms.
[0042] Specifically, all orchestration services conform to the following definitions: 1) They can be abstracted into a data stream / workflow / task flow, and in the process, a series of operators (functions, services, etc.) are used to process data until the end. 2) Each operator has several input and output parameters for data transfer. 3) The orchestration result needs to generate code or a domain-specific language (DSL) to run in a certain environment to complete the business goal.
[0043] Step S12: Configure common information of the first business to be orchestrated based on an orchestration engine to generate an initial orchestration program;
[0044] In step S12, the common information of the first service to be orchestrated is used to represent the functions and features that are commonly present and reusable in different orchestration services. The common information mainly includes general UI / UE design, basic interaction logic, data flow processing framework, and the definition mechanism of operators and parameters, etc. They constitute the infrastructure of the orchestration program and are essential elements for implementing the orchestration service.
[0045] Specifically, by importing core components such as operators and data types, the orchestration engine automatically generates an initial orchestration program framework that includes UI elements (such as toolbars, operator trees, flowchart areas, and parameter setters) and basic interaction logic (such as operator drag-and-drop, connection, and parameter editing). The engine loads its own implemented common capabilities, including the entire editing area, as well as common functions such as nodes, connections, and dragging. Developers only need to provide the common features of the service, such as the definition of operators and the setting of data types, and the orchestration engine can automatically build a program interface with basic functions.
[0046] Exemplarily, Figure 2 is a schematic diagram of a method for generating an orchestration program provided by an embodiment of the present application. As Figure 2 shown, developers define a set of operators according to the common information in the first service to be orchestrated. Each operator includes its name, type, input and output parameters, and description. At the same time, the data types are set, including the type name, display type, and compilation type, to ensure that all parameters can be correctly processed. Based on the definitions of operators, data types, and plugins, the orchestration engine can automatically build a complete orchestration program interface with basic functions, including toolbars, operator trees, flowcharts, and parameter setters, without developers manually writing UI code or interaction logic. The toolbar is used to place function buttons. The orchestration engine comes with save / undo / redo buttons, and more buttons can be extended through the plugin system; the operator tree is used to place all operators, supports classification and search, and can be dragged to the flowchart area; the flowchart is used to receive the operators dragged from the operator tree, can be moved / connected / deleted, and clicking on it displays the parameter setter corresponding to the operator; the parameter setter is dynamically generated by the parameter protocol of the operator, can input parameters, and can verify the correctness in real time.
[0047] Step S14, based on the initial orchestration program, configure the differential information of the first service to be orchestrated according to the protocol stack to generate a target orchestration program to achieve the orchestration of the first service to be orchestrated.
[0048] In step S14, the differential information of the first service to be orchestrated is used to represent the unique operators, data processing logic, business process details, and functional requirements related to a specific business environment of the first service to be orchestrated.
[0049] Specifically, according to the difference information of the first service to be orchestrated, specific operators (such as data filtering, signal processing, etc.) are defined or selected and described in detail in the protocol stack, including input and output parameters, data types, and operation logics of the operators. The definition of new data types according to the difference information is realized through the custom data type extension point in the plugin system to ensure that all data and parameters can be correctly recognized and processed. Through plugin extension points, such as compiler extension, service call extension, etc., the service-specific logic processing, such as permission control, docking with upstream and downstream systems, etc., is realized.
[0050] Based on the above steps S10 to S14, the first service to be orchestrated is obtained; the common information of the first service to be orchestrated is configured based on the orchestration engine to generate an initial orchestration program; on the basis of the initial orchestration program, the difference information of the first service to be orchestrated is configured based on the protocol stack to generate a target orchestration program so as to realize the orchestration of the first service to be orchestrated. By adopting the method of obtaining the first service to be orchestrated, configuring the common information of the first service to be orchestrated based on the orchestration engine to generate an initial orchestration program, and on the basis of the initial orchestration program, configuring the difference information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, developers can quickly generate the initial framework of the orchestration program, save a large amount of development time and resources by configuring the common information, and complete the orchestration of complex services with only a small amount of customization work by expanding the difference information, thus further improving the development efficiency. Moreover, by dividing the service logic into two parts: common and different, the code of the common capabilities can be reused by multiple different services, reducing the cost of repeated development. At the same time, the adjustment and maintenance of the difference information become simpler, reducing the maintenance cost and complexity.
[0051] Optionally, in step S12, configuring the common information of the first service to be orchestrated based on the orchestration engine to generate an initial orchestration program includes:
[0052] Step S21, configuring the common information of the first service to be orchestrated based on the orchestration engine to obtain a first configuration file, where the first configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the common information;
[0053] Specifically, the orchestration engine includes the following basic extension points:
[0054] 1) The toolbar button component needs to provide a button UI component. For example, extend a publish button, and click to execute the publish action. The UI components will be generated into the toolbar in the order of plugin registration, and the orchestration engine will inject the data source and the callable application programming interface (Application Programming Interface, API) through the component parameters.
[0055] 2) The parameter type extension component needs to provide: a form item component for user input; an input validator for validating whether the user input is legal; and a plugin name, which should correspond to the display type of the parameter.
[0056] 3) The compiler needs to provide: a compilation method with the input parameter being the current data for orchestration and the output parameters including error information and the compiled code, capable of satisfying both syntax verification and code generation simultaneously.
[0057] 4) Connect to the upstream and downstream systems, usually through interface calls, including obtaining operators, obtaining permissions, saving, reading, creating, etc. Among them, the operator can be obtained from the backend or placed together with the configuration and the engine. It is preferred to obtain it from the backend.
[0058] Step S22: Verify the first configuration file according to the preset protocol to obtain the verification result.
[0059] Step S23: In response to determining that the first configuration file conforms to the preset protocol based on the verification result, load the orchestration engine and generate an initial orchestration program.
[0060] Specifically, the orchestration engine is used to implement the following capabilities: 1) A renderer to implement the general UI / UE for orchestration; 2) A protocol stack for connecting to business requirements, including operators / parameters / data types; 3) A plugin system for code generation, connecting to the upstream and downstream systems, and extending the capabilities of the orchestration system. By using the orchestration engine, only the business (operators, data types) needs to be assembled to quickly generate an initial orchestration program.
[0061] Specifically, S1.1 Create a program directory and introduce the engine library.
[0062] The program directory structure is as follows:
[0063]
[0064] Create three directories, namely datatype, operator, and plugin, under the config directory, which are used to save the operator definition file, data type definition file, and plugin definition file for common information respectively. Add the engine library engine.js to the lib directory. index.html is the entry point of the startup program.
[0065] S1.2 Orchestrate the operator definition file in the first configuration file according to the protocol and place it in the config / operator directory.
[0066] Exemplarily, add three operators: DownSample, Filter, and Project. After adding, the directory structure is as follows:
[0067]
[0068] Among them, taking the Filter operator as an example, the content is as follows:
[0069]
[0070] When the program runs, the operator list definition is rendered as Figure 3 shown. Figure 3 It is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application. In Figure 3 , the operator names corresponding to the three operators DownSample, Filter, and Project are displayed in the data processing toolbar. The operator can be dragged into the flowchart area, and in the flowchart area, the movement / connection / deletion of the operator can be implemented to achieve the logical orchestration in the first business to be orchestrated. Moreover, operations such as copying, deleting, and setting the definition file of each operator can be performed in the data processing toolbar.
[0071] S1.3 Write a data type definition file according to the protocol and place it in the config / datatype directory.
[0072] Exemplarily, three data types exp, string, and number are added. After adding, the directory structure is as follows:
[0073]
[0074]
[0075] Taking the exp type as an example, the content is as follows:
[0076]
[0077] Combined with the Filter operator in S1.1 which contains a parameter "filter condition" of type "exp", the actual rendering effect is as Figure 4 shown. Figure 4 It is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application. In Figure 4 , the data type definition file "exp" is configured for the parameter "filter condition" in the Filter operator, and the input box corresponding to the "filter condition" in the Filter operator is an expression input box.
[0078] S1.4 Write a plugin definition file according to the protocol and place it in the config / plugin directory
[0079] Exemplarily, plugins compile and service are added. After adding, the directory structure is as follows:
[0080]
[0081] Taking service as an example, the content is as follows:
[0082]
[0083] The saveFile mapping of the endpoint:'service' is mapped to the save button. As Figure 5 shown, Figure 5 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application, Figure 5 For adding a "save" button on the basis of Figure 3 , when clicking the "save" button in Figure 5 , the method defined by saveFile will be triggered to submit the orchestration data to the server. So far, the initial logic orchestration program is generated and can be started for use next. Subsequently, operators, data types, and plug-in definition files can still be added as needed.
[0084] Based on the above steps S21 to S23, configure the common information of the first service to be orchestrated based on the orchestration engine to obtain a first configuration file; verify the first configuration file according to a preset protocol to obtain a verification result; in response to determining that the first configuration file conforms to the preset protocol according to the verification result, load the orchestration engine to generate an initial orchestration program. By configuring the common information and generating the first configuration file, operators, data types, and plug-ins can be quickly designed and added to the orchestration system. Moreover, before the orchestration engine is loaded and the initial orchestration program is generated, strict verification of the first configuration file according to the preset protocol can ensure that the definitions of all operators, data types, and plug-ins follow the established specifications, which helps to discover and prevent potential errors and insecure code in advance and ensure the stability and security of the system operation.
[0085] Optionally, in step S14, on the basis of the initial orchestration program, configure the differential information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, including:
[0086] Step S41: Configure the differential information of the first service to be orchestrated by using the protocol stack to generate a second configuration file, where the second configuration file includes: an operator definition file, a data type definition file, and a plug-in definition file of the differential information;
[0087] In step S41, the above protocol stack includes operators, parameters, data types, and plug-ins.
[0088] 1) Operator: Each operator can be a function, a service call, or a data conversion, encapsulating the business logic, receiving input parameters, and outputting the result to the output parameters after execution. Process control logics such as loops and conditional judgments can also be implemented through operators.
[0089] Exemplarily, the code for writing the operator is as follows:
[0090]
[0091] 2) Parameters: The parameters have parameter names, and it is necessary to distinguish input parameters and output parameters, and they have data types.
[0092] Exemplarily, the code for writing the parameters is as follows:
[0093]
[0094]
[0095] 3) Data types: The data types have type names, and at the same time have a display type and a compilation type. The display type is used to generate form items of the parameter setter and associate with the input validator. The compilation type is used as the parameter type during code generation.
[0096] Exemplarily, the code for writing the data types is as follows:
[0097]
[0098] Specifically, Figure 6 is a schematic diagram of another method for generating an orchestration program provided by an embodiment of the present application. As Figure 6 shown, in the trigger condition, the trigger condition is determined by filling in the expression of the trigger condition in the input box, and. By clicking "+ Trigger Condition", the addition of the trigger condition expression can be performed.
[0099] 4) Plugins: The plugins have property extension points (endpoints). The extension points declare the timing and method of calling the plugins in the orchestration engine. When the orchestration system runs to the extension points, the plugins will be called in sequence. The plugins can be UI components or service calls. Therefore, different extension points require different parameters. The plugins include two types: UI type, which contains UI components. After the plugin is activated, it will be displayed on the interface and perform certain operations through interaction. For example, the buttons in the toolbar. Service type, which does not provide a UI entry and is directly called by the engine when it executes to the extension point. For example, code generation.
[0100] Step S42, map the second configuration file into the architecture of the initial orchestration program to generate the target orchestration program.
[0101] Specifically, first analyze the specific requirements of the first business to be orchestrated, and identify which operators, data types, and functions are not available in the existing initial orchestration program or need to be specially customized for this business. According to the identified differential information, write the operator definition file, data type definition file, and plugin definition file, namely the second configuration file. These files follow the protocol stack specification of the orchestration engine to ensure that they can be seamlessly integrated into the orchestration system.
[0102] Furthermore, map the operator definitions, data type definitions, and plugin definitions in the second configuration file to the corresponding directories and architectures of the initial orchestration program according to the requirements of the protocol stack to achieve the integration of business features. In the config / operator directory, create an operator definition file for the new operator. Each operator definition file includes the operator name, type, input and output parameters, description, etc., and this information needs to comply with the operator protocol requirements of the protocol stack. In the config / datatype directory, define new data types for specific data formats or processing requirements. The data type definition needs to include the type name, display type, compilation type, and description to ensure that the parameter setter can correctly generate and verify user input. In the config / plugin directory, create a plugin definition file according to the business features. The plugin is registered to a specific extension point of the protocol stack to provide the corresponding UI components, validators, or business processing logics to meet the personalized needs of the business.
[0103] Specifically, after the second configuration file is configured, start the orchestration program. The orchestration engine reads the first configuration file and the second configuration file and verifies whether they comply with the protocol stack specification. If the verification is successful, the orchestration engine integrates this differential information into the orchestration system to generate the target orchestration program, which includes the operators, data types, and plugins for specific businesses. At this time, the orchestration engine will automatically add the new operator to the operator tree, enabling users to search and drag to use it; the new data type will be displayed in the parameter setter to support user input and verification; the new plugin logic will be connected to the corresponding business process, such as adding toolbar buttons or implementing docking with upstream and downstream systems.
[0104] Based on the above steps S41 to S42, configure the differential information of the first business to be orchestrated using the protocol stack to generate the second configuration file; map the second configuration file to the architecture of the initial orchestration program to generate the target orchestration program. Through the protocol stack, it is possible to add or modify operators, data types, and plugins for specific businesses without modifying the core code of the orchestration engine. The high degree of customization and flexibility enables the orchestration system to quickly adapt to various business requirements and improve development efficiency. Moreover, through the protocol stack mechanism, changes or extensions to business logic only need to be made in the second configuration file without affecting the stability of the orchestration engine and the operation of other businesses, making maintenance and upgrade simpler and reducing maintenance costs.
[0105] Optionally, in step S22, verify the first configuration file according to a preset protocol to obtain a verification result, including:
[0106] Step S201, in response to the start of the orchestration engine, read the operator definition file;
[0107] Step S202, verify the operator definition file based on a preset operator definition protocol to obtain a verification result;
[0108] In step S24, in response to determining that the first configuration file conforms to the preset protocol according to the verification result, load the orchestration engine to generate an initial orchestration program, including:
[0109] Step S203, in response to determining that the operator definition file conforms to the preset operator definition protocol according to the verification result, render and generate an operator list.
[0110] Specifically, click on the startup file index.html to start the program engine. The orchestration engine reads and verifies the operator definition file under config / operator. The orchestration engine can automatically verify the operator definition file using the preset operator definition protocol to obtain a verification result. When it is determined according to the verification result that the operator definition file conforms to the preset operator definition protocol, an operator list is rendered and generated, where the operator list is as Figure 3 shown.
[0111] Based on the above steps S201 to S203, in response to the start of the orchestration engine, read the operator definition file; verify the operator definition file based on the preset operator definition protocol to obtain a verification result; in response to determining that the operator definition file conforms to the preset operator definition protocol according to the verification result, render and generate an operator list. Using the preset operator definition protocol as the verification standard can effectively ensure that the operator definition file has undergone strict checks before being connected to the orchestration engine, ensuring the correctness and security of the operator definition file.
[0112] Optionally, in step S22, verify the first configuration file according to a preset protocol to obtain a verification result, including:
[0113] Step S301, in response to the start of the orchestration engine, read the data type definition file;
[0114] Step S302, verify the data type definition file based on a preset data type definition protocol to obtain a verification result;
[0115] In step S24, in response to determining that the first configuration file conforms to the preset protocol according to the verification result, load the orchestration engine to generate an initial orchestration program, including:
[0116] Step S303: In response to determining that the data type definition file complies with the preset data type protocol based on the verification result, render and generate an attribute editing area.
[0117] Specifically, when starting the program engine, the orchestration engine reads and verifies the data type definition file under config / datatype. The orchestration engine can automatically verify the data type definition file using the preset data type definition protocol to obtain a verification result. When it is determined based on the verification result that the data type definition file complies with the preset data type definition protocol, an attribute editing area is rendered and generated, as Figure 4 shown.
[0118] Based on the above steps S301 to S303, in response to the start of the orchestration engine, read the data type definition file; verify the data type definition file based on the preset data type definition protocol to obtain a verification result; in response to determining that the data type definition file complies with the preset data type protocol based on the verification result, render and generate an attribute editing area. Using the preset data type definition protocol as the development standard for the data type definition file provides clear guidance and specifications, enabling the second configuration files to follow the same interfaces and data formats during design. This not only simplifies the development and integration processes of the second configuration files but also ensures the compatibility and interchangeability between the second configuration files, allowing the second configuration files that comply with the protocol to seamlessly access the orchestration engine, enhancing the flexibility and scalability of the orchestration system.
[0119] Optionally, in step S22, verify the first configuration file according to the preset protocol to obtain a verification result, including:
[0120] Step S401: In response to the start of the orchestration engine, read the plugin definition file;
[0121] Step S402: Verify the plugin definition file based on the preset plugin definition protocol to obtain a verification result;
[0122] In step S24, in response to determining that the first configuration file complies with the preset protocol based on the verification result, load the orchestration engine and generate an initial orchestration program, including:
[0123] Step S403: In response to determining that the plugin definition file complies with the preset plugin protocol based on the verification result, control the logical access of the plugin definition to the orchestration engine.
[0124] Specifically, when starting the program engine, the orchestration engine reads and verifies the plugin definition file under config / plugin. The orchestration engine can automatically verify the plugin definition file using the preset plugin definition protocol to obtain a verification result. When it is determined based on the verification result that the plugin definition file complies with the preset plugin definition protocol, the logic of the plugin definition is accessed to the program and the orchestration engine is updated. AsFigure 5 As shown, the logic for saving the choreography data to the server is added to the save button.
[0125] Based on the above steps S401 to S403, in response to the startup of the choreography engine, read the plugin definition file; perform verification on the plugin definition file based on the preset plugin definition protocol to obtain a verification result; in response to determining that the plugin definition file conforms to the preset plugin protocol according to the verification result, control the logic defined by the plugin to access the choreography engine, which can ensure that all plugins conform to the established specifications and standards before being loaded and used, thereby effectively preventing system crashes, data corruption, or security vulnerabilities caused by incorrect or non-compliant plugin code, and then significantly enhancing the security and operational reliability of the choreography system.
[0126] A method for generating a choreography program provided by an embodiment of the present application further includes:
[0127] Step S161, set the initial choreography program as the basic choreography module;
[0128] Step S162, in response to obtaining the second choreography service to be choreographed, determine the input information of the basic choreography module based on the difference information of the second choreography service to be choreographed;
[0129] Step S163, generate a target choreography program based on the mapping relationship between the input information and the basic choreography module.
[0130] Specifically, regard the above initial choreography program as a basic choreography module. This module includes all the common capabilities of the choreography engine, such as renderers, protocol stacks, the basic frameworks and functions of the plugin system, as well as some standard operators and data types. When obtaining the second choreography service to be choreographed, analyze the characteristics and requirements of this service, and identify the parts that do not match the common capabilities included in the basic choreography module or require additional support. For example, new operator definitions, data types, specific business logics, or UI components, etc.
[0131] Furthermore, based on the above analysis, determine the input information to be provided to the basic orchestration module, that is, the difference information of the second business to be orchestrated. The difference information of the second business to be orchestrated is organized into a format that conforms to the protocol stack specification, including operator definitions, data types, and plugin definitions, etc., to facilitate subsequent mapping and integration. Map the difference information of the second business to be orchestrated to the basic orchestration module, that is, match and integrate according to the operator definition, data type, and plugin definition with the corresponding structures in the basic orchestration module. For example, the new operator definition is mapped to the files in the config / operator directory, the custom data type is mapped to the files in the config / datatype directory, and the plugin definition is mapped to the files in the config / plugin directory. When the orchestration engine starts, it reads all the configuration information, including the configuration of the basic orchestration module and the difference information of the second business to be orchestrated. The orchestration engine will automatically identify and integrate these difference information, fuse them with the existing common capabilities, and finally generate a target orchestration program for the second business to be orchestrated.
[0132] Specifically, during the integration process, the orchestration engine ensures that all difference information follows the protocol stack specification, thereby ensuring the consistency and extensibility of the target orchestration program, and further enabling any newly added operator or data type to be correctly displayed on the UI, and any customized plugin logic to be effectively executed, without affecting the basic functions and performance of the orchestration program.
[0133] Based on the above steps S161 to S163, set the initial orchestration program as the basic orchestration module; in response to obtaining the second business to be orchestrated, determine the input information of the basic orchestration module based on the difference information of the second business to be orchestrated; based on the mapping relationship between the input information and the basic orchestration module, generate a target orchestration program. The basic orchestration module is used as a pre-configured framework, which contains a complete set of general orchestration engine capabilities. When new orchestration business requirements are obtained, developers only need to customize around the business difference information, rather than building the entire orchestration system from scratch. Therefore, for each new orchestration business, developers only need to focus on and implement the parts that are different from the basic module, shortening the development cycle and improving the development efficiency.
[0134] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. The computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions for causing a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of the present application.
[0135] Embodiment 2
[0136] The embodiments of the present application further provide a system 70 for generating an orchestration program. Please refer to Figure 7 , Figure 7 FIG. is a structural diagram of a system for generating an orchestration program provided by an embodiment of the present application, including: an acquisition module 710 for acquiring a first service to be orchestrated; a configuration module 720 for configuring common information of the first service to be orchestrated based on an orchestration engine to generate an initial orchestration program; a generation module 730 for generating a target orchestration program based on protocol stacks on the basis of the initial orchestration program to configure differential information of the first service to be orchestrated, so as to implement the orchestration of the first service to be orchestrated.
[0137] The above system for generating an orchestration program provided by the embodiments of the present application achieves the following technical effects: By adopting the method of acquiring a first service to be orchestrated, configuring common information of the first service to be orchestrated based on an orchestration engine to generate an initial orchestration program, and on the basis of the initial orchestration program, configuring differential information of the first service to be orchestrated based on protocol stacks to generate a target orchestration program, developers can quickly generate an initial framework of the orchestration program, save a large amount of development time and resources by configuring common information, and only need a small amount of customization work to complete the orchestration of complex services by expanding differential information, thereby further improving development efficiency. Moreover, by dividing the business logic into two parts: common and differential, the code of common capabilities can be reused by multiple different services, reducing the cost of repeated development. At the same time, the adjustment and maintenance of differential information become simpler, reducing the maintenance cost and complexity.
[0138] It should be noted that the above-mentioned various modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to this: the above-mentioned modules are all located in the same processor; or, the above-mentioned various modules are separately located in different processors in any combination form.
[0139] Embodiment 3
[0140] An embodiment of the present application also provides an electronic device 80. Please refer to Figure 8 , Figure 8 which is a structural diagram of an electronic device provided by an embodiment of the present application. The electronic device 80 includes a processor 810 and a memory 820. Among them, the memory 810 is used to store computer programs; the processor 820 is used to execute the programs stored on the memory 810 to implement the method for generating an orchestration program introduced in any embodiment of the present application.
[0141] Optionally, in this embodiment, the above-mentioned processor may be configured to execute the following steps through a computer program:
[0142] Step S1: Obtain the first service to be orchestrated;
[0143] Step S2: Based on the orchestration engine, configure the common information of the first service to be orchestrated to generate an initial orchestration program;
[0144] Step S3: Based on the protocol stack, configure the differential information of the first service to be orchestrated on the basis of the initial orchestration program to generate a target orchestration program to achieve the orchestration of the first service to be orchestrated.
[0145] The above-mentioned electronic device provided by the embodiment of the present application achieves the following technical effects: By adopting the method of obtaining the first service to be orchestrated, configuring the common information of the first service to be orchestrated based on the orchestration engine to generate an initial orchestration program, and on the basis of the initial orchestration program, configuring the differential information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, developers can quickly generate the initial framework of the orchestration program, save a large amount of development time and resources by configuring the common information, and only need a small amount of customization work to complete the orchestration of complex services by expanding the differential information, thereby further improving the development efficiency. Moreover, by dividing the business logic into two parts: common and differential, the code of the common capabilities can be reused by multiple different services, reducing the cost of repeated development. At the same time, the adjustment and maintenance of the differential information become simpler, reducing the maintenance cost and complexity.
[0146] Those of ordinary skill in the art can understand that Figure 8 the structure shown is only schematic, and the electronic device can also be a terminal device such as a smart phone (such as an Android phone, an iOS phone, etc.), a tablet computer, a handheld computer, and a Mobile Internet Device (MID for short). Figure 8 It does not limit the structure of the above-mentioned electronic device. For example, the electronic device 80 may further include more or fewer components (such as a network interface, a display device, etc.) than those shown in Figure 8 , or have a different configuration from that shown in Figure 8 .
[0147] Embodiment 4
[0148] The embodiment of the present application also provides a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, it implements the method for generating an orchestration program introduced in any embodiment of the present application.
[0149] Optionally, in this embodiment, the above storage medium may be set to store a computer program for executing the following steps:
[0150] Step S1: Obtain the first service to be orchestrated;
[0151] Step S2: Based on the orchestration engine, configure the common information of the first service to be orchestrated to generate an initial orchestration program;
[0152] Step S3: On the basis of the initial orchestration program, configure the differential information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, so as to realize the orchestration of the first service to be orchestrated.
[0153] Optionally, in this embodiment, the above storage medium may include but is not limited to: various media that can store computer programs such as USB flash drives, read-only memories (ROM for short), random access memories (RAM for short), mobile hard disks, magnetic disks or optical discs.
[0154] The above storage medium provided by the embodiment of the present application realizes the following technical effects: By adopting the method of obtaining the first service to be orchestrated, configuring the common information of the first service to be orchestrated based on the orchestration engine to generate an initial orchestration program, and on the basis of the initial orchestration program, configuring the differential information of the first service to be orchestrated based on the protocol stack to generate a target orchestration program, developers can quickly generate the initial framework of the orchestration program, save a large amount of development time and resources by configuring the common information, and only need a small amount of customization work to complete the orchestration of complex services by expanding the differential information, thereby further improving the development efficiency. Moreover, by dividing the business logic into two parts: common and differential, the code of the common capabilities can be reused by multiple different services, reducing the cost of repeated development. At the same time, the adjustment and maintenance of the differential information become simpler, reducing the maintenance cost and complexity.
[0155] In the present application, "a plurality of" means two or more.
[0156] In this application, unless otherwise clearly defined, the terms "install", "connect", and "couple" shall be understood in a broad sense. For example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, and it can be the communication inside two components. For those of ordinary skill in the art, the specific meanings of the above terms in this application can be understood according to specific circumstances.
[0157] The terms "first", "second", "third", "fourth", etc. (if any) in this application are used to distinguish similar objects and do not necessarily describe a specific order or sequence.
[0158] The term "and / or" in this application is merely a description of the association relationship between associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " in this application generally represents an "or" relationship between the associated objects before and after.
[0159] If there is no special indication, all steps of this application can be carried out in sequence or randomly. For example, the method includes steps A and B, indicating that the method can include steps A and B carried out in sequence, or steps B and A carried out in sequence. For example, it is mentioned that the method may further include step C, indicating that step C can be added to the method in any order. For example, the method can include steps A, B, and C, or steps A, C, and B, or steps C, A, and B, etc.
[0160] The above are only the preferred embodiments of this application and are not intended to limit this application. Any modifications, equivalent replacements, and improvements made within the spirit and principles of this application shall be included in the protection scope of this application.
Claims
1. A method for generating an orchestration program, characterized in that, Including: Obtain the first business to be orchestrated; Based on the orchestration engine, configure the common information of the first business to be orchestrated, and generate an initial orchestration program; On the basis of the initial orchestration program, configure the differential information of the first business to be orchestrated based on the protocol stack, and generate a target orchestration program to achieve the orchestration of the first business to be orchestrated.
2. The method according to claim 1, wherein Based on the orchestration engine, configuring the common information of the first business to be orchestrated and generating an initial orchestration program includes: Based on the orchestration engine, configure the common information of the first business to be orchestrated to obtain a first configuration file, where the first configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the common information; Verify the first configuration file according to a preset protocol to obtain a verification result; In response to determining that the first configuration file complies with the preset protocol according to the verification result, load the orchestration engine and generate the initial orchestration program.
3. The method according to claim 1, wherein On the basis of the initial orchestration program, configuring the differential information of the first business to be orchestrated based on the protocol stack and generating a target orchestration program includes: Use the protocol stack to configure the differential information of the first business to be orchestrated to generate a second configuration file, where the second configuration file includes: an operator definition file, a data type definition file, and a plugin definition file of the differential information; Map the second configuration file to the architecture of the initial orchestration program to generate the target orchestration program.
4. The method according to claim 2, wherein Verifying the first configuration file according to a preset protocol to obtain a verification result includes: In response to the start of the orchestration engine, read the operator definition file; Verify the operator definition file according to a preset operator definition protocol to obtain the verification result; In response to determining that the first configuration file complies with the preset protocol according to the verification result, loading the orchestration engine and generating the initial orchestration program includes: In response to determining that the operator definition file complies with the preset operator definition protocol according to the verification result, render and generate an operator list.
5. The method according to claim 2, wherein Verifying the first configuration file according to a preset protocol to obtain a verification result includes: In response to the start of the orchestration engine, read the data type definition file; Verify the data type definition file according to a preset data type definition protocol to obtain the verification result; In response to determining that the first configuration file complies with the preset protocol according to the verification result, loading the orchestration engine and generating the initial orchestration program includes: In response to determining that the data type definition file complies with the preset data type protocol according to the verification result, render and generate an attribute editing area.
6. The method according to claim 2, wherein The method further includes: Verifying the first configuration file according to a preset protocol to obtain a verification result includes: In response to the start of the orchestration engine, read the plugin definition file; Verify the plugin definition file according to a preset plugin definition protocol to obtain the verification result; In response to determining that the first configuration file conforms to the preset protocol based on the verification result, loading the orchestration engine and generating the initial orchestration program, including: In response to determining that the plug-in definition file conforms to the preset plug-in protocol based on the verification result, controlling the logical access of the plug-in definition to the orchestration engine.
7. The method according to claim 1, characterized in that, The method further includes: Setting the initial orchestration program as the basic orchestration module; In response to obtaining a second business to be orchestrated, determining the input information of the basic orchestration module based on the difference information of the second business to be orchestrated; Generating the target orchestration program based on the mapping relationship between the input information and the basic orchestration module.
8. A system for generating an orchestration program, characterized in that, Including: An acquisition module for acquiring a first business to be orchestrated; A configuration module for generating an initial orchestration program based on the common information of the first business to be orchestrated by the orchestration engine; A generation module for generating a target orchestration program based on the difference information of the first business to be orchestrated by the protocol stack on the basis of the initial orchestration program, so as to realize the orchestration of the first business to be orchestrated.
9. An electronic device, characterized in that, Including: A processor; A memory for storing executable instructions of the processor; Wherein, the processor is configured to execute the instructions to implement the method for generating an orchestration program according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program is set to execute the method for generating an orchestration program according to any one of claims 1-7 when running.