CN114168198B - Online processing flow adjusting method and system, configuration center and server - Google Patents

Online processing flow adjusting method and system, configuration center and server Download PDF

Info

Publication number
CN114168198B
CN114168198B CN202210126025.0A CN202210126025A CN114168198B CN 114168198 B CN114168198 B CN 114168198B CN 202210126025 A CN202210126025 A CN 202210126025A CN 114168198 B CN114168198 B CN 114168198B
Authority
CN
China
Prior art keywords
acyclic graph
processing flow
directed acyclic
node
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210126025.0A
Other languages
Chinese (zh)
Other versions
CN114168198A (en
Inventor
周金龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changsha Developer Technology Co ltd
Beijing Innovation Lezhi Network Technology Co ltd
Original Assignee
Changsha Developer Technology Co ltd
Beijing Innovation Lezhi Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Changsha Developer Technology Co ltd, Beijing Innovation Lezhi Network Technology Co ltd filed Critical Changsha Developer Technology Co ltd
Priority to CN202210126025.0A priority Critical patent/CN114168198B/en
Publication of CN114168198A publication Critical patent/CN114168198A/en
Application granted granted Critical
Publication of CN114168198B publication Critical patent/CN114168198B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention relates to an online processing flow adjusting method, a system, a configuration center and a server, relating to the technical field of internet, wherein the method applied to the configuration center comprises the following steps: receiving a modification instruction; according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow to obtain a target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph; the directed acyclic graph comprises a plurality of nodes and a plurality of directed edges, the nodes comprise tasks, the directed edges connect two nodes, and the directed edges represent the execution sequence of the two nodes connected with the directed edges. By adopting the technical scheme of the invention, the change and modification of the processing flow can be directly realized by adopting a mode of directly modifying the nodes of the directed acyclic graph in the configuration center, the code does not need to be modified, the online is not required to be released again, the method and the device are convenient and quick, and the time of developers and maintainers is saved.

Description

Online processing flow adjusting method and system, configuration center and server
Technical Field
The invention relates to the technical field of internet, in particular to an online processing flow adjusting method, an online processing flow adjusting system, a configuration center and a server.
Background
In the related art, the network interface mainly implements an online processing procedure in the form of hard coding or hot update. Due to diversification of user groups, the online processing flow needs to be changed for many times, and the change of the online processing flow usually needs to modify code logic, and after an original code is modified, the product is released online again, so that the operation is complicated, and the time of developers and maintenance personnel is wasted. For example, the invention patent with publication number CN111125451A discloses a data production processing method, device, electronic device and storage medium, which realize automatic conversion of production flow into corresponding production codes, but still need the production codes to release products on line, and are complicated in operation and time-consuming for developers and maintainers.
Therefore, how to improve the convenience of the online processing flow change becomes a technical problem to be solved urgently in the prior art.
Disclosure of Invention
In view of the above, an object of the present invention is to provide an online processing flow adjustment method, an online processing flow adjustment system, a configuration center, and a server, so as to solve the technical problems in the prior art that when an online processing flow is changed, an original code needs to be modified, and then the online processing flow is released to a product again, which is complicated in operation and wastes time of developers and maintenance personnel.
In order to achieve the purpose, the invention adopts the following technical scheme:
in one aspect, an online processing flow adjustment method is applied to a configuration center, and the method includes:
receiving a modification instruction;
according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow to obtain a target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph; the directed acyclic graph comprises a plurality of nodes and a plurality of directed edges, the nodes comprise tasks, the directed edges connect two of the nodes, and the directed edges represent the execution sequence of the two nodes connected with the directed edges.
Optionally, each of the processing flows includes at least two steps; the construction process of the directed acyclic graph comprises the following steps:
setting each step in any processing flow corresponding to each interface as a node of the directed acyclic graph; each processing flow corresponds to a directed acyclic graph;
determining directed edges among the nodes according to the step relationships among the nodes and the processing flow;
and constructing and storing the directed acyclic graph according to the nodes and directed edges between the nodes.
Optionally, the modification instruction carries first processing flow information and first modification information, where the first processing flow information includes identity information of a directed acyclic graph, and the first modification information includes modification information of any one of a node and a directed edge; the modifying the directed acyclic graph corresponding to the processing flow according to the modifying instruction comprises the following steps:
determining a target directed acyclic graph according to the first processing flow information;
and modifying the target directed acyclic graph according to the first modification information.
Optionally, the configuration center includes: a configuration identifier, the configuration identifier representing a unique processing flow; the modification instruction carries second processing flow information and second modification information, the second processing flow information comprises identification information of a configuration identifier, and the second modification information comprises modification information of any one of a node and a directed edge; the modifying the directed acyclic graph corresponding to the processing flow according to the modifying instruction comprises the following steps:
determining a target configuration identifier according to the second processing flow information, and determining a target directed acyclic graph according to the target configuration identifier;
and modifying the target directed acyclic graph according to the second modification information.
Optionally, the modifying the directed acyclic graph corresponding to the processing flow includes: and adding or deleting nodes of the directed acyclic graph corresponding to the processing flow, and/or adding or deleting directed edges of the directed acyclic graph corresponding to the processing flow.
In another aspect, an online processing flow adjustment method is applied to a server, and the method includes:
acquiring user task information;
determining a modification instruction according to the user task information, and sending the modification instruction to a configuration center so that the configuration center modifies a directed acyclic graph corresponding to a processing flow according to the modification instruction;
and acquiring the modified target directed acyclic graph, and operating the processing flow according to the target directed acyclic graph.
Optionally, the determining a modification instruction according to the user task information includes: and determining nodes to be modified and/or directed edges to be modified of the directed acyclic graph according to the user task information, so that the configuration center modifies the nodes and/or the directed edges of the directed acyclic graph according to the modification instruction.
Optionally, the running the processing flow according to the target directed acyclic graph includes:
judging whether an executable node exists in the target directed acyclic graph, and if the executable node does not exist, determining that the execution of the processing flow corresponding to the target directed acyclic graph is finished;
and determining the output result of the last node in the directed acyclic graph as a target output result.
Optionally, the running the processing flow according to the target directed acyclic graph includes:
if the current node has a precursor node which is not executed, executing the current node after the precursor node is executed, wherein the precursor node is a node of which the execution sequence is before the current node;
and if the current node does not have the unexecuted precursor node, executing the current node.
In yet another aspect, a configuration center includes: the system comprises a first processor and a first memory connected with the first processor; the first memory is used for storing a computer program, and the computer program is at least used for executing the on-line processing flow adjusting method; the first processor is used for calling and executing the computer program.
In another aspect, a server, a second processor and a second memory connected to the second processor; the second memory is used for storing a computer program, and the computer program is at least used for executing the on-line processing flow adjusting method; the second processor is used for calling and executing the computer program.
In yet another aspect, an online process flow adjustment system includes: the configuration center and the server side; the configuration center is in communication connection with the server.
An online processing flow adjusting method, a system, a configuration center and a server, wherein the method applied to the configuration center comprises the following steps: receiving a modification instruction; according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow to obtain a target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph; the directed acyclic graph comprises a plurality of nodes and a plurality of directed edges, the nodes comprise tasks, the directed edges connect two nodes, and the directed edges represent the execution sequence of the two nodes connected with the directed edges. By adopting the technical scheme of the invention, the change and modification of the processing flow can be directly realized by adopting a mode of directly modifying the nodes of the directed acyclic graph in the configuration center, the code does not need to be modified, the online is not required to be released again, the method and the device are convenient and quick, and the time of developers and maintainers is saved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of an on-line process flow adjustment system according to an embodiment of the present invention.
Fig. 2 is a flowchart illustrating an on-line processing flow adjustment method according to another embodiment of the present invention.
Fig. 3 is a schematic flowchart of a process of constructing a directed acyclic graph according to another embodiment of the present invention.
Fig. 4 is a schematic structural diagram of a directed acyclic graph according to another embodiment of the present invention.
Fig. 5 is a schematic diagram of a procedure for configuring configuration information in a node according to another embodiment of the present invention.
Fig. 6 is a flowchart illustrating an on-line process flow adjustment method according to another embodiment of the present invention.
Fig. 7 is a schematic structural diagram of a configuration center according to another embodiment of the present invention.
Fig. 8 is a schematic structural diagram of a server according to another embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be described in detail below. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the examples given herein without any inventive step, are within the scope of the present invention.
In the related art, the network interface mainly implements an online processing procedure in the form of hard coding or hot update. Due to diversification of user groups, the online processing flow needs to be changed for many times, and the change of the online processing flow usually needs to modify code logic, and after an original code is modified, the product is released online again, so that the operation is complicated, and the time of developers and maintenance personnel is wasted.
Therefore, how to improve the convenience of the online processing flow change becomes a technical problem to be solved urgently in the prior art.
Based on this, the embodiments of the present invention provide an online processing flow adjustment method, system, configuration center, and server.
An exemplary system:
fig. 1 is a schematic structural diagram of an on-line process flow adjustment system according to an embodiment of the present invention.
Referring to fig. 1, the system for adjusting an online processing flow according to the embodiment of the present invention may include a configuration center 1 and a server 2; the configuration center is in communication connection with the server. The method for adjusting the online processing flow provided by the embodiment of the invention can be applied to the configuration center and the server side in fig. 1. The configuration center may be a configuration center of any system, and is used to configure an operation rule of a program in the system, which is not specifically limited in the present application; the server may be one server, or may be composed of a plurality of servers, or may be a virtualization platform, or a cloud computing service center, which is not specifically limited in this application.
Wherein, the configuration center may include: the system comprises a first processor and a first memory connected with the first processor; the first memory is used for storing a computer program, and the computer program is at least used for executing any on-line processing flow adjusting method applied to the configuration center; the first processor is used for calling and executing the computer program.
The server may include: the second processor and a second memory connected with the second processor; the second memory is used for storing a computer program, and the computer program is at least used for executing any one of the online processing flow adjusting methods applied to the server side; the second processor is used for calling and executing the computer program.
An exemplary method:
based on one general inventive concept, another embodiment of the present invention provides an online processing flow adjustment method.
Fig. 2 is a schematic flow chart of an on-line processing flow adjustment method according to another embodiment of the present invention, which can be applied to a configuration center, and referring to fig. 2, the method provided in the present application may include the following steps:
and S21, receiving a modification instruction.
The configuration center of the present application may be applied to any product, wherein the modification instruction may be initiated by a product developer or a product maintainer, and the present application is not particularly limited. For example, the product may be a short video platform, an information search platform, and the like, and is not particularly limited in this application.
The configuration center receives modification instructions through interfaces, wherein each interface corresponds to a processing flow. The interface may be a Web interface and the process flow is a complete transaction comprising at least two steps.
S22, modifying the directed acyclic graph corresponding to the processing flow according to the modification instruction to obtain a target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph; the directed acyclic graph comprises a plurality of nodes and a plurality of directed edges, the nodes comprise tasks, the directed edges connect two nodes, and the directed edges represent the execution sequence of the two nodes connected with the directed edges.
In particular, each directed acyclic graph can include a plurality of nodes and a plurality of directed edges, the plurality being at least two. The nodes of the directed acyclic graph include tasks, for example, the nodes may include: adding nodes, wherein the tasks corresponding to the added nodes can be functions and the like; the nodes can also comprise recall nodes, and tasks corresponding to the recall nodes can be recall data and the like. The directed edge connects the two nodes, and the directed edge represents the execution sequence of the two nodes connected with the directed edge.
In some embodiments, modifying the directed acyclic graph corresponding to the processing flow includes: and adding or deleting nodes of the directed acyclic graph corresponding to the processing flow, and/or adding or deleting directed edges of the directed acyclic graph corresponding to the processing flow.
It is worth to say that the target directed acyclic graph obtained by the modified directed acyclic graph is still a directed acyclic graph.
After receiving the modification instruction through the interface, the configuration center modifies the directed acyclic graph corresponding to the interface processing flow according to the modification instruction, for example, adds or deletes nodes and/or directed edges of the directed acyclic graph to obtain a modified target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph.
Fig. 3 is a schematic flowchart of a process of constructing a directed acyclic graph according to another embodiment of the present invention.
In some embodiments, each process flow, comprises at least two steps; the construction process of the directed acyclic graph comprises the following steps:
s31, setting each step in any processing flow corresponding to each interface as a node of the directed acyclic graph; each processing flow corresponds to a directed acyclic graph.
Each step in the processing flow corresponds to a node in the directed acyclic graph, and each node may correspond to a task.
And S32, determining directed edges between the nodes according to the step relationships of the nodes and the nodes in the processing flow.
And S33, constructing and storing the directed acyclic graph according to the nodes and the directed edges between the nodes.
In the process of constructing the directed acyclic graph, specific content of each step in any processing flow corresponding to each interface can be used as a node of the directed acyclic graph, directed edges between the nodes are determined according to the step relation between the nodes and the step relation of the nodes in the processing flow, and therefore the directed acyclic graph is formed, and the constructed directed acyclic graph is stored in the configuration center. And when the server side runs the processing flow, the server side runs according to the directed acyclic graph of the configuration center.
Fig. 4 is a schematic structural diagram of a directed acyclic graph according to another embodiment of the present invention. Referring to fig. 4, 10 steps of a processing flow of an interface can be abstracted into 10 nodes, i.e., node 1, node 2, node 3, node 4, node 5, node 6, node 7, node 8, node 9, and node 10, respectively. Determining the dependency relationship among the nodes according to the execution sequence of the steps of the processing flow, for example: the node 1 has no dependency relationship; node 2 and node 3 both depend on node 1; node 4 is dependent on node 2; node 9 depends on node 4; node 5 depends on node 3; node 6 and node 7 depend on node 5; node 8 depends on node 6 and node 7; node 10 depends on node 8 and node 9.
For example, the application scenario of the application may be an information browsing platform, and after a user logs in the information browsing platform, the server may display the set content on the information browsing platform according to the processing flow set by the interface, for example, the processing flow may be for displaying the content of a science and technology plate, and the tasks corresponding to the nodes of the directed acyclic graph of the processing flow may be: and acquiring related data, filling fields, modification fields and the like of the contents of the science and technology plate. When the processing flow needs to be modified, the directed acyclic graph of the processing flow can be directly modified, and the directed acyclic graph is directly modified in the execution process of the processing flow, so that the directed acyclic graph is immediately effective after being modified, codes do not need to be modified, the directed acyclic graph does not need to be released again, and the directed acyclic graph is convenient and quick.
The method for adjusting the online processing flow provided by the embodiment of the invention directly realizes the change and modification of the processing flow by adopting the mode of directly modifying the nodes of the directed acyclic graph in the configuration center without modifying codes or re-releasing the online, is convenient and quick, and saves the time of developers and maintainers.
In some embodiments, the modification instruction carries first processing flow information and first modification information, the first processing flow information includes identity information of a directed acyclic graph, and the first modification information includes modification information of any one of a node and a directed edge; according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow, wherein the modifying comprises the following steps: determining a target directed acyclic graph according to the first processing flow information; and modifying the target directed acyclic graph according to the first modification information.
Specifically, the modification instruction may carry first processing flow information, where the first processing flow information may include identification information of the directed acyclic graph, for example, the identification information may be interface information, so as to determine the target directed acyclic graph according to the identification information. The modification instruction may carry first modification information, where the first modification information may include modification information of any one of a node and a directed edge, for example, the first modification information may be to delete or add a node, and/or delete or add a directed edge, and the like, and is not specifically limited in this application.
In some embodiments, a configuration center includes: the configuration identifier represents a unique processing flow; the modification instruction carries second processing flow information and second modification information, the second processing flow information comprises identification information of the configuration identifier, and the second modification information comprises modification information of any one of the node and the directed edge; according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow, wherein the modifying comprises the following steps: determining a target configuration identifier according to the second processing flow information, and determining a target directed acyclic graph according to the target configuration identifier; and modifying the target directed acyclic graph according to the second modification information.
Specifically, the configuration and management of tasks can be completed by combining the Web framework Spring Boot and the configuration center apollo. The business service is executed in the Web Spring Boot, and the data of the configuration center is sent to the server in real time. The frame is designed to simplify the initial building and development process of the new Spring application, and the frame is configured in a specific mode, so that developers do not need to define the configuration of the template any more.
In a specific implementation process, the processing flows may be artificially defined according to requirements and stored in an apollo, the configuration center may include configuration identifiers, the configuration identifiers correspond to the processing flows one to one, and each processing flow corresponds to one directed acyclic graph. After receiving the second processing flow information, determining a target configuration identifier according to the identification information of the configuration identifier in the second processing flow information so as to determine a corresponding target directed acyclic graph; and if the second processing flow information comprises second modification information, modifying the node and/or the directed edge of the target directed acyclic graph according to the modification information of any one of the node and the directed edge included in the second modification information.
In some embodiments, the configuration center may contain a configuration identification and a policy list. The configuration identification uniquely determines a processing flow, each identification corresponds to a configured strategy list, and each item in the strategy list corresponds to a node in the directed acyclic graph and contains configuration information in the node. Each processing flow corresponds to one directed acyclic graph, and therefore each policy list is a policy set of nodes in the directed acyclic graph.
Each entry in the policy list may contain: the string, the streamType, the id, the next, the ext fields; the strategy is a strategy node, wherein the strategy corresponds to the specific implementation of a strategy, the strategy type corresponds to the strategy type, the id is the unique identifier of the configuration item, the next point points to the id of the next strategy node, the current node is a precursor node of the next node, and the ext stores the extension information used by the node in the program. When the Spring Boot is used for providing the Web service, the configured content corresponds to the strategy identification string, and the Spring Boot corresponds to the service for realizing the concrete strategy interface.
In some embodiments, the implementation of each policy may be injected into one ConcurrentHashMap (implementation queue) through automatic injection of Spring Boot, and an implementation instance of the corresponding policy is obtained in a policy factory through stream. In the operation process, a developer or a maintainer can modify the configuration information in the project in real time through the apollo. In the program, a directed acyclic graph may be maintained for each configuration, where one interface corresponds to one configuration and one configuration corresponds to one directed acyclic graph, that is, each processing flow corresponds to one configuration. When the interface is called, some specific information of each node in the directed acyclic graph corresponding to the interface is loaded through specific input information. In the application, task nodes needing asynchronous execution can be managed through the thread pool. And adding rule configuration to the strategy node, and directly skipping the execution of the current node when the input data does not meet the requirement of the rule. Data nodes are organized in a linked list fashion. The method and the device can support A/B experiments, the same interface can also support multiple groups of processing flows, and each group of processing flows corresponds to one directed acyclic graph.
For example, in the present application, the configuration of the configuration information in the node may be implemented by a program as shown in fig. 5.
In the present application, description is made of configuration information in a node in a directed acyclic graph: the current node corresponds to id; next corresponds to the next node id; the service corresponding to the strategy node is called through a java reflection mechanism; it may be defined whether to execute asynchronously using separate threads; and isomerizing a node relation map through the configuration of id and next, wherein key is a task corresponding to the current node, and value is a task corresponding to the id of the precursor node. the task includes information such as node id and node execution status. And the precursor node is the last node with the association relation of the current node.
Fig. 6 is a flowchart illustrating an online processing flow adjustment method according to another embodiment of the present invention, which can be applied to a server, and referring to fig. 6, the method provided in the present application may include the following steps:
and S61, acquiring the user task information.
The user task information may be information set by the user, for example, scientific and technological plate content, sports plate content, and the like calibrated by the user, and is not specifically limited in the present application; the favorite content of the user may be determined according to the historical access information of the user, and is set as the user task information, which is not specifically limited in the present application.
And S62, determining a modification instruction according to the user task information, and sending the modification instruction to the configuration center so that the configuration center modifies the directed acyclic graph corresponding to the processing flow according to the modification instruction.
In some embodiments, determining the modification instruction based on the user task information includes: and determining nodes to be modified and/or directed edges to be modified of the directed acyclic graph according to the user task information, so that the configuration center modifies the nodes and/or the directed edges of the directed acyclic graph according to the modification instruction.
Specifically, after the user task information is obtained, a modification instruction may be determined according to the user task information, for example, when the user task information is scientific and technological plate content, it is determined that the original directed acyclic graph does not include the scientific and technological plate content, it is determined that a task plate content node is added in the directed acyclic graph as the modification instruction, and the modification instruction is sent to the configuration center, so that the configuration center modifies a corresponding node of the directed acyclic graph according to the modification instruction, and increases a directed edge between the node and the node.
And S63, acquiring the modified target directed acyclic graph, and running a processing flow according to the target directed acyclic graph.
When the configuration center modifies the directed acyclic graph to obtain the target directed acyclic graph, the target directed acyclic graph is sent to the server side in real time, the server side obtains the target directed acyclic graph, and the processing flow of the target directed acyclic graph is operated in real time.
The method for adjusting the online processing flow provided by the embodiment of the invention directly realizes the change and modification of the processing flow by adopting the mode of directly modifying the nodes of the directed acyclic graph in the configuration center without modifying codes or re-releasing the online, is convenient and quick, and saves the time of developers and maintainers.
In some embodiments, running a process flow according to a target directed acyclic graph includes: judging whether an executable node exists in the target directed acyclic graph, and if the executable node does not exist, determining that the execution of the processing flow corresponding to the target directed acyclic graph is finished; and determining the output result of the last node in the directed acyclic graph as a target output result.
Specifically, it may be determined whether there is an executable node in a node in the target directed acyclic graph, where the executable node may be a node that can run and does not execute a task in the node. And when no executable node exists, the nodes in the target directed acyclic graph are all executed, the corresponding processing flow is executed, and the output result of the last node in the directed acyclic graph is used as the target output result.
For example, referring to fig. 4, it may be determined whether there is an unexecuted node among the nodes 1 to 10, and if not, the processing flow corresponding to fig. 4 is completed, and the output result of the node 10 is taken as the target output result.
In some embodiments, running a process flow according to a target directed acyclic graph includes: if the current node has a precursor node which is not executed, executing the current node after the precursor node is executed, wherein the precursor node is a node of which the execution sequence is before the current node; and if the current node does not have the unexecuted precursor node, executing the current node.
Specifically, a node before the current node in the execution sequence may be defined as a predecessor node of the current node, whether the current node has an unexecuted predecessor node is determined, if the unexecuted predecessor node exists, the predecessor node is executed, and after the execution of the predecessor node is finished, the current node is executed; and if the current node does not have the unexecuted precursor node, executing the current node.
For example, referring to fig. 4, if node 5 is used as the current node, it is determined whether the execution of node 3 and node 1 before node 5 is completed, and if the execution of both node 1 and node 3 is completed, node 5 is executed. After the execution of the node 1 is completed, the node 2 and the node 3 without the dependency relationship can be executed simultaneously.
In some embodiments, when scheduling task, it is determined whether to execute the task of the current node by judging the execution states of all direct predecessor nodes. When no executable node exists, the process execution can be judged to be finished, and the output result of the last node of the directed acyclic graph is the integral output result. In the application, the whole output result can be converted into the interface required output format, and the specific format is not limited.
The method for adjusting the online processing flow provided by the embodiment of the invention directly realizes the change and modification of the processing flow by adopting the mode of directly modifying the nodes of the directed acyclic graph in the configuration center without modifying codes or re-releasing the online, is convenient and quick, and saves the time of developers and maintainers.
Exemplary associated devices:
still another embodiment of the present invention provides a configuration center based on a general inventive concept.
Fig. 7 is a schematic structural diagram of a configuration center according to another embodiment of the present invention, and referring to fig. 7, the configuration center of the present application may include: one or more first processors 71 and a first memory 72.
The first processor 71 may be a Central Processing Unit (CPU) or other form of processing unit having data processing capabilities and/or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
The first memory 72 may comprise one or more computer program products, which may include various forms of computer readable storage media, such as a volatile first memory and/or a non-volatile first memory. The volatile first memory may comprise, for example, a random access first memory (RAM) and/or a cache first memory (cache), etc. The non-volatile first memory may include, for example, a read only first memory (ROM), a hard disk, a flash memory, and the like. One or more computer program instructions may be stored on a computer readable storage medium and executed by the first processor 71 to implement the above on-line process flow adjustment methods of the various embodiments of the present application and/or other desired functions. Various contents such as category correspondence may also be stored in the computer-readable storage medium.
In one example, the computer device may further include: a first input device 73 and a first output device 74, which are interconnected by a bus system and/or other form of connection mechanism (not shown).
The first input device 73 may also include, for example, a keyboard, a mouse, and the like. The first output device 74 may output various information to the outside. The first output device 74 may include, for example, a display, speakers, a printer, and a communication network and its connected remote output devices, among others.
Of course, for simplicity, only some of the components of the computer device relevant to the present application are shown in fig. 7, omitting components such as buses, input/output interfaces, and the like. In addition, the electronic device may include any other suitable components, depending on the particular application.
Based on a general inventive concept, another embodiment of the present invention further provides a server.
Fig. 8 is a schematic structural diagram of a server according to another embodiment of the present invention, and referring to fig. 8, a configuration center of the present application may include: one or more second processors 81 and a second memory 82.
The second processor 81 may be a Central Processing Unit (CPU) or other form of processing unit having data processing capabilities and/or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
The second memory 82 may comprise one or more computer program products that may include various forms of computer readable storage media, such as a volatile first memory and/or a non-volatile first memory. The volatile first memory may comprise, for example, a random access first memory (RAM) and/or a cache first memory (cache), etc. The non-volatile first memory may include, for example, a read only first memory (ROM), a hard disk, a flash memory, and the like. One or more computer program instructions may be stored on a computer readable storage medium and executed by the second processor 81 to implement the above on-line process flow adjustment methods of the various embodiments of the present application and/or other desired functions. Various contents such as category correspondence may also be stored in the computer-readable storage medium.
In one example, the computer device may further include: a second input device 83 and a second output device 84, which are interconnected by a bus system and/or other form of connection mechanism (not shown).
The second input device 83 may also include, for example, a keyboard, a mouse, and the like. The second output device 84 can output various information to the outside. The second output device 84 may include, for example, a display, speakers, a printer, and a communication network and its connected remote output devices, among others.
Of course, for simplicity, only some of the components of the computer device relevant to the present application are shown in fig. 8, omitting components such as buses, input/output interfaces, and the like. In addition, the electronic device may include any other suitable components, depending on the particular application.
In some embodiments, the system for adjusting an online process flow provided by the present application includes: the configuration center described in the above embodiment and the server described in the above embodiment; the configuration center is connected with the server side.
In addition to the above-described methods and apparatus, embodiments of the present application may also be a computer program product comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps in the online process flow adjustment method according to various embodiments of the present application described in the above-described exemplary method section of this specification.
Furthermore, embodiments of the present application may also be a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, cause the processor to perform the steps in the online process flow adjustment method according to various embodiments of the present application described in the "exemplary methods" section above in this specification.
A computer-readable storage medium may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may include, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The foregoing description has been presented for purposes of illustration and description. Furthermore, the description is not intended to limit embodiments of the application to the form disclosed herein. While a number of example aspects and embodiments have been discussed above, those of skill in the art will recognize certain variations, modifications, alterations, additions and sub-combinations thereof.

Claims (11)

1. An on-line processing flow adjusting method is applied to a configuration center, and comprises the following steps:
receiving a modification instruction;
according to the modification instruction, modifying the directed acyclic graph corresponding to the processing flow to obtain a target directed acyclic graph, so that the server side runs the processing flow according to the target directed acyclic graph; the directed acyclic graph comprises a plurality of nodes and a plurality of directed edges, the nodes comprise tasks, the directed edges connect two nodes, and the directed edges represent the execution sequence of the two nodes connected with the directed edges;
each processing flow comprises at least two steps; the construction process of the directed acyclic graph comprises the following steps:
setting each step in any processing flow corresponding to each interface as a node of the directed acyclic graph; each processing flow corresponds to a directed acyclic graph;
determining directed edges among the nodes according to the step relationships among the nodes and the processing flow;
and constructing and storing the directed acyclic graph according to the nodes and directed edges between the nodes.
2. The method according to claim 1, wherein the modification instruction carries first processing flow information and first modification information, the first processing flow information includes identity information of a directed acyclic graph, and the first modification information includes modification information of any one of a node and a directed edge; the modifying the directed acyclic graph corresponding to the processing flow according to the modifying instruction comprises the following steps:
determining a target directed acyclic graph according to the first processing flow information;
and modifying the target directed acyclic graph according to the first modification information.
3. The method of claim 1, wherein configuring the hub comprises: a configuration identifier, the configuration identifier representing a unique processing flow; the modification instruction carries second processing flow information and second modification information, the second processing flow information comprises identification information of a configuration identifier, and the second modification information comprises modification information of any one of a node and a directed edge; the modifying the directed acyclic graph corresponding to the processing flow according to the modifying instruction comprises the following steps:
determining a target configuration identifier according to the second processing flow information, and determining a target directed acyclic graph according to the target configuration identifier;
and modifying the target directed acyclic graph according to the second modification information.
4. The method according to any one of claims 1-3, wherein the modifying the directed acyclic graph corresponding to the processing flow comprises: and adding or deleting nodes of the directed acyclic graph corresponding to the processing flow, and/or adding or deleting directed edges of the directed acyclic graph corresponding to the processing flow.
5. An online processing flow adjustment method is applied to a server, and the method comprises the following steps:
acquiring user task information;
determining a modification instruction according to the user task information, and sending the modification instruction to a configuration center so that the configuration center modifies a directed acyclic graph corresponding to a processing flow according to the modification instruction;
acquiring a modified target directed acyclic graph, and operating the processing flow according to the target directed acyclic graph;
each processing flow comprises at least two steps; the construction process of the directed acyclic graph comprises the following steps:
setting each step in any processing flow corresponding to each interface as a node of the directed acyclic graph; each processing flow corresponds to a directed acyclic graph;
determining directed edges among the nodes according to the step relationships among the nodes and the processing flow;
and constructing and storing the directed acyclic graph according to the nodes and directed edges between the nodes.
6. The method of claim 5, wherein determining modification instructions based on the user task information comprises: and determining nodes to be modified and/or directed edges to be modified of the directed acyclic graph according to the user task information, so that the configuration center modifies the nodes and/or the directed edges of the directed acyclic graph according to the modification instruction.
7. The method of claim 5, wherein the running the process flow according to the target directed acyclic graph comprises:
judging whether an executable node exists in the target directed acyclic graph, and if the executable node does not exist, determining that the execution of the processing flow corresponding to the target directed acyclic graph is finished;
and determining the output result of the last node in the directed acyclic graph as a target output result.
8. The method of claim 5, wherein the running the process flow according to the target directed acyclic graph comprises:
if the current node has a precursor node which is not executed, executing the current node after the precursor node is executed, wherein the precursor node is a node of which the execution sequence is before the current node;
and if the current node does not have the unexecuted precursor node, executing the current node.
9. A deployment center, comprising: the system comprises a first processor and a first memory connected with the first processor; the first memory is used for storing a computer program at least for executing the on-line process flow adjustment method of any one of claims 1 to 4; the first processor is used for calling and executing the computer program.
10. A server, characterized by a second processor and a second memory connected to the second processor; the second memory is used for storing a computer program at least for executing the on-line process flow adjustment method of any one of claims 5 to 8; the second processor is used for calling and executing the computer program.
11. An on-line process flow adjustment system, comprising: the configuration center of claim 9 and the server of claim 10; the configuration center is in communication connection with the server.
CN202210126025.0A 2022-02-10 2022-02-10 Online processing flow adjusting method and system, configuration center and server Active CN114168198B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210126025.0A CN114168198B (en) 2022-02-10 2022-02-10 Online processing flow adjusting method and system, configuration center and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210126025.0A CN114168198B (en) 2022-02-10 2022-02-10 Online processing flow adjusting method and system, configuration center and server

Publications (2)

Publication Number Publication Date
CN114168198A CN114168198A (en) 2022-03-11
CN114168198B true CN114168198B (en) 2022-04-26

Family

ID=80489615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210126025.0A Active CN114168198B (en) 2022-02-10 2022-02-10 Online processing flow adjusting method and system, configuration center and server

Country Status (1)

Country Link
CN (1) CN114168198B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109033109A (en) * 2017-06-09 2018-12-18 杭州海康威视数字技术股份有限公司 Data processing method and system
CN109343940A (en) * 2018-08-14 2019-02-15 西安理工大学 Multimedia Task method for optimizing scheduling in a kind of cloud platform
CN113672369A (en) * 2021-08-20 2021-11-19 北京明略软件系统有限公司 Method and device for verifying ring of directed acyclic graph, electronic equipment and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010044637A (en) * 2008-08-14 2010-02-25 Just Syst Corp Data processing apparatus, method, and program
CN110297699B (en) * 2018-03-23 2021-09-14 华为技术有限公司 Scheduling method, scheduler, storage medium and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109033109A (en) * 2017-06-09 2018-12-18 杭州海康威视数字技术股份有限公司 Data processing method and system
CN109343940A (en) * 2018-08-14 2019-02-15 西安理工大学 Multimedia Task method for optimizing scheduling in a kind of cloud platform
CN113672369A (en) * 2021-08-20 2021-11-19 北京明略软件系统有限公司 Method and device for verifying ring of directed acyclic graph, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN114168198A (en) 2022-03-11

Similar Documents

Publication Publication Date Title
US20220004443A1 (en) Event-driven programming model based on asynchronous, massively parallel dataflow processes for highly-scalable distributed applications
EP3483740B1 (en) Method, device and system for stream computation
CA3000422C (en) Workflow service using state transfer
CN111324571B (en) Container cluster management method, device and system
US10146599B2 (en) System and method for a generic actor system container application
US20120011496A1 (en) Service providing apparatus, service providing system, method of processing data in service providing apparatus, and computer program
US10803413B1 (en) Workflow service with translator
WO2019160060A1 (en) Virtual resource management device, virtual resource allocation method, and virtual resource allocation program
US10728169B1 (en) Instance upgrade migration
EP3732564A1 (en) Asynchronous c -js data binding bridge
US11409574B2 (en) Instance creation in a computing system
US10725795B2 (en) Systems, methods, and apparatuses for dynamic creation of an external code segment within a cloud based computing environment
US20230037199A1 (en) Intelligent integration of cloud infrastructure tools for creating cloud infrastructures
CN117693734A (en) Front-end item processing method, device, equipment, management system and storage medium
JP6002302B2 (en) Web application generation system, Web application generation system control method, Web application generation system program, Web application generation device, Web application generation device control method, and Web application generation device program
CN112199200B (en) Resource scheduling method and device, computer equipment and storage medium
CN114168198B (en) Online processing flow adjusting method and system, configuration center and server
CN115242871B (en) Service method and device of business gateway, storage medium and electronic equipment
KR20010110097A (en) Archiving in workflow-management-systems
JP2019087105A (en) Resource determination device, resource determination method and resource determination processing program
CN112418796A (en) Sub-process node activation method and device, electronic equipment and storage medium
US20240241758A1 (en) Flexible computing resource cluster allocation
Dautov et al. Vs-driven big data process development
Koschel et al. Is Amazon Kinesis Data Analytics Suitable as Core for an Event Processing Network Model?
KR101824084B1 (en) Data processing method applicable to various analysis models for business analysis service system based on cloud computing

Legal Events

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