Process configuration management method and device, computer equipment and storage medium
By obtaining and configuring the process code of the process node in the workflow engine and generating a visual flow chart, the problem of difficult configuration of complex processes is solved, and the simplification and accuracy of process configuration is achieved.
Patent Information
- Application Number
- CN202411612943.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2025-03-04
AI Technical Summary
The process configuration scenarios are becoming more and more diverse, and the link configuration logic is becoming more and more complex, making process configuration extremely difficult.
Provide a process configuration management method, through the workflow engine, obtain the configuration statement of the process to be configured, configure the process code of the process node based on the statement, generate a visual flow chart, and manage the configuration process based on the visual flow chart.
It simplifies the configuration operation of process code, reduces the difficulty of process configuration, improves the accuracy of process configuration, and intuitively displays the process processing process through visual flow charts.
Smart Images

Figure CN119556904A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, and in particular to a process configuration management method, apparatus, computer equipment, and storage medium. Background Art
[0002] In the process detection system, different detection objects may require different detection processes, or the same detection object may require different detection processes in different time periods or regions. Then, the complexity of these business logics is also reflected in the process link arrangement, resulting in complex parallel and branching of the process links, and strong asynchronous demands between many process nodes. Taking the advertising detection system as an example, there are often a large number of process nodes, and there are complex process links between these process nodes.
[0003] In relevant process configuration schemes, process nodes are often connected in series through hard coding. However, as process configuration scenarios become more and more diverse, the configuration logic of the links becomes more and more complex, making process configuration extremely difficult. Summary of the invention
[0004] In view of this, the present disclosure provides a process configuration management method, apparatus, computer equipment and storage medium to solve the problem that the configuration logic of the link is becoming increasingly complex, resulting in great difficulty in process configuration.
[0005] In a first aspect, the present disclosure provides a process configuration management method, which is applied to a workflow engine, and the method comprises:
[0006] In response to the process configuration instruction, a process link is displayed on the configuration interface, wherein the process link is used to indicate the calling relationship between process nodes in the process to be configured;
[0007] In response to the configuration instruction for the process node, fill in the first configuration statement of the process node, obtain the configuration process, and generate a visual flowchart of the configuration process;
[0008] Display a visual flowchart based on the configuration interface, and manage the configuration process based on the visual flowchart.
[0009] In the disclosed embodiment, the configuration statement of the process to be configured can be obtained first, wherein the configuration statement is used to indicate the calling relationship between the process nodes in the process to be configured. Then, the process code of the process node can be configured based on the configuration statement to obtain the configuration process and generate a visual flowchart of the configuration process. Next, the configuration process can be managed based on the visual flowchart, thereby simplifying the configuration operation of the process code and reducing the difficulty of process configuration. The processing process of the process is displayed through the visual flowchart, so that the user can intuitively observe the unreasonable parts of the configuration process, thereby improving the accuracy of the process configuration on the basis of reducing the difficulty of configuration.
[0010] In a second aspect, the present disclosure provides a process configuration management device, the device comprising:
[0011] A display module, used to display the process link on the configuration interface in response to the process configuration instruction, wherein the process link is used to indicate the calling relationship between the process nodes in the process to be configured;
[0012] A generating module, for filling in a first configuration statement of a process node in response to a configuration instruction for the process node, obtaining a configuration process, and generating a visual flow chart of the configuration process;
[0013] The management module is used to display a visual flowchart based on the configuration interface and manage the configuration process based on the visual flowchart.
[0014] In a third aspect, the present disclosure provides a computer device, comprising: a memory and a processor, the memory and the processor are communicatively connected to each other, computer instructions are stored in the memory, and the processor executes the process configuration management method of the above-mentioned first aspect or any corresponding embodiment thereof by executing the computer instructions.
[0015] In a fourth aspect, the present disclosure provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the process configuration management method of the first aspect or any corresponding embodiment thereof.
[0016] In a fifth aspect, the present invention provides a computer program product, comprising computer instructions for causing a computer to execute the process configuration management method of the first aspect or any corresponding embodiment thereof.
[0017] In the disclosed embodiment, the configuration statement of the process to be configured can be obtained first, wherein the configuration statement is used to indicate the calling relationship between the process nodes in the process to be configured. Then, the process code of the process node can be configured based on the configuration statement to obtain the configuration process and generate a visual flowchart of the configuration process. Next, the configuration process can be managed based on the visual flowchart, thereby simplifying the configuration operation of the process code and reducing the difficulty of process configuration. The processing process of the process is displayed through the visual flowchart, so that the user can intuitively observe the unreasonable parts of the configuration process, thereby improving the accuracy of the process configuration on the basis of reducing the difficulty of configuration. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the specific embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the specific embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0019] Figure 1 is a flowchart of a process configuration management method according to an embodiment of the present disclosure;
[0020] Figure 2 is a schematic diagram of a cooking process according to an embodiment of the present disclosure;
[0021] Figure 3 is a schematic diagram of a task execution process of a workflow engine according to an embodiment of the present disclosure;
[0022] Figure 4 is a flowchart of another process configuration management method according to an embodiment of the present disclosure;
[0023] Figure 5 is a schematic diagram of a process link of a cooking process according to an embodiment of the present disclosure;
[0024] Figure 6 is a schematic diagram of the traffic light status flow according to an embodiment of the present disclosure;
[0025] Figure 7 is a schematic diagram of executing a callback instruction according to an embodiment of the present disclosure;
[0026] Figure 8 is a structural block diagram of a process configuration management device according to an embodiment of the present disclosure;
[0027] Fig. 9 It is a schematic diagram of the hardware structure of the computer device of the embodiment of the present disclosure. DETAILED DESCRIPTION
[0028] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.
[0029] In conjunction with the application scenarios on which the execution of the process configuration management method depends, the application scenarios are described here.
[0030] In the process detection system, different detection objects may require different detection processes, or the same detection object may require different detection processes in different time periods or regions. Then, the complexity of these business logics is also reflected in the process link arrangement, resulting in complex parallel and branching of the process links, and strong asynchronous demands between many process nodes. Taking the advertising detection system as an example, there are often a large number of process nodes, and there are complex process links between these process nodes.
[0031] In relevant process configuration schemes, process nodes are often connected in series through hard coding. However, as process configuration scenarios become more and more diverse, the configuration logic of the links becomes more and more complex, making process configuration extremely difficult.
[0032] In the relevant process configuration scheme, the process configuration can be performed through the workflow engine. For example, the workflow engine can be ByteFlow. Here, compared with the manual hard-coded call logic, the workflow engine gives the task of controlling the scheduling to the engine itself. Through the visualization and programmable functions provided by the workflow engine, users can focus more on the internal implementation of each node, while the overall logical connection is the responsibility of the engine.
[0033] Specifically, you can write a rule file in the workflow engine. For example, create an ASL file under the specified rule path and define the rules of the process in it. The ASL file can contain text in json format. Then, you can inject FlowExecutor and call its execute method to execute the defined process where the process needs to be executed. However, in ByteFlow, users are often required to manually write the rule code of the process. Considering that the configuration logic of the link is becoming more and more complex, the process configuration is extremely difficult.
[0034] Based on this, the embodiment of the present disclosure provides a process configuration management method, which is applied to a workflow engine. The method includes: first, obtaining a configuration statement of the process to be configured, wherein the configuration statement is used to indicate the calling relationship between process nodes in the process to be configured. Then, the process code of the process node can be configured based on the configuration statement to obtain the configuration process, and a visual flowchart of the configuration process can be generated. Next, the configuration process can be managed based on the visual flowchart, thereby simplifying the configuration operation of the process code, reducing the difficulty of process configuration, and displaying the processing process of the process through a visual flowchart, so that the user can intuitively observe the unreasonable parts of the configuration process, thereby improving the accuracy of the process configuration on the basis of reducing the difficulty of configuration.
[0035] According to an embodiment of the present disclosure, a process configuration management method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0036] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0037] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0038] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0039] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0040] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and relevant provisions.
[0041] According to an embodiment of the present disclosure, a process configuration management method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0042] In this embodiment, a process configuration management method is provided, which can be used in the above-mentioned workflow engine. Figure 1 is a flowchart of a process configuration management method according to an embodiment of the present disclosure, such as Figure 1 As shown, the process includes the following steps:
[0043] Step S101, in response to a process configuration instruction, displaying a process link on a configuration interface, wherein the process link is used to indicate a calling relationship between process nodes in a process to be configured.
[0044] In the disclosed embodiment, the workflow engine may be OeFlow, which is independently forked from the ByteFlow code base and independently developed as an SDK (Software Development Kit). Here, OeFlow is a process orchestration SDK based on ASL (Amazon States Language), which supports multiple functions such as asynchronous callbacks, visual operations, and programmable functions, and is compatible with multiple process modes, such as Finite State Machine (hereinafter referred to as FSM) and Directed Acyclic Graph (hereinafter referred to as DAG).
[0045] A configuration interface can be displayed in the above workflow engine so that the user can configure the process to be configured on the configuration page. Specifically, the pre-edited configuration statement of the process to be configured can be called in the workflow engine, and a process link can be generated based on the process nodes and call relationships described in the configuration statement.
[0046] Step S102, in response to the configuration instruction for the process node, fill in the first configuration statement of the process node, obtain the configuration process, and generate a visual flowchart of the configuration process.
[0047] In the disclosed embodiment, the user can edit the process nodes in the generated process link in the configuration interface, thereby breaking down the complex process link into individual process nodes, greatly simplifying the code writing workload brought by the complex process link. Specifically, the corresponding configuration language in each process node can be written based on the above-mentioned ASL language.
[0048] For example, if Figure 2 The diagram shows a cooking process. The process nodes in the process link corresponding to the cooking process may include: preliminary preparation process, food preparation process and production process. The preliminary preparation process may include sub-nodes washing dishes and buying vegetables, the food preparation process may include sub-nodes boiling water, preparing sauces, washing vegetables and cutting vegetables, and the production process may include sub-nodes making soup and cooking vegetables. When writing ASL, the calling relationship of the sub-nodes in each node may be defined to obtain the first configuration statement.
[0049] Step S103: displaying a visual flowchart based on the configuration interface, and managing the configuration process based on the visual flowchart.
[0050] In the embodiment of the present disclosure, considering that in the above-mentioned workflow engine, users often do not need to consider the specific execution process of the task when designing and configuring the process, but only need to focus on the logical arrangement within each process node. Here, Figure 3 The figure shows the task execution process of the workflow engine, in which the user only needs to define the workflow (the workflow is Figure 3 The workflow engine automatically executes tasks according to the configured process. A workflow refers to a series of ordered steps or tasks designed to achieve a business goal in an organization. For example, a workflow can include various types of tasks, such as document approval, project planning, customer service, etc.
[0051] Therefore, the configuration process can be visualized so that the user can grasp the overall execution context of the configuration process. Specifically, when executing a workflow through the above configuration process, the execution process of each task in the workflow can be displayed based on the configuration interface, so as to facilitate intuitive display to the user when a blockage or failure occurs in the execution.
[0052] In addition, users can adjust the configuration process based on the visual flowchart, for example, add process nodes, adjust the order of process execution, etc. The workflow engine will automatically generate corresponding configuration statements based on the user's adjustment results, without relying entirely on users to manually write code.
[0053] It can be seen from the above description that in the embodiment of the present disclosure, the configuration statement of the process to be configured can be obtained first, wherein the configuration statement is used to indicate the calling relationship between the process nodes in the process to be configured. Then, the process code of the process node can be configured based on the configuration statement to obtain the configuration process and generate a visual flowchart of the configuration process. Next, the configuration process can be managed based on the visual flowchart, thereby simplifying the configuration operation of the process code and reducing the difficulty of process configuration. The processing process of the process is displayed through a visual flowchart, so that the user can intuitively observe the unreasonable parts of the configuration process, thereby improving the accuracy of the process configuration on the basis of reducing the difficulty of configuration.
[0054] In this embodiment, another process configuration management method is provided, which can be used for the above-mentioned workflow engine. Figure 4 is a flowchart of another process configuration management method according to an embodiment of the present disclosure, such as Figure 4 As shown, the process includes the following steps:
[0055] Step S401, in response to a process configuration instruction, displaying a process link on a configuration interface, wherein the process link is used to indicate a calling relationship between process nodes in a process to be configured.
[0056] Specifically, the above step S401 includes:
[0057] Step S4011, retrieve the second configuration statement corresponding to the process to be configured.
[0058] Step S4012: Based on the second configuration statement, a process link corresponding to the process to be configured is generated in the configuration interface.
[0059] In the embodiment of the present disclosure, the second configuration statement may be a configuration statement written based on the above-mentioned ASL language, and the second configuration statement may be used to describe the calling sequence between various process nodes.
[0060] Here is Figure 2 Taking the cooking process shown in the figure as an example, it can be seen from the above that the process nodes included in the cooking process may include: preliminary preparation process, food preparation process and production process. Therefore, the calling order between the process nodes can be defined based on the above ASL language as: preliminary preparation process, food preparation process, production process, and generate the following Figure 5 Process links for the cooking process shown.
[0061] Specifically, based on the second configuration statement, a process link corresponding to the process to be configured is generated on the configuration interface, including:
[0062] Step a1, call the command line tool corresponding to the workflow engine.
[0063] Step a2: Based on the command line tool, load the second configuration statement in the configuration interface according to the file location and variable name corresponding to the second configuration statement to obtain a process link.
[0064] In an embodiment of the present disclosure, the command line tool can be used to schedule the second configuration statement based on the file location of the second configuration statement, and load it based on the variable name in the second configuration statement to obtain a process link.
[0065] Specifically, in the above-mentioned OeFlow, you can first install the command line tool, which can be expressed as: oe_flowinit{{ASL file location}}{{ASL variable name}}, where the ASL file location is the file location corresponding to the above-mentioned second configuration statement, and the ASL variable name is the variable name in the second configuration statement.
[0066] Step S402, in response to the configuration instruction for the process node, fill in the first configuration statement of the process node, obtain the configuration process, and generate a visual flowchart of the configuration process. Figure 1 Step S102 of the illustrated embodiment will not be described in detail here.
[0067] Step S403: Display the visual flowchart based on the configuration interface, and manage the configuration process based on the visual flowchart. Figure 1 Step S103 of the illustrated embodiment will not be described in detail here.
[0068] In the disclosed embodiment, a process link of the process to be configured can be generated on the configuration interface so that the user can fill in the process link, thereby breaking down the complex process link into individual process nodes, greatly simplifying the code writing workload brought by the complex process link.
[0069] In some optional implementations, the above step S101 further includes:
[0070] Step S11, after detecting the process configuration instruction, obtaining a preset flowchart type, wherein the preset flowchart type includes: a first flowchart type for emphasizing the dependency relationship between process nodes and a second flowchart type for emphasizing the state flow between process nodes.
[0071] Step S12: Based on at least one preset flowchart type, a process link is generated and displayed in a configuration interface.
[0072] In the embodiment of the present disclosure, the first flowchart type is the above-mentioned DAG, and the second flowchart type is the above-mentioned FSM. Specifically, Figure 2 The cooking flow chart shown is the first flow chart type. Figure 6 The traffic light status flow diagram shown is the second flow chart type.
[0073] When generating a process link, firstly, the preset flowchart type matching the process to be configured can be determined, and the corresponding process link can be generated based on the preset flowchart type. Alternatively, in response to a flowchart type designation command of a user, the target preset flowchart type indicated by the instruction command can be determined, so as to generate the corresponding process link based on the target preset flowchart type.
[0074] In the embodiment of the present disclosure, when configuring a process link, multiple flowchart types such as DAG and FSM can be supported to configure the process to be configured, which increases the scope of application of the present disclosure, provides users with more configuration options, and improves the user's process configuration experience.
[0075] In some optional implementations, the above step S102, in response to the configuration instruction for the process node, fills in the first configuration statement of the process node to obtain the configuration process, including:
[0076] Step S1021: Generate configuration instructions based on the trigger operation on the process node.
[0077] Step S1022, determine the target statement that matches the process node in the configuration statement of the configured process node, and fill the first configuration statement of the process node according to the target statement to obtain the configuration process, wherein the configured process node is the process node corresponding to the configured process in the workflow engine.
[0078] In an embodiment of the present disclosure, a user may select a target process node to be supplemented based on a process link. Specifically, the user may trigger the target process node, thereby adjusting the target process node to an editing state and entering the editing process of the target process node.
[0079] When editing the target process node, the corresponding first configuration statement can be written based on the above-mentioned ASL language, or the configuration statement supplemented in the configured process can be called, and the target configuration statement can be selected in the configuration statement to fill in the target process node.
[0080] In the embodiments of the present disclosure, considering that there may be intersecting process nodes in different configuration processes, the target process node that is to be filled in the process link can be filled. Specifically, the configuration statement can be called in the configured process to determine the target statement for filling the target process node in the configuration statement, thereby further reducing the workload of process configuration.
[0081] In some optional implementations, the above step S103, managing the configuration process based on a visual flowchart, includes:
[0082] After detecting an adjustment operation on a process node in a visual flowchart, the configuration statement of the configuration process is updated based on the calling relationship displayed in the adjusted visual flowchart, wherein the adjustment operation includes at least one of the following: a node deletion operation, a node movement operation, a node exchange operation, and a node addition operation.
[0083] In the disclosed embodiment, after displaying the visual flowchart in the configuration interface, the user can adjust the process nodes in the process link through adjustment operations. Specifically, the process node can be deleted through the node deletion operation, the execution position of the process node can be adjusted through the node movement operation, the call relationship between the process nodes can be adjusted through the node exchange operation, and a new process node can be added through the node addition operation.
[0084] After detecting the user's adjustment operation, the update data corresponding to the process link may be read, and the first configuration statement and / or the second configuration statement may be updated based on the update data to update the configuration process.
[0085] In the embodiments of the present disclosure, the configuration process can be adjusted by adjusting the visual flowchart, thereby reducing the workload of users in managing the configuration process, reducing the need for users to modify the underlying code of the process configuration, and lowering the operational threshold for process configuration management.
[0086] In some optional implementations, the above step S103, managing the configuration process based on a visual flowchart, includes:
[0087] Step b1, marking the node status of the process node in the visual flow chart.
[0088] Step b2, in response to a trigger operation on a process node, displaying attribute information and fault data of the process node.
[0089] In an embodiment of the present disclosure, the node status may include normal execution, suspended execution, execution failure, etc. When marking the node status of the process nodes in the visual flowchart, a different identification color can be set for each node status, and each process node in the visual flowchart can be rendered according to the identification color.
[0090] For example, the identification color of the normal execution state can be set to green, the identification color of the suspended execution state can be set to gray, and the identification color of the execution failure state can be set to red.
[0091] After detecting the user's trigger operation on the process node, the attribute information of the process node can be obtained, for example, the attribute information can include node id, node name, node status, node type, task execution period, etc. Here, if the process node is in an execution failure state, the failure data can be retrieved and displayed, wherein the failure data can include the failure type and the failure cause, etc.
[0092] In the embodiments of the present disclosure, the status of each node in the configuration process when executing the workflow can be displayed through a visual flowchart, so that the user can intuitively understand the execution process of the process, and when an execution failure occurs, the fault data can be directly displayed to the user to improve the efficiency of fault handling.
[0093] In some optional embodiments, the above Figure 1 The corresponding implementations also include:
[0094] Step c1, during the execution of the configuration process, after detecting a callback instruction, determining the callback node indicated by the callback instruction, wherein the callback node is a process node that has been executed in the configuration process.
[0095] Step c2, verifying the callback configuration of the callback node, and executing the callback instruction when the verification result meets the callback condition.
[0096] In the embodiments of the present disclosure, it is considered that unexpected triggering situations may exist in some complex process orchestration scenarios. For example, a process node that has been executed needs to be executed again. At this time, the state of the callback node indicated by the callback instruction needs to be re-entered.
[0097] Specifically, it is possible to check whether the callback configuration of the callback node is enabled. If enabled, it is determined that the verification result meets the callback condition and the callback instruction is executed. It should be understood that the default configuration of the process node is to enable the callback configuration, and the user can choose whether to disable the callback configuration according to the business scenario.
[0098] like Figure 7 The diagram shows a schematic diagram of executing a callback instruction, where the configuration process includes process nodes 1-4. If process nodes 1 and 3 are both asynchronous callback nodes, the task execution process is already at process node 3. After detecting an asynchronous callback instruction for process node 1, no callback is performed by default, and the callback status of process node 1 is checked, so that the state of process node 1 is re-entered when the process node 1 supports state callback, and the task is re-executed from process node 1.
[0099] In the embodiments of the present disclosure, considering that there may be unexpected triggering situations in some complex process orchestration scenarios, for example, it is necessary to execute a process node that has already been executed again, therefore, a callback configuration can be set in the process node to support more complex process orchestration scenarios.
[0100] In some optional embodiments, the above Figure 1 The corresponding implementations also include:
[0101] Step d1, obtain the number of queries per second corresponding to the configuration process, and determine whether the number of queries per second is greater than a preset threshold; if so, execute step d2, if not, execute step d3.
[0102] Step d2, determining the storage location of the configuration process as a shard table in the local database.
[0103] Step d3, determining the storage location of the configuration process as a single table in the local database.
[0104] In the disclosed embodiment, the above-mentioned oeflow can support local storage of the execution data of the configuration process, so as to support the asynchronous execution model, that is, support the user to store the execution data in the local database, and trigger the continued execution at a subsequent time point, so as to solve the performance requirements of complex asynchronous scenarios. Among them, the local database can include: bytendb, bytendb sharding library and bytedoc sharding library, etc.
[0105] It should be understood that, considering that the amount of execution data corresponding to the online process of oeflow is usually large, the daily trigger volume can reach 50 million levels. Therefore, the execution data can be compressed through the storage model to achieve storage support for hundreds of millions of levels of storage.
[0106] Specifically, when setting a storage location for a configuration process, the corresponding storage location may be set for the configuration process based on the number of queries per second (QPS) corresponding to the configuration process and according to a comparison result between the QPS and a preset threshold.
[0107] For example, the preset threshold can be 10000. If the QPS of the configuration process is less than 10000, it means that the amount of execution data generated by the configuration process is relatively small. In this case, a single table in the database with a small amount of data or a slow growth rate can be selected as the storage location. In addition, if the QPS of the configuration process is greater than 10000, it means that the amount of execution data generated by the configuration process is relatively large. In this case, a shard table in the database suitable for large data volumes and high concurrency application scenarios can be selected as the storage location.
[0108] Here, a single table refers to a complete data table, so that all data is stored in a single database structure. Sharded tables refer to storing data in a horizontally split manner by distributing the data of a large table into multiple independent tables, which helps to handle large-scale data sets and high concurrent requests.
[0109] The present disclosure may also support local triggering of a process, specifically including the following process:
[0110] The execution data generated by the configuration process is stored in a storage location of a local database, and when the configuration process is interrupted, the execution data is called and the configuration process is executed in response to a start instruction.
[0111] In the disclosed embodiment, oeflow can extend the brn (Bytedance Resource Name) protocol to support local calls to the database, where brn is a protocol used for distributed system communications. Extending this protocol means adding new functions or features based on the original functions.
[0112] Specifically, the native brn protocol only supports remote procedure calls and triggering tasks through http or message queues. The extended protocol now supports local calls, that is, directly calling functions or methods in the same process to obtain execution data without the need for network communication.
[0113] In the disclosed embodiment, oeflow can extend the brn protocol to support local calls to the database, solving the problem that the display of tasks must be triggered through rpc (remote procedure call), http, and mq (message queue) in the hosted mode, greatly improving the performance of oeflow.
[0114] In summary, in the disclosed embodiment, the configuration statement of the process to be configured can be obtained first, wherein the configuration statement is used to indicate the calling relationship between the process nodes in the process to be configured. Then, the process code of the process node can be configured based on the configuration statement to obtain the configuration process and generate a visual flowchart of the configuration process. Next, the configuration process can be managed based on the visual flowchart, thereby simplifying the configuration operation of the process code and reducing the difficulty of process configuration. The processing process of the process is displayed through a visual flowchart, so that the user can intuitively observe the unreasonable parts of the configuration process, thereby improving the accuracy of the process configuration on the basis of reducing the difficulty of configuration.
[0115] In this embodiment, a process configuration management device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.
[0116] This embodiment provides a process configuration management device, such as Figure 8 As shown, including:
[0117] A display module 801 is used to display a process link on a configuration interface in response to a process configuration instruction, wherein the process link is used to indicate a calling relationship between process nodes in a process to be configured;
[0118] A generating module 802, for filling in a first configuration statement of a process node in response to a configuration instruction for the process node, obtaining a configuration process, and generating a visual flowchart of the configuration process;
[0119] The management module 803 is used to display a visual flowchart based on the configuration interface and manage the configuration process based on the visual flowchart.
[0120] In some optional implementations, the display module 801 is further used to:
[0121] After detecting the process configuration instruction, calling the second configuration statement corresponding to the process to be configured;
[0122] Based on the second configuration statement, a process link corresponding to the process to be configured is generated on the configuration interface.
[0123] In some optional implementations, the display module 801 is further used to:
[0124] Call the command line tool corresponding to the workflow engine;
[0125] Based on the command line tool, the second configuration statement is loaded in the configuration interface according to the file location and variable name corresponding to the second configuration statement to obtain the process link.
[0126] In some optional implementations, the display module 801 is further used to:
[0127] After detecting the process configuration instruction, obtaining a preset flowchart type, wherein the preset flowchart type includes: a first flowchart type for emphasizing the dependency relationship between process nodes and a second flowchart type for emphasizing the state flow between process nodes;
[0128] Based on at least one preset flowchart type, a flow link is generated and displayed in a configuration interface.
[0129] In some optional implementations, the generating module 802 is further configured to:
[0130] Generate configuration instructions based on trigger operations for process nodes;
[0131] A target statement matching the process node is determined in the configuration statement of the configured process node, and the first configuration statement of the process node is filled according to the target statement to obtain a configuration process, wherein the configured process node is a process node corresponding to the configured process in the workflow engine.
[0132] In some optional implementations, the management module 803 is further configured to:
[0133] After detecting an adjustment operation on a process node in a visual flowchart, the configuration statement of the configuration process is updated based on the calling relationship displayed in the adjusted visual flowchart, wherein the adjustment operation includes at least one of the following: a node deletion operation, a node movement operation, a node exchange operation, and a node addition operation.
[0134] In some optional implementations, the management module 803 is further configured to:
[0135] Mark the node status of the process nodes in the visual flowchart;
[0136] In response to a trigger operation on a process node, attribute information and fault data of the process node are displayed.
[0137] In some optional embodiments, the device is also used for:
[0138] During the execution of the configuration process, after detecting the callback instruction, determining the callback node indicated by the callback instruction, wherein the callback node is a process node that has been executed in the configuration process;
[0139] Verify the callback configuration of the callback node, and execute the callback instruction when the verification result meets the callback condition.
[0140] In some optional embodiments, the device is also used for:
[0141] Obtain the number of queries per second corresponding to the configuration process, and determine whether the number of queries per second is greater than a preset threshold;
[0142] If yes, the storage location of the configuration process is determined to be a shard table in the local database;
[0143] If not, the storage location of the configuration process is determined to be a single table in the local database.
[0144] In some optional embodiments, the device is also used for:
[0145] The execution data generated by the configuration process is stored in a storage location of a local database, and when the configuration process is interrupted, the execution data is called and the configuration process is executed in response to a start instruction.
[0146] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0147] The process configuration management device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0148] The present disclosure also provides a computer device having the above Figure 8 The process configuration management device shown.
[0149] See also Fig. 9 , Fig. 9 is a schematic diagram of a computer device provided by an optional embodiment of the present disclosure, such as Fig. 9As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Fig. 9 A processor 10 is taken as an example.
[0150] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.
[0151] The memory 20 stores instructions executable by at least one processor 10, so that the at least one processor 10 executes the method shown in the above embodiment.
[0152] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0153] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.
[0154] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.
[0155] The embodiments of the present disclosure also provide a computer-readable storage medium. The above-mentioned method according to the embodiments of the present disclosure can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium and downloaded through a network, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memory. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.
[0156] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0157] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0158] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0159] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0160] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.
[0161] Although the embodiments of the present disclosure have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations are all within the scope defined by the accompanying description.
Claims
1. A process configuration management method, characterized in that: Applied to a workflow engine, the method comprises: In response to the process configuration instruction, a process link is displayed on the configuration interface, wherein the process link is used to indicate the calling relationship between process nodes in the process to be configured; In response to the configuration instruction for the process node, fill in the first configuration statement of the process node, obtain the configuration process, and generate a visual flowchart of the configuration process; The visual flowchart is displayed based on the configuration interface, and the configuration process is managed based on the visual flowchart.
2. The method according to claim 1, characterized in that: The step of displaying the process link on the configuration interface in response to the process configuration instruction includes: After detecting the process configuration instruction, calling a second configuration statement corresponding to the process to be configured; Based on the second configuration statement, a process link corresponding to the process to be configured is generated on the configuration interface.
3. The method according to claim 2, characterized in that The calling of the second configuration statement corresponding to the process to be configured includes: Calling the command line tool corresponding to the workflow engine; Based on the command line tool, the second configuration statement is loaded in the configuration interface according to the file location and variable name corresponding to the second configuration statement to obtain the process link.
4. The method according to claim 1, characterized in that: The step of displaying the process link on the configuration interface in response to the process configuration instruction includes: After detecting the process configuration instruction, obtaining a preset flowchart type, wherein the preset flowchart type includes: a first flowchart type for emphasizing the dependency relationship between process nodes and a second flowchart type for emphasizing the state flow between process nodes; Based on at least one of the preset flowchart types, the process link is generated and displayed in the configuration interface.
5. The method according to claim 1, characterized in that The step of filling the first configuration statement of the process node in response to the configuration instruction for the process node to obtain the configuration process includes: Generate configuration instructions based on the trigger operation for the process node; A target statement matching the process node is determined in the configuration statement of the configured process node, and a first configuration statement of the process node is filled according to the target statement to obtain a configuration process, wherein the configured process node is a process node corresponding to the configured process in the workflow engine.
6. The method according to claim 1, characterized in that The managing the configuration process based on the visual flowchart includes: After detecting an adjustment operation on a process node in the visual flowchart, the configuration statement of the configuration process is updated based on the calling relationship displayed in the adjusted visual flowchart, wherein the adjustment operation includes at least one of the following: a node deletion operation, a node movement operation, a node exchange operation, and a node addition operation.
7. The method according to claim 1, characterized in that The managing the configuration process based on the visual flowchart includes: Marking the node status of the process node in the visual flow chart; In response to a trigger operation on the process node, attribute information and fault data of the process node are displayed.
8. The method according to claim 1, characterized in that: The method further comprises: During the execution of the configuration process, after detecting a callback instruction, determining a callback node indicated by the callback instruction, wherein the callback node is a process node that has been executed in the configuration process; The callback configuration of the callback node is verified, and when the verification result satisfies the callback condition, the callback instruction is executed.
9. The method according to claim 8, characterized in that The method further comprises: Obtain the number of queries per second corresponding to the configuration process, and determine whether the number of queries per second is greater than a preset threshold; If so, determining the storage location of the configuration process as a shard table in the local database; If not, the storage location of the configuration process is determined to be a single table in the local database.
10. The method according to claim 9, characterized in that The method further comprises: The execution data generated by the configuration process is stored in a storage location of the local database, and when the execution of the configuration process is interrupted, the execution data is called and the configuration process is executed in response to a start instruction.
11. A process configuration management device, characterized in that: The device comprises: A display module, used to display a process link on a configuration interface in response to a process configuration instruction, wherein the process link is used to indicate a calling relationship between process nodes in a process to be configured; A generating module, configured to fill in a first configuration statement of the process node in response to a configuration instruction for the process node, obtain a configuration process, and generate a visual flowchart of the configuration process; A management module is used to display the visual flowchart based on the configuration interface and manage the configuration process based on the visual flowchart.
12. A computer device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the process configuration management method according to any one of claims 1 to 10 by executing the computer instructions.
13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the process configuration management method according to any one of claims 1 to 10.
14. A computer program product, characterized in that The method comprises computer instructions, wherein the computer instructions are used to enable a computer to execute the process configuration management method according to any one of claims 1 to 10.