CN112581080A - Lightweight distributed workflow engine construction system - Google Patents

Lightweight distributed workflow engine construction system Download PDF

Info

Publication number
CN112581080A
CN112581080A CN202011464618.5A CN202011464618A CN112581080A CN 112581080 A CN112581080 A CN 112581080A CN 202011464618 A CN202011464618 A CN 202011464618A CN 112581080 A CN112581080 A CN 112581080A
Authority
CN
China
Prior art keywords
workflow
workflow engine
engine
module
database
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
CN202011464618.5A
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.)
Southern Power Grid Digital Grid Research Institute Co Ltd
Hainan Digital Power Grid Research Institute of China Southern Power Grid Co Ltd
Original Assignee
Hainan Digital Power Grid Research Institute of China Southern Power Grid 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 Hainan Digital Power Grid Research Institute of China Southern Power Grid Co Ltd filed Critical Hainan Digital Power Grid Research Institute of China Southern Power Grid Co Ltd
Priority to CN202011464618.5A priority Critical patent/CN112581080A/en
Publication of CN112581080A publication Critical patent/CN112581080A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention provides a lightweight distributed workflow engine construction system which comprises a workflow engine, a workflow engine client and a database, wherein the workflow engine is used for workflow process processing and workflow process data maintenance, the workflow engine client is used for sending a user workflow instance to the workflow engine, the database is used for storing workflow process data of the workflow engine, the workflow engine client is in data connection with the workflow engine through a data processing interface, and the database is in data connection with the workflow engine. The workflow engine has high flexibility, high expansibility and high availability, can enable business processing of enterprises to be faster and more timely, and improves the efficiency of enterprise management.

Description

