CN117940904A - Workflow operation method and device - Google Patents

Workflow operation method and device Download PDF

Info

Publication number
CN117940904A
CN117940904A CN202180102095.6A CN202180102095A CN117940904A CN 117940904 A CN117940904 A CN 117940904A CN 202180102095 A CN202180102095 A CN 202180102095A CN 117940904 A CN117940904 A CN 117940904A
Authority
CN
China
Prior art keywords
function
workflow
event
resources
deployed
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.)
Pending
Application number
CN202180102095.6A
Other languages
Chinese (zh)
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of CN117940904A publication Critical patent/CN117940904A/en
Pending legal-status Critical Current

Links

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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the application provides a workflow operation method and device, which can effectively improve the working efficiency on the basis of reducing manpower. The method comprises the following steps: the method comprises the steps that a first device obtains a workflow, wherein the workflow is used for indicating at least one function called by an event and the execution sequence of the at least one function; after the first device receives a first event, determining a first function to be called by the first event according to the workflow, wherein the event comprises the first event, and the at least one function comprises the first function; if the first device is the device where the first function is located, the first device calls the first function; if the second device is the device where the first function is located, the first device routes the first event to the second device.

Description

Workflow operation method and device Technical Field
The present application relates to the field of computer technology, and more particularly, to a method and apparatus for workflow operations.
Background
Currently, when engineers need to deploy or run an application, it generally takes a lot of time to deploy solutions to different devices on site by directly connecting to the devices through data lines. If the application is modified, the application needs to be redeployed, so that the engineer repeats the complex and tedious process.
Further, if tasks need to be run across multiple edge devices to complete a series of business processes, the multiple edge devices may come from different vendors. Therefore, in addition to the need to develop and integrate heterogeneous systems of different devices, the above problems are encountered during deployment, which is not only labor-consuming but also inefficient.
Disclosure of Invention
The application provides a workflow operation method and device, which can effectively improve the working efficiency on the basis of reducing manpower.
In a first aspect, a method for workflow operation is provided, including: the method comprises the steps that a first device obtains a workflow, wherein the workflow is used for indicating at least one function called by an event and the execution sequence of the at least one function; after the first device receives a first event, determining a first function to be called by the first event according to the workflow, wherein the event comprises the first event, and the at least one function comprises the first function; if the first device is the device where the first function is located, the first device calls the first function; if the second device is the device where the first function is located, the first device routes the first event to the second device.
According to the technical scheme, the function is deployed on the equipment, so that the whole workflow can be completed on the equipment, namely, the application program can be processed through remote deployment without going to the site, and the manpower is greatly reduced. In addition, the device completes the whole workflow according to the workflow for indicating at least one function of event call and the execution sequence of the at least one function, thereby effectively improving the working efficiency.
Further, since the device can acquire the workflow, no matter which device the function is deployed on, the device can determine the function called by the event according to the workflow, and even if the device is not the device where the function is located, the event can be routed to the device where the function is located to call the function, so that the flexibility of the whole system can be improved.
In some possible implementations, the function deployed on the first device is determined from the resources of the first device, and the function deployed on the second device is determined from the resources of the second device; if the resources of the first device are larger than the resources of the second device, the functions deployed on the first device are more than the functions deployed on the second device.
According to the technical scheme, the function functions are deployed on the equipment according to the resources of the equipment, the function functions deployed on the equipment with more resources are more, and the function functions deployed on the equipment with less resources are relatively less, so that reasonable allocation of the resources and effective utilization of the resources can be realized. Further, the function is deployed on the equipment according to the equipment resources, so that the problem that a certain function must be deployed to a certain equipment is avoided, and the flexibility of deploying the function is improved.
In some possible implementations, if the second device is a device where the first function is located, the method further includes: the first device receives feedback information sent by the second device, wherein the feedback information is used for feeding back an execution result of the first function executed by the second device.
According to the technical scheme, under the condition that the equipment for receiving the event is not the equipment where the function called by the event is located, the equipment where the function called by the event is located feeds back the result of executing the function to the equipment for receiving the event after the function is executed, so that the equipment for receiving the event can continue to execute the next step, the invalid waiting time of the equipment for receiving the event is avoided, and the time for executing the whole workflow is greatly shortened.
In some possible implementations, the method further includes: the first device determines the device where the first function is located according to recording information, where the recording information is used for recording the device where each function of the at least one function is located.
According to the technical scheme, the equipment for receiving the event can accurately route the event to the equipment where the function called by the event is located through the recorded information of the equipment where each recorded function is located.
In some possible implementations, the first device obtaining a workflow includes: the first device receives workflow scheduling information sent by a system, and the workflow scheduling information identifies the workflow.
In some possible implementations, the first device receives workflow scheduling information sent by a system, including: before the first equipment leaves the factory, the first equipment receives the workflow scheduling information sent by the system.
According to the technical scheme, the workflow can be obtained before the equipment receiving the event leaves the factory, so that the workflow can be executed even if the equipment is disconnected with the central cluster, and the normal operation of the workflow is greatly ensured.
In some possible implementations, the first event includes first information, the first information being an input of the first function.
In some possible implementations, the first device and the second device are edge devices.
In a second aspect, there is provided an apparatus for workflow operations comprising means for performing the method of the first aspect or implementations thereof described above.
In a third aspect, an apparatus for workflow operations is provided, comprising: a memory for storing a program; a processor for executing the program stored in the memory, and when the program stored in the memory is executed, the processor is configured to perform the method in the first aspect or the implementation manner thereof.
In a fourth aspect, a computer readable storage medium is provided storing program code for execution by a device, the program code comprising instructions for performing the steps of the method of the first aspect or implementations thereof described above.
Drawings
FIG. 1 is a schematic diagram of a method of workflow operation of an embodiment of the present application.
Fig. 2 is a schematic diagram of one SERVICE MESH of an embodiment of the present application.
Fig. 3 is a schematic diagram of step 1 in the flow of an event triggered workflow according to an embodiment of the present application.
Fig. 4 is a schematic diagram of step 2 in the flow of an event triggered workflow according to an embodiment of the present application.
Fig. 5 is a schematic diagram of step 3 in the flow of an event triggered workflow according to an embodiment of the present application.
FIG. 6 is a schematic block diagram of an apparatus for workflow operations of an embodiment of the application.
FIG. 7 is a schematic block diagram of an apparatus for workflow operations of an embodiment of the application.
List of reference numerals:
100, a method for workflow operation according to an embodiment of the present application
110, The first device acquires a workflow;
120, after the first device receives the first event, determining a first function to be called by the first event according to the workflow;
130, if the first device is the device where the first function is located, the first device calls the first function;
140, if the second device is the device where the first function is located, the first device routes the first event to the second device;
CP, control panel (control plane);
f1, function 1;
F2, function 2;
f3, function 3;
S, starting;
S1-S3, wherein the steps 1-3 are carried out;
E, ending;
e1, event 1;
e2, event 2;
D1, device 1;
D2, device 2;
C, container (container);
SC, sidecar (sidecar);
600, workflow-operated means;
610, an acquisition unit;
620, a determining unit;
630, calling a unit;
640, a routing unit;
700, workflow-operated means;
701, a memory;
702, a processor;
703, a communication interface;
704, bus.
Detailed Description
The following describes the technical solution in the embodiment of the present application with reference to the accompanying drawings. It should be understood that the specific examples in this specification are intended to facilitate a better understanding of the embodiments of the application by those skilled in the art and are not intended to limit the scope of the embodiments of the application.
It should be understood that, in various embodiments of the present application, the sequence number of each process does not mean that the execution sequence of each process should be determined by the functional function and the internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
It should also be understood that the various embodiments described in this specification may be implemented either alone or in combination, and the present examples are not limited in this regard.
Unless defined otherwise, all technical and scientific terms used in the embodiments of the application have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used in the present application is for the purpose of describing particular embodiments only and is not intended to limit the scope of the present application.
Currently, when engineers need to deploy or run an application, it generally takes a lot of time to deploy solutions to different devices on site by directly connecting to the devices through data lines. If the application is modified, the application needs to be redeployed, so that the engineer repeats the complex and tedious process.
Further, if tasks need to be run across multiple edge devices to complete a series of business processes, the multiple edge devices may come from different vendors. Therefore, in addition to requiring a great deal of effort to handle the development, communication, debugging and integration of heterogeneous systems, the above problems are encountered at deployment time, which is not only labor-consuming but also inefficient.
In view of this, the embodiment of the application provides a method for calling a function (function), which can effectively improve the working efficiency on the basis of reducing manpower.
FIG. 1 shows a schematic flow diagram of a method 100 of workflow operation of an embodiment of the application. The method 100 may be performed by a first device. As shown in fig. 1, method 100 may include at least some of the following.
In step 110, a first device obtains a workflow.
In step 120, after the first device receives the first event, a first function to be invoked by the first event is determined according to the workflow.
In step 130, if the first device is a device where the first function is located, the first device calls the first function.
In step 140, if the second device is the device where the first function is located, the first device routes the first event to the second device.
Wherein the first device is different from the second device, the first device and/or the second device may be edge devices. An edge device may be a device that provides an entry point to an enterprise or service provider core network. For example, edge devices may include edge routers, routing switches, firewalls, multiplexers, and other wide area network (wide area network, WAN) devices. With the development of artificial intelligence and internet of things (internet of things, ioT) technology, edge devices typically also have built-in processors with on-board analysis or artificial intelligence capabilities, which may include sensors, drivers, and internet of things gateways, etc.
Of course, the first device and the second device may be devices other than edge devices, which is not specifically limited in the embodiment of the present application.
It should be noted that, the term "and/or" herein is merely an association relationship describing the association object, and indicates that three relationships may exist, for example, a and/or B may indicate: a exists alone, A and B exist together, and B exists alone.
Alternatively, the functions above may be, but are not limited to, message queue telemetry transport (message queuing telemetry transport, MQTT) protocol parsing functions, data processing functions, and the like.
The workflow (workflow) is operable to indicate at least one function of an event (event) call of the workflow and an order of execution of the at least one function. It can be seen that the workflow can be used to orchestrate the function functions into a coordinated microservice application, i.e. to combine the function functions and events into one coherent unit, and describe the execution of the function functions and the information passed in a prescribed way.
By way of example, fig. 2 shows a schematic diagram of one possible network of an embodiment of the present application. In fig. 2, the workflow is: the event 1 calls the function 1, and after the function 1 is executed, the function 2 is called. After the execution of function 2, event 2 invokes function 3.
It should be understood that fig. 2 is only for aiding one skilled in the art in better understanding the embodiments of the present application and is not intended to limit the scope of the embodiments of the present application. For example, event 1 may also call function 3, and event 2 may also call function 1 and function 2 after function 3 is executed.
Alternatively, the definition of events and workflows may refer to specification CloudEvents. CloudEvents is a specification describing event data in a generic format to provide interoperability across services, platforms and systems. Of course, the definition of events and workflows may also refer to the cloud native computing foundation (cloud native computing foundation, CNCF) serverless workflow (SERVERLESS WORKFLOW).
Each function in the workflow may be driven by events from different sources, i.e. the workflow of an embodiment of the application is event-triggered. Alternatively, an event may invoke one or more functional functions. As shown in fig. 2, event 1 calls function 1 and function 2, and event 2 calls function 3.
Or multiple events may call a function.
Alternatively, the workflow may be developer-created and preconfigured on the built system. The system herein may be, but is not limited to, a function-as-a-service (function AS A SERVICE, faaS) system. For convenience of description, a system will be described below as a FaaS system.
With continued reference to fig. 2, the faas system may include two parts, one of which is a function management module. The function management module may be used to take charge of full life cycle management of the function, such as creation, release, update, destruction, etc. Illustratively, the function management module may control the lifecycle of the function with reference to the following actions:
(a) Creating: creating a new function, including its specification and code;
(b) And (3) issuing: creating a new version that can be deployed on a cluster (cluster);
(c) Update alias/label (version): updating the version alias;
(d) Obtaining: returning function metadata and specifications;
(e) Updating: modifying the latest version of the function;
(f) Deletion: deleting the function, and deleting the function of a specific version or all versions;
(g) List: displaying a list of function functions and metadata thereof;
(h) Obtaining statistical information: returning statistical information about the use condition of the function during operation;
(i) Obtaining a log: and returning the log generated by the function.
Another part is a workflow management module, which, as shown in fig. 2, includes a workflow.
Before creating the workflow, the developer may first join the first device and/or the second device to the network. Wherein the network may be a service grid (SERVICE MESH).
Continuing with the example of FIG. 2, SERVICE MESH may include a control panel (control plane) and devices. The control panel may perform other actions besides FaaS systems, such as route control management, function registration, function discovery, monitoring, and traffic tracking.
Alternatively, the developer may create a function according to the service requirement and configure the created function on a function management module in the FaaS system. The function management module may then thermally deploy these functions to the device. For example, the function management module may thermally deploy these function functions into a container on the device.
In one possible implementation, the function management module may thermally deploy the functions to different devices based on the resources of each device. That is, the function deployed on the first device may be determined from the resources of the first device, and similarly, the function deployed on the second device may be determined from the resources of the second device.
The resources of the first device and the resources of the second device may be central processing unit (central processing unit, CPU) resources of the first device, gateway resources, etc. The resources of the first device may be total resources of the first device, or resources that are not used by the first device at the current time. Accordingly, the resource of the second device may also be the total resource of the second device or the unused resource of the second device at the current time.
In particular SERVICE MESH is capable of monitoring resource conditions of the first device and the second device. After SERVICE MESH monitors the resource status of the first device and the resource status of the second device, the function management module may be controlled to deploy the function to the first device and the second device, where the function deployed on the device with more resources may be greater than the function deployed on the device with less resources. With continued reference to fig. 2, device 1 has more resources than device 2, then device 1 has more functions deployed on device 1 than device 2, i.e., device 1 has function 1 and function 2 deployed thereon, and device 2 has function 2 deployed thereon. Of course, the function 2 and the function 3 may be deployed on the device 1, and the function 1 may be deployed on the device 2.
It should be understood that the embodiment of the present application does not specifically limit to which device the function is specifically deployed, and only needs to be deployed on a device with more resources than a device with fewer resources.
According to the technical scheme, the function functions are deployed on the equipment according to the resources of the equipment, the function functions deployed on the equipment with more resources are more, and the function functions deployed on the equipment with less resources are relatively less, so that reasonable allocation of the resources and effective utilization of the resources can be realized. Further, the function is deployed on the equipment according to the equipment resources, so that the problem that a certain function must be deployed to a certain equipment is avoided, and the flexibility of deploying the function is improved.
Alternatively, the developer may determine the function that the event mobilizes based on the input of the function. In particular, information may be included in an event, which is an input to a function called by the event. For example, a first event invokes a first function, the first event including first information, the first information being an input to the first function.
Optionally, step 110 may specifically include: the first device receives FaaS the workflow scheduling information sent by the system, the workflow scheduling information identifying a workflow.
As an example, faaS system may send workflow schedule information to the first device every preset time period. The preset time period may be, for example, 5s. In this way, the probability of the first device acquiring the workflow can be improved.
As another example, the first device may receive FaaS the workflow schedule information sent to it by the system before the first device leaves the factory. According to the technical scheme, the workflow can be obtained before the first equipment leaves the factory, so that the workflow can be executed even if the first equipment is disconnected with the central cluster, and the normal execution of the workflow is greatly ensured.
Further, the method 100 may further include: the first device determines the device where the first function is located according to recording information, where the recording information is used for recording the device where each function of at least one function is located.
Optionally, after the function management module deploys at least one function to a different device, the function management module sends record information to each device to notify the device where each of the at least one function is located.
As an example, each device may include a sidecar (sidecar), and the function management module may send the record information to sidecar so that sidecar of each device may record the function deployed on each device. Continuing with the illustration of FIG. 2, sidecar of device 1 may record function 1 and function 3 on device 1, and function 2 on device 2.
After the first device receives the first event, if the first device determines that the first device is the device where the first function is located according to the record information, the first device can directly call the first function.
If the first device determines that the first device is not the device where the first function is located and the second device is the device where the first function is located according to the record information, the first device may route the first event to the second device.
As shown in fig. 3, the device 2 receives the event 1, determines that the event 1 calls the function 1 according to the workflow, and determines that the function 1 is on the device 1, and thus, the device 2 routes the event 1 to the device 1 so that the event 1 calls the function 1, and the device 1 executes the function 1.
As can be seen from fig. 3, the reception of event 1 by device 2 and the routing of event 1 to device 1 by device 2 are both performed by device sidecar. That is, sidecar of device 2 receives event 1 and routes event 1 to sidecar of device 1.
Of course, the device 2 receives the event 1 and the device 2 routes the event 1 to the device 1, which may also be performed by other modules of the device, and the embodiment of the present application is not limited in detail.
Optionally, the second device may further send feedback information to the first device, where the feedback information is used to feedback a result of the second device executing the first function.
For example, the second device may send feedback information, such as a negative acknowledgement (negative acknowledgment, NACK), to the first device during execution of the first function, so that the first device knows that the second device is executing the first function.
Or the second device may send feedback information, such as an Acknowledgement (ACK), to the first device after the first function is performed, so that the first device knows the second device to perform the first function.
According to the technical scheme, under the condition that the equipment for receiving the event is not the equipment where the function called by the event is located, the equipment where the function called by the event is located feeds back the result of executing the function to the equipment for receiving the event after the function is executed, so that the equipment for receiving the event can continue to execute the next step, the invalid waiting time of the equipment for receiving the event is avoided, and the time for executing the whole workflow is greatly shortened.
In order to more clearly understand the embodiment of the present application, the following further illustrates the specific flow of the event-triggered workflow according to the embodiment of the present application with reference to fig. 3 to 5 on the basis of fig. 2.
Step 1
In the initial state, device 1 and device 2 wait for event triggers. When sidecar in device 2 receives event 1, it is determined from the workflow that event 1 calls function 1. Since function 1 is deployed on device 1, sidecar routes event 1 onto device 1 to invoke function 1.
Step 2
After the function 1 is executed, the device 1 transmits feedback information to the sidecar of the device 2 through sidecar, so that the device 2 determines that the function 1 has been executed by the device 1.
Next, the device 2 determines to call the function 2 again from the workflow, the function 2 being disposed on the device 2, and thus the device 2 directly calls the function 2.
It will be appreciated from the workflow that after the function 2 has been executed, event 2 may trigger the workflow to call the function 3. Thus, after executing function 2, the system waits for the triggering of event 2.
Step 3
After receiving event 2, sidecar in device 2 determines from the workflow that event 2 calls function 3. Since function 3 is deployed on device 1, sidecar routes event 2 onto device 1 to invoke function 3.
After performing function 3, the container in device 1 may send feedback information to device 1 sidecar. Thus, the workflow is executed.
According to the embodiment of the application, the function is deployed on the equipment, so that the whole workflow can be completed on the equipment, namely, the application program can be processed by remote deployment without going to the site, and the manpower is greatly reduced. In addition, the device completes the whole workflow according to the workflow for indicating at least one function of event call and the execution sequence of the at least one function, thereby effectively improving the working efficiency.
Further, since the device can acquire the workflow, no matter which device the function is deployed on, the device can determine the function called by the event according to the workflow, and even if the device is not the device where the function is located, the event can be routed to the device where the function is located to call the function, so that the flexibility of the whole system can be improved.
Having described in detail the method embodiments of the present application, the apparatus embodiments of the present application are described below, where the apparatus embodiments and the method embodiments correspond to each other, so that portions not described in detail can refer to the foregoing method embodiments, and the apparatus may implement any possible implementation manner of the foregoing method.
Fig. 6 shows a schematic block diagram of an apparatus 600 for workflow operations of one embodiment of the application. The workflow operation apparatus 600 may perform the workflow operation method 100 according to the embodiment of the present application, and the workflow operation apparatus 600 may be the first device in the foregoing method.
As shown in fig. 6, the workflow-operated apparatus 600 includes:
An obtaining unit 610, configured to obtain workflow scheduling information, where the workflow scheduling information is used to indicate at least one function called by an event of a workflow and an execution sequence of the at least one function;
A determining unit 620, configured to determine, after the first device receives a first event, a first function to be invoked by the first event according to the workflow scheduling information, where an event of the workflow includes the first event, and the at least one function includes the first function;
a calling unit 630, configured to call the first function if the first device is a device where the first function is located;
A routing unit 640, configured to route the first event to the second device if the second device is a device where the first function is located.
Optionally, in one embodiment of the present application, the function deployed on the first device is determined according to the resource of the first device, and the function deployed on the second device is determined according to the resource of the second device.
If the resources of the first device are larger than the resources of the second device, the functions deployed on the first device are more than the functions deployed on the second device.
Optionally, in an embodiment of the present application, if the second device is a device where the first function is located, the apparatus 600 may further include: and the communication unit is used for receiving feedback information sent by the second equipment, and the feedback information is used for feeding back an execution result of the first function executed by the second equipment.
Alternatively, in one embodiment of the present application, the determining unit 620 may be further configured to: and determining the equipment where the first function is located according to recording information, wherein the recording information is used for recording the equipment where each function in the at least one function is located.
Optionally, in one embodiment of the present application, the apparatus 600 may further include: and the communication unit is used for receiving the workflow scheduling information sent by the system.
Optionally, in one embodiment of the present application, the communication unit is specifically configured to: and before the first equipment leaves the factory, receiving the workflow scheduling information sent by the system.
Optionally, in an embodiment of the present application, the first event includes first information, and the first information is an input of the first function.
Optionally, in an embodiment of the present application, the first device and the second device are edge devices.
Fig. 7 is a schematic hardware structure of a workflow operation apparatus according to an embodiment of the present application. The apparatus 700 for workflow operation shown in fig. 7 may be a first device, and the apparatus 700 for workflow operation includes a memory 701, a processor 702, a communication interface 703, and a bus 704. The memory 701, the processor 702, and the communication interface 703 are connected to each other by a bus 704.
The memory 701 may be a read-only memory (ROM), a static storage device, and a random access memory (random access memory, RAM). The memory 701 may store a program, and when the program stored in the memory 701 is executed by the processor 702, the processor 702 and the communication interface 703 are used to perform the steps of the method of workflow operations of an embodiment of the application.
The processor 702 may employ a general-purpose CPU, microprocessor, application Specific Integrated Circuit (ASIC), graphics processor (graphics processing unit, GPU) or one or more integrated circuits for executing associated programs to perform functions required by the elements of the apparatus of embodiments of the present application or to perform methods of workflow operations of embodiments of the present application.
The processor 702 may also be an integrated circuit chip with signal processing capabilities. In implementation, various steps of a method of workflow operations of embodiments of the application may be performed by integrated logic circuitry in hardware or instructions in software form in the processor 702.
The processor 702 may also be a general purpose processor, a digital signal processor (DIGITAL SIGNAL processing, DSP), an ASIC, an off-the-shelf programmable gate array (field programmable GATE ARRAY, FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The disclosed methods, steps, and logic blocks in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of a method disclosed in connection with the embodiments of the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in the processor for execution. The software modules may be located in a random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in the memory 701, and the processor 702 reads information in the memory 701, and in combination with hardware thereof, performs a function to be executed by a unit included in the apparatus of the embodiment of the present application, or performs a method of workflow operation of the embodiment of the present application.
The communication interface 703 enables communication between the workflow-operated apparatus 700 and other devices or communication networks using a transceiver apparatus such as, but not limited to, a transceiver. For example, the apparatus 700 may receive feedback information sent by the second device through the communication interface 703.
A bus 704 may include a path that communicates information between various components of the workflow-operated apparatus 700 (e.g., memory 701, processor 702, communication interface 703).
It should be noted that although the above-described workflow-operated apparatus 700 only shows a memory, a processor, a communication interface, in a specific implementation, those skilled in the art will appreciate that the workflow-operated apparatus 700 may also include other devices necessary to achieve proper operation. Also, as will be appreciated by those skilled in the art, the workflow-operated apparatus 700 may also include hardware devices that implement other additional functional functions, as desired. Furthermore, it will be appreciated by those skilled in the art that the workflow-operated apparatus 700 may also include only the necessary components to implement the embodiments of the application, and not necessarily all of the components shown in FIG. 7.
The embodiment of the application also provides a computer readable storage medium storing program code for device execution, the program code comprising instructions for performing steps in the method of workflow operations described above.
Embodiments of the present application also provide a computer program product comprising a computer program stored on a computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, cause the computer to perform the method of workflow operations described above.
The computer readable storage medium may be a transitory computer readable storage medium or a non-transitory computer readable storage medium.
It will be clear to those skilled in the art that, for convenience and brevity of description, reference may be made to the corresponding process in the foregoing method embodiment for the specific working process of the apparatus described above, which is not described herein again.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, and for example, the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The terminology used in the present application is used for the purpose of describing embodiments only and is not intended to limit the claims. As used in the description of the embodiments and the claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. Similarly, the term "and/or" as used in this disclosure is meant to encompass any and all possible combinations of one or more of the associated listed. Furthermore, when used in the present disclosure, the term "comprising" refers to the presence of stated features, integers, steps, operations, elements, and/or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The aspects, implementations, or features of the described embodiments can be used alone or in any combination. Aspects of the described embodiments may be implemented in software, hardware, or a combination of software and hardware. The described embodiments may also be embodied by a computer-readable medium having stored thereon computer-readable code comprising instructions executable by at least one computing device. The computer readable medium may be associated with any data storage device that can store data which can be thereafter read by a computer system. Computer readable media for example may include read-only memory, random-access memory, compact disk read-only memory (CD-ROM), hard disk drive (HARD DISK DRIVE, HDD), digital video disk (digital video disc, DVD), magnetic tape, optical data storage, and so forth. The computer readable medium can also be distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
The technical description above refers to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration implementations in accordance with the described embodiments. While these embodiments are described in sufficient detail to enable those skilled in the art to practice them, these embodiments are non-limiting; other embodiments may be used, and changes may be made without departing from the scope of the described embodiments. For example, the order of operations described in the flowcharts is non-limiting, and thus the order of two or more operations illustrated in the flowcharts and described in accordance with the flowcharts may be changed in accordance with several embodiments. As another example, in several embodiments, one or more operations illustrated in the flowcharts and described in accordance with the flowcharts are optional or may be deleted. In addition, certain steps or functional functions may be added to the disclosed embodiments or more than two of the step sequences may be substituted. All such variations are considered to be encompassed by the disclosed embodiments and the claims.
Additionally, terminology is used in the above technical description to provide a thorough understanding of the described embodiments. However, no overly detailed details are required to implement the described embodiments. Accordingly, the foregoing description of the embodiments has been presented for purposes of illustration and description. The embodiments presented in the foregoing description and examples disclosed in accordance with these embodiments are provided separately to add context and aid in the understanding of the described embodiments. The foregoing description is not intended to be exhaustive or to limit the described embodiments to the precise form of the application. Several modifications, alternative adaptations and variations are possible in light of the above teachings. In some instances, well known process steps have not been described in detail in order to avoid unnecessarily obscuring the described embodiments.
The foregoing is merely a specific implementation of the embodiment of the present application, but the protection scope of the embodiment of the present application is not limited thereto, and any person skilled in the art can easily think about changes or substitutions within the technical scope of the embodiment of the present application, and the changes or substitutions are covered by the protection scope of the embodiment of the present application. Therefore, the protection scope of the embodiments of the present application shall be subject to the protection scope of the claims.

Claims (11)

  1. A method of workflow operation, comprising:
    The first device obtains (110) a workflow for indicating at least one function of an event call and an execution order of the at least one function;
    After the first device receives a first event, determining (120), according to the workflow, a first function to be invoked by the first event, the event comprising the first event, the at least one function comprising the first function;
    If the first device is the device in which the first function is located, the first device invokes (130) the first function;
    if the second device is the device where the first function is located, the first device routes (140) the first event to the second device.
  2. The method of claim 1, wherein the function deployed on the first device is determined from resources of the first device and the function deployed on the second device is determined from resources of the second device;
    If the resources of the first device are larger than the resources of the second device, the functions deployed on the first device are more than the functions deployed on the second device.
  3. The method according to claim 1 or 2, wherein if the second device is the device where the first function is located, the method further comprises:
    The first device receives feedback information sent by the second device, wherein the feedback information is used for feeding back an execution result of the first function executed by the second device.
  4. A method according to any one of claims 1 to 3, further comprising:
    The first device determines the device where the first function is located according to recording information, where the recording information is used for recording the device where each function of the at least one function is located.
  5. The method according to any one of claims 1 to 4, wherein the first device obtaining (110) a workflow, comprising:
    The first device receives workflow scheduling information sent by a system, and the workflow scheduling information identifies the workflow.
  6. The method of claim 5, wherein the first device receiving workflow scheduling information sent by a system comprises:
    before the first equipment leaves the factory, the first equipment receives the workflow scheduling information sent by the system.
  7. The method according to any one of claims 1 to 6, wherein the first event comprises first information, the first information being an input of the first function.
  8. The method of any one of claims 1 to 7, wherein the first device and the second device are edge devices.
  9. A workflow-operated apparatus (600), the apparatus being a first device, comprising:
    An acquisition unit (610) for acquiring a workflow for indicating at least one function of an event call and an execution order of the at least one function;
    A determining unit (620) configured to determine, according to the workflow, a first function to be invoked by a first event after the first device receives the first event, where the event includes the first event, and the at least one function includes the first function;
    a calling unit (630) configured to call the first function if the first device is a device where the first function is located;
    A routing unit (640) configured to route the first event to the second device if the second device is a device where the first function is located.
  10. A workflow-operated apparatus, comprising:
    a memory (701) for storing a program;
    -a processor (702) for executing a program stored by the memory (701), the processor (702) being adapted to perform the method of workflow operations according to any one of claims 1 to 8 when the program stored by the memory (701) is executed.
  11. A computer readable storage medium storing program code for device execution, the program code comprising instructions for performing steps in a method of workflow operations according to any one of claims 1 to 8.
CN202180102095.6A 2021-09-30 2021-09-30 Workflow operation method and device Pending CN117940904A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/122423 WO2023050410A1 (en) 2021-09-30 2021-09-30 Workflow operation method and apparatus

Publications (1)

Publication Number Publication Date
CN117940904A true CN117940904A (en) 2024-04-26

Family

ID=85781189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180102095.6A Pending CN117940904A (en) 2021-09-30 2021-09-30 Workflow operation method and device

Country Status (2)

Country Link
CN (1) CN117940904A (en)
WO (1) WO2023050410A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20051137A0 (en) * 2005-11-09 2005-11-09 Nokia Corp Method for constructing and executing a distributed case review in a communication system
KR20170024488A (en) * 2015-08-25 2017-03-07 에스프린팅솔루션 주식회사 Method and image forming divice for generating workform of image forming job
US10565034B2 (en) * 2017-12-29 2020-02-18 Futurewei Technologies, Inc. Event-driven serverless function orchestration
US10853154B2 (en) * 2019-01-30 2020-12-01 Salesforce.Com, Inc. Orchestration of a sequence of computations by external systems
CN113067898B (en) * 2021-06-02 2021-08-10 支付宝(杭州)信息技术有限公司 Method for scheduling computing services for business process contracts

Also Published As

Publication number Publication date
WO2023050410A1 (en) 2023-04-06

Similar Documents

Publication Publication Date Title
JP6823203B2 (en) Methods and devices for creating network slices and communication systems
CN107729139B (en) Method and device for concurrently acquiring resources
US10540211B2 (en) Elasticity for highly available applications
US10469313B2 (en) Data file registration management system, method, management apparatus, and recording medium
US20180018192A1 (en) Network functions virtualization management and orchestration method, network functions virtualization management and orchestration system, and program
WO2019200984A1 (en) Life cycle management method for distributed application, managers, device and medium
CN111176818B (en) Distributed prediction method, device, system, electronic equipment and storage medium
CN103365667A (en) Method and device for installing operating system in host system
CN103645909A (en) Handling method and device for timed task
US20180004563A1 (en) Orchestrator apparatus, system, virtual machine creation method, and computer-readable recording medium
CN106953746A (en) Clustered node upgrade-system and method
US11223522B1 (en) Context-based intelligent re-initiation of microservices
CN111124286A (en) Libcloud-based multi-cloud management implementation method
CN107005586A (en) A kind of method and apparatus for managing virtual network function
WO2020062914A1 (en) Method and device for updating algorithm
CN112407326B (en) Unmanned aerial vehicle system fault diagnosis method and device, electronic equipment and storage medium
US20100228951A1 (en) Parallel processing management framework
CN113986662A (en) Edge cluster monitoring method and system
CN117940904A (en) Workflow operation method and device
CN109660379B (en) Network method, system and terminal
CN115495140A (en) Service creation method and system based on k8s
CN115309700A (en) Universal architecture implementation method for heterogeneous file service
CN112350842B (en) Method for resetting data transmission network in distributed training task training process
CN114327530A (en) Method and device for updating model file and computing equipment
CN115328693A (en) Method, device, equipment and storage medium for recovering service in service process

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