Lightweight distributed workflow engine construction system
Technical Field
The invention relates to the technical field of engine construction, in particular to a lightweight distributed workflow engine construction system.
Background
Workflow is the automation of whole or partial business processes under computer applications, automatically passing tasks, documents or information between multiple participants according to certain predefined rules in order to achieve business goals. The concept of workflow has originated in the field of production organizations and office business automation, and with the increasing popularity of computer applications in computers and enterprises, related personnel desire to perform daily business work in paperless, computer-supported work environments. People solidify and split the work with fixed programs, distribute the tasks after splitting the flow to the people with different roles, and then execute the tasks in sequence. The application of the workflow technology improves the enterprise management efficiency and the operation cost, so that the enterprise is more competitive.
The workflow engine is mainly responsible for the operation of the process and the maintenance of process data, and provides service support for an upper business system. When multiple business systems access the engine simultaneously, the difficulty of engine data query and maintenance is multiplied. The method is mainly characterized in that when the number of the process deployments reaches a certain scale, a large amount of tasks, process instances and postscript data are accumulated, and the retrieval efficiency during data processing and query is reduced.
In an enterprise information system, a workflow engine is in a core position and is a task scheduler and a resource distributor of the system, but due to the characteristic of complexity and diversity of enterprise business, the traditional workflow system still has some defects in supporting the processing of the enterprise business, mainly manifested by complex architecture, low scalability, flexibility and availability, and difficulty in integrating with an industrial system. Therefore, the difficulty of the business system in developing the business based on the workflow products is high, and the business data processing is extremely complex.
The traditional workflow products mostly adopt a single framework to carry out system development and carry out centralized processing on business process data. Although the mode is beneficial to the rapid construction, operation and maintenance of the workflow management system in the initial stage, with the rapid increase of the service quantity and the complex requirements, the system cannot be flexibly expanded, the operation efficiency is not high, the integration difficulty with the service system is high, the data management difficulty is difficult, and other major defects also occur.
Disclosure of Invention
Accordingly, the present invention is directed to a lightweight distributed workflow engine building system, which solves the above problems of the prior art.
A lightweight distributed workflow engine construction system comprises a workflow engine, a workflow engine client and a database, wherein the workflow engine is used for workflow process and workflow process data maintenance, the workflow engine client is used for sending a user workflow instance to the workflow engine, the database is used for storing workflow process data of the workflow engine, the workflow engine client is in data connection with the workflow engine through a data processing interface, and the database is in data connection with the workflow engine.
Furthermore, the workflow engine comprises a workflow execution module, a workflow model construction module and a workflow exception handling module, wherein the workflow execution module is used for executing a workflow instance, the workflow model construction module is used for handling workflow process, and the workflow exception handling module is used for maintaining workflow process data.
Further, the workflow model building module is a state diagram and activity diagram based modeling module.
Further, the workflow exception handling module comprises an exception ignoring module, a retry module, a modification module, a backward recovery module and a modification model module.
Further, the database comprises a local database and an external database, the local database is in data connection with the workflow engine, and the external database is in data connection with the workflow engine through the communication module.
Further, the workflow execution module comprises a process parser, a process manager, a task distributor, a routing controller and an executor.
Further, the workflow engine is configured to implement the following steps:
s1: a user starts a certain workflow instance through a workflow engine client;
s2: the workflow engine reads the corresponding workflow model from the database or the XML file;
s3: when the user finishes the operation of a certain node, the workflow engine determines the circulation direction of the workflow instance, determines the next operation node and the operable role of the node until the circulation of the instance is finished.
Further, the system also comprises an external modeling tool which is in data connection with the workflow engine.
Furthermore, the distributed workflow engine keeps the original workflow engine to perform local processing, and a main control engine is added to manage the distribution of the model, the console service and the remote access.
Compared with the prior art, the invention has the beneficial effects that:
the invention provides a lightweight distributed workflow engine construction system, wherein a user sends a workflow instance to a workflow engine through a workflow engine client, the workflow engine performs optimization processing on the workflow instance, a lightweight design principle is adopted, namely, the workflow engine only needs to realize necessary functions without excessive pursuit of a complex structure, the key point is to improve the execution efficiency and flexibility of the engine, all modules of the workflow engine are mutually coordinated to construct a workflow engine with high flexibility, high expansibility and high availability, the complexity of a system structure and a database is simplified, a single workflow instance allows parallel calculation and resource sharing between a plurality of servers and the client, the execution efficiency is further improved, the business processing of an enterprise is faster and more timely, and the enterprise management efficiency is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is apparent that the drawings in the following description are only preferred embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained based on these drawings without inventive efforts.
Fig. 1 is a system flowchart of a lightweight distributed workflow engine building system according to an embodiment of the present invention.
Fig. 2 is a system flowchart of a lightweight distributed workflow engine building system according to an embodiment of the present invention.
Detailed Description
The principles and features of this invention are described below in conjunction with the following drawings, the illustrated embodiments are provided to illustrate the invention and not to limit the scope of the invention.
Example one
Referring to fig. 1 and fig. 2, the present invention provides a lightweight distributed workflow engine construction system, including a workflow engine, a workflow engine client and a database, where the workflow engine is used for workflow process and workflow process data maintenance, the workflow engine client is used for sending a user workflow instance to the workflow engine, the database is used for storing workflow process data of the workflow engine, the workflow engine client is in data connection with the workflow engine through a data processing interface, and the database is in data connection with the workflow engine; the workflow engine client is responsible for managing a workflow work item list and finishing the interaction with the end user, and the workflow item list manager can be provided for the user as a part of a workflow management system or can be a program written by the user. The workflow engine comprises a workflow execution module, a workflow model construction module and a workflow exception handling module, wherein the workflow model construction module is used for processing workflow processes, the workflow exception handling module is used for maintaining workflow process data, and the workflow engine drives the workflow instances to correctly flow by taking the workflow model as a basis, namely, the workflow engine starts, executes and ends a workflow instance and controls the execution of each activity in the instance in the whole process. Each activity in the workflow instance has the corresponding operation role, when the instance is transferred to a certain activity, the activity is operated by the role personnel corresponding to the activity, and other role personnel cannot participate in the operation of the activity. And when a certain activity operation is finished, determining the flow direction of the instance according to the operation result, and continuously repeating the process until the instance is finished.
The workflow model building module is a modeling module based on a state diagram and an activity diagram, wherein the activity diagram is a directed diagram and uses directed arcs marked with data information to represent data flow among activities, and the state diagram reflects the dynamic behavior of the system, so that the workflow model building module is suitable for describing the control flow among the activities in the workflow. A state diagram is essentially a finite state machine with well-defined start and stop states, and transitions between states are driven by one-to-one. Therefore, the model can be described from different angles, so that different people can better describe the system.
The workflow exception handling module comprises an exception ignoring module, a retry module, a modification module, a backward recovery module and a modification model module, wherein the exception ignoring module can ignore the occurring exception, namely, the exception has no influence on the correct execution of the workflow process or the influence can be ignored. In this case, the system can directly return to the normal operation state from the exception handling state; the retry module can re-execute the error task until the task operation is completed correctly or the set maximum retry number is exceeded, and the user may take some other external operations in the retry process, such as recovering the network connection and the like; and a modification module: the abnormal occurrence of the workflow instance is caused by that some attributes or data of the workflow instance are not in accordance with the correct value or the expected value, and the purpose of solving the abnormal situation can be achieved by directly modifying the attributes or data; a backward recovery module: the backward recovery enables the state of the workflow instance to be recovered to a normal state which can be re-executed by compensating the executed task, and then the operation of the instance is restarted along the original path or other reasonable paths through manual navigation; modifying the model module: and modifying the model to modify the model corresponding to the workflow instance. The modification model may be created only for the current instance, i.e. a temporary model is created for the current instance, or the modifications may be saved in the model definition, thereby affecting other instances and new instances.
The database comprises a local database and an external database, the local database is in data connection with the workflow engine, the external database is in data connection with the workflow engine through a communication module, and the communication module can adopt the existing model of GPRS, WiFi or other communication modules.
The workflow execution module comprises a flow analyzer, a flow manager, a task distributor, a routing controller and an executor, wherein the flow analyzer analyzes a flow model created by an external modeling tool into a data object according to different workflow modeling rules and stores the data object in a database; the process manager performs instantiation operation according to the process object analyzed by the process analyzer, controls the operations of starting, suspending, recovering and stopping the workflow instance, and provides the workflow instance with data information related to the operation. The process manager is generally responsible for managing all workflow instances of the engine; in the execution process of the business process, the task distributor distributes the work tasks to a plurality of responsible persons, and the distributor distributes the workflow instances to proper persons according to actual conditions to ensure that the workflow management system runs at a high speed. If the process analyzer is responsible for analyzing the specific process annotation specification, the task distributor reasonably distributes the system resources to the optimal person; the routing controller monitors the operation of the workflow instance, executes specific activities in the instance, changes the state of the instance as long as receiving an ending command, and ends the execution of the current flow; the executor monitors the operation of the workflow instance, executes specific activities in the workflow instance, changes the state of the workflow instance as long as an end command is received, and ends the execution of the current flow.
The workflow engine is configured to implement the following steps:
s1: a user starts a certain workflow instance through a workflow engine client;
s2: the workflow engine reads the corresponding workflow model from the database or the XML file;
s3: when the user completes the operation of a certain node, the workflow engine determines the circulation direction of the workflow instance, namely determines the next operation node and the operable role of the node, and the operation is continued until the circulation of the instance is finished.
Also included is an external modeling tool in data connection with the workflow engine, which may be existing computer software.
The distributed workflow engine reserves the original workflow engine to perform local processing, and a main control engine is added to manage the distribution of the model, the service of the console and the remote access.
The bottom layer communication mechanism of the system adopts a standard message communication mode, and the reliability of interoperation between the systems is ensured. The distributed workflow engine system is additionally provided with a node distributor so as to distribute the activity model to other engines to be executed and realize interoperation. The logical nodes do not represent activities that really need to be performed, and are set up to represent logical relationships between task nodes. In a workflow process, the logical relationships between activities are not merely serial order relationships, but rather may be more complex combinations of AND, OR relationships. The method mainly comprises five basic logical relations, namely sequence, and branch (and sink node), and merge (and sink node), or branch (or sink node), or merge (or sink node). And the remittance node starts all subsequent activities after the node. And the sink node waits for all the receivers of the sink activities to finish the activities before starting the later activities. Or the remittance node selects a successor node meeting the conditions to execute according to the conditions, the remittance node or the remittance node comprises a special voting remittance node, the node counts the vote number of the prior dependent activities, and the subsequent activity to be started is determined according to whether the vote number meets the specified vote number or not. Or the aggregation node starts the activity when any activity depending on the current activity is finished.
The efficiency and the independence of the workflow engine are improved by adopting a lightweight design principle, so that the engine can stably and efficiently run.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (9)

1. A lightweight distributed workflow engine construction system is characterized by comprising a workflow engine, a workflow engine client and a database, wherein the workflow engine is used for workflow process and workflow process data maintenance, the workflow engine client is used for sending a user workflow instance to the workflow engine, the database is used for storing workflow process data of the workflow engine, the workflow engine client is in data connection with the workflow engine through a data processing interface, and the database is in data connection with the workflow engine.
2. The system according to claim 1, wherein the workflow engine comprises a workflow execution module, a workflow model construction module and a workflow exception handling module, the workflow execution module is configured to execute the workflow instance, the workflow model construction module is configured to handle the workflow process, and the workflow exception handling module is configured to maintain the workflow process data.
3. The lightweight distributed workflow engine building system according to claim 2, wherein the workflow model building module is a state diagram and activity diagram based modeling module.
4. The lightweight distributed workflow engine building system of claim 2, wherein the workflow exception handling module comprises an ignore exception module, a retry module, a modify module, a backward recovery module and a modify model module.
5. The system according to claim 1, wherein the database comprises a local database and an external database, the local database is in data connection with the workflow engine, and the external database is in data connection with the workflow engine through the communication module.
6. The lightweight distributed workflow engine building system according to claim 2 wherein the workflow execution module comprises a process parser, a process manager, a task dispatcher, a routing controller and an executor.
7. The lightweight distributed workflow engine building system according to claim 1, wherein the workflow engine is configured to implement the steps of:
s1: a user starts a certain workflow instance through a workflow engine client;
s2: the workflow engine reads the corresponding workflow model from the database or the XML file;
s3: when the user finishes the operation of a certain node, the workflow engine determines the circulation direction of the workflow instance, determines the next operation node and the operable role of the node until the circulation of the instance is finished.
8. The lightweight distributed workflow engine building system of claim 1 further comprising an external modeling tool in data connection with the workflow engine.
9. The lightweight distributed workflow engine building system of claim 1 wherein the distributed workflow engine retains the original workflow engine for local processing and adds a master control engine to manage model distribution, console services and remote access.
CN202011464618.5A 2020-12-14 2020-12-14 Lightweight distributed workflow engine construction system Pending CN112581080A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011464618.5A CN112581080A (en) 2020-12-14 2020-12-14 Lightweight distributed workflow engine construction system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011464618.5A CN112581080A (en) 2020-12-14 2020-12-14 Lightweight distributed workflow engine construction system

Publications (1)

Publication Number Publication Date
CN112581080A true CN112581080A (en) 2021-03-30

Family

ID=75131933

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011464618.5A Pending CN112581080A (en) 2020-12-14 2020-12-14 Lightweight distributed workflow engine construction system

Country Status (1)

Country Link
CN (1) CN112581080A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115292022A (en) * 2022-09-29 2022-11-04 泰豪软件股份有限公司 Workflow engine system, implementation method, storage medium and computer equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120227044A1 (en) * 2011-03-03 2012-09-06 Tata Consultancy Services Limited Automated workflow manager
CN105046408A (en) * 2015-06-25 2015-11-11 国网山东省电力公司 Configurable workflow realization method and system
CN105678522A (en) * 2016-01-12 2016-06-15 华东电网有限公司 Workflow engine and project management system based on workflow

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120227044A1 (en) * 2011-03-03 2012-09-06 Tata Consultancy Services Limited Automated workflow manager
CN105046408A (en) * 2015-06-25 2015-11-11 国网山东省电力公司 Configurable workflow realization method and system
CN105678522A (en) * 2016-01-12 2016-06-15 华东电网有限公司 Workflow engine and project management system based on workflow

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
万定生, 余长海: "基于Shark的分布式工作流系统的设计与实现", 微电子学与计算机, no. 02, pages 96 - 99 *
万定生等: ""基于 shark的分布式工作流系统的设计与实现"", 《微电子学与计算机》, vol. 22, no. 2, pages 96 - 99 *
李富剑;: "工作流异常处理技术的研究", 福建电脑, no. 10 *
林春杰;郭洪涛;: "基于Petri网的轻量级工作流引擎研究", 洛阳师范学院学报, no. 02 *
肖斌;秦光源;: "基于Web Service的工作流技术研究", 计算机与信息技术, no. 10 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115292022A (en) * 2022-09-29 2022-11-04 泰豪软件股份有限公司 Workflow engine system, implementation method, storage medium and computer equipment

Similar Documents

Publication Publication Date Title
US7779298B2 (en) Distributed job manager recovery
Gu et al. Liquid: Intelligent resource estimation and network-efficient scheduling for deep learning jobs on distributed GPU clusters
Peng et al. Assignment and scheduling communicating periodic tasks in distributed real-time systems
JP6223569B2 (en) Computer apparatus, method and apparatus for scheduling business flows
CN111061788B (en) Multi-source heterogeneous data conversion integration system based on cloud architecture and implementation method thereof
CN111694888A (en) Distributed ETL data exchange system and method based on micro-service architecture
US20020091559A1 (en) Work flow management method and work flow management system of controlling a work flow
CN106681820B (en) Extensible big data computing method based on message combination
CN109299180B (en) ETL operating system of data warehouse
CN107203421B (en) Self-adaptive combined workflow method in cloud computing environment
CN112579267A (en) Decentralized big data job flow scheduling method and device
CN110740079B (en) Full link benchmark test system for distributed scheduling system
CN114816694A (en) Multi-process cooperative RPA task scheduling method and device
CN112581080A (en) Lightweight distributed workflow engine construction system
CN113821322A (en) Loosely-coupled distributed workflow coordination system and method
CN114791931A (en) Data management method based on datax
Chen et al. Pisces: optimizing multi-job application execution in mapreduce
CN112015528B (en) Industrial control system software control flow construction and analysis method
CN102214094B (en) Operation is performed via asynchronous programming model
CN116974994A (en) High-efficiency file collaboration system based on clusters
CN114579280B (en) Quasi-real-time scheduling method and system
CN116109260A (en) TOC multi-project management method and system based on key chain method
CN115056234A (en) RPA controller scheduling method and system based on event driving and infinite state machine
WO2021208240A1 (en) Pull mode and push mode combined resource management and job scheduling method and system, and medium
CN114237858A (en) Task scheduling method and system based on multi-cluster network

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