Non-blocking and extensible process management system
By designing a non-blocking, scalable process management system with a three-layer architecture, the blocking and enclosing problems of existing systems when dealing with concurrent processes are solved, efficient, flexible and adaptable process management is achieved, and the system is improved execution efficiency and stability.
Patent Information
- Application Number
- CN202411537467.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2025-02-14
AI Technical Summary
Existing process management systems are prone to blockage when handling a large number of concurrent processes, the system architecture is closed and does not have flexibility and scalability, the plug-in mechanism is imperfect, and monitoring and scheduling are insufficient, resulting in low process execution efficiency, rich functionality and adaptability. insufficient.
Design a non-blocking and scalable process management system, adopting a three-layer architecture, including process management layer, process scheduling layer and plug-in layer. The process management layer is responsible for the creation, management and monitoring of global processes. The process scheduling layer ensures the accurate execution of plug-in tasks through distributed deployment and efficient interaction. The plug-in layer supports dynamic loading and unloading to achieve hot updates.
It realizes non-blocking execution of the process, significantly improves the process execution efficiency, the system architecture is open and flexible, supports dynamic expansion of plug-ins, and efficient monitoring and scheduling, enhancing the adaptability and stability of the system.
Smart Images

Figure CN119440765A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information technology, and in particular to a non-blocking and extensible process management system. Background Art
[0002] With the continuous expansion and complexity of corporate business, traditional process management systems have gradually exposed many shortcomings. First, the existing system is prone to blocking when handling a large number of concurrent processes, resulting in low process execution efficiency. Secondly, the system architecture is often relatively closed, lacking flexibility and scalability, and it is difficult to meet the rapidly changing needs of enterprises. Furthermore, the plug-in mechanism is imperfect, and it is difficult for third-party developers to easily integrate new functions into the system, which limits the functional richness and adaptability of the system. In addition, the existing system also has many drawbacks in process monitoring, task scheduling, and plug-in management, such as inaccurate monitoring data, low scheduling efficiency, poor plug-in compatibility, etc., which seriously affect the stability of the system and user experience.
[0003] Patent No. CN118172589A (A Patent Application Process Management System and Method) describes a patent application process management system. Although the system realizes the process information management of patent documents through image acquisition module and image analysis module, its automation and intelligence level still need to be improved in actual application. In particular, when processing a large number of patent documents, the response speed and accuracy of the system may be affected.
[0004] In addition, although patent number CN117980929A (assembly process recording system and method) provides a system for recording the assembly process, it has limitations in the flexibility and scalability of process management. The system may not be well adapted to the business process requirements of different enterprises, resulting in the need for a large amount of customized development in practical applications.
[0005] In summary, the current patents in related fields are still insufficient in terms of the automation level, intelligence level, flexibility and scalability of process management systems. Therefore, it is necessary to continue to increase research and development efforts to promote technological innovation and upgrading of process management systems to meet the growing business needs of enterprises. At the same time, when choosing a process management system, enterprises should also fully consider factors such as the system's automation level, intelligence level, and whether it has sufficient flexibility and scalability. Summary of the invention
[0006] The technical problems to be solved by the present invention are: (1) process execution blocking: the existing system is prone to blocking when processing a large number of concurrent processes, resulting in low process execution efficiency; (2) system closedness: the traditional system architecture lacks flexibility and scalability, and it is difficult to meet the rapidly changing needs of enterprises; (3) imperfect plug-in mechanism: it is difficult for third-party developers to easily integrate new functions into the system, which limits the functional richness and adaptability of the system; (4) insufficient monitoring and scheduling: the existing system has many drawbacks in process monitoring, task scheduling and plug-in management, such as inaccurate monitoring data, low scheduling efficiency, poor plug-in compatibility and other problems.
[0007] In order to solve the above technical problems, the technical solution provided by the present invention is: a non-blocking and scalable process management system, including a process management layer, a process scheduling layer and a plug-in layer based on a three-layer architecture. The process management layer is the core and hub of the entire system. This layer is responsible for the creation, fine management and continuous monitoring of the global process. At the same time, it provides a convenient plug-in registration and integration mechanism for third-party developers. Through rich external interfaces and intuitive interactive pages, it realizes seamless docking and function calling with third-party systems; the process scheduling layer deploys various types of agents in a distributed manner, and has the ability to interact efficiently with various plug-ins, thereby ensuring the accurate execution of plug-in tasks. The process scheduling layer is responsible for real-time tracking and reporting of the execution status and results of the plug-ins, providing real-time and accurate data support for process monitoring, and supporting dynamic loading and unloading of plug-ins to achieve hot update functions, greatly improving the flexibility and maintenance efficiency of the system; the plug-in layer brings together many plug-ins with different functions, each of which is independently responsible for completing specific business process tasks. These plug-ins follow the design principles of independence and reusability, which is convenient for enterprises to flexibly expand and customize according to actual needs. The plug-in layer and the process scheduling layer use standardized interactive protocols for communication, ensuring the compatibility and interchangeability between plug-ins, thereby further enhancing the scalability and adaptability of the system.
[0008] Furthermore, the work steps of the process management layer include: (1) process management: responsible for the creation, editing, and deletion of global processes to ensure the integrity and accuracy of the processes;
[0009] (2) Instance query: Provides the query function for process instances, allowing users to understand the execution status and historical records of the current process;
[0010] (3) Scheduling management: manage and configure the process scheduling layer to ensure that process tasks can be executed according to the scheduled time and sequence;
[0011] (4) Data query: Provides query and report generation functions for process data to help users analyze process execution status and results;
[0012] (5) Plug-in management: responsible for the registration, integration, update, and uninstallation of plug-ins to ensure the availability and security of plug-ins;
[0013] (6) Log query: Provides query and analysis functions for process execution logs, making it easier for users to troubleshoot problems and optimize processes;
[0014] (7) Instance management: monitor and manage process instances to ensure that the process can be executed normally and handle abnormal situations;
[0015] (8) Open page: Provides an intuitive interactive page to facilitate user process management and configuration;
[0016] (9) System management: overall management and configuration of the system, including user management, permission management, etc.
[0017] Furthermore, the process management layer interacts with third-party systems through a variety of external interfaces, including RESTful API and WebSocket. It provides intuitive interactive pages through which users can manage and configure processes. The process management layer passes process tasks to the process scheduling layer for execution through an internal communication mechanism.
[0018] Furthermore, the working steps of the process scheduling layer include: (1) Task scheduling: scheduling and executing process tasks according to the instructions of the process management layer;
[0019] (2) Real-time tracking: Real-time tracking of the execution status of the plug-in to ensure that the task can be completed according to the scheduled time and order;
[0020] (3) Result reporting: Report the execution results of the plug-in to the process management layer to provide real-time and accurate data support for process monitoring;
[0021] (4) Dynamic loading and unloading: Supports dynamic loading and unloading of plug-ins, implements hot updates, and improves system flexibility and maintenance efficiency.
[0022] Furthermore, the process scheduling layer interacts with the process management layer through an internal communication mechanism, receives instructions from the process management layer and returns execution results; communicates with the plug-in layer through a standardized interaction protocol, assigns tasks to corresponding plug-ins for execution, and receives the execution results of the plug-ins; the process scheduling layer interacts with the database and message queue to obtain the required data and resources, and the Agent types it contains include HttpAgent, ShellAgent, SocketAgent, BatAgent, ExeAgent, and JarAgent.
[0023] Furthermore, the functions of the plug-in layer include: (1) File parsing: parsing and processing Excel and CSV files; (2) Instrument detection: detecting and collecting data on instruments and equipment; (3) Notification issuance: sending notifications and reminders to users or systems; (4) Data cleaning: cleaning and converting raw data to meet the needs of subsequent processing; (5) Printing processing: printing and processing documents or reports; (6) Report submission: generating and submitting various reports and data; (7) Task issuance: issuing tasks to other systems or modules for execution; (8) Model triggering: triggering specific business models or algorithms for calculation and analysis; (9) Equipment scheduling: scheduling and controlling equipment, such as starting, stopping, and adjusting parameters.
[0024] Furthermore, the plug-in layer communicates with the process scheduling layer through standardized interaction protocols, receives tasks and performs corresponding operations, and the plug-ins interact and collaborate to complete more complex business processes; the plug-in layer interacts with the database, file system, and network communication platform to obtain the required data and resources, and can expand functions based on the protocol.
[0025] Compared with the prior art, the advantages of the present invention are: (1) non-blocking design: by optimizing the system architecture and distributed deployment, non-blocking execution of the process is achieved, which significantly improves the efficiency of process execution; (2) strong scalability: the system architecture is open and flexible, supporting dynamic loading and unloading of plug-ins, and enterprises can flexibly expand and customize according to actual needs; (3) perfect plug-in mechanism: a convenient plug-in registration and integration mechanism is provided, and third-party developers can easily integrate new functions into the system, enriching the system functions; (4) efficient monitoring and scheduling: real-time tracking and reporting of the execution status and results of the plug-in, providing accurate data support for process monitoring; at the same time, the efficient scheduling mechanism ensures the accurate execution of tasks; (5) good compatibility: the plug-in layer and the process scheduling layer use a standardized interaction protocol for communication, which ensures the compatibility and interchangeability between plug-ins and enhances the adaptability and stability of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Figure 1 It is a schematic diagram of the architecture of the present invention.
[0027] Figure 2 It is a schematic diagram of the workflow of the present invention. DETAILED DESCRIPTION
[0028] The present invention is further described in detail below in conjunction with the accompanying drawings.
[0029] Embodiment 1
[0030] like Figure 1As shown, the process management system of the present invention adopts a three-layer architecture design, in which the process management layer is the core and hub of the entire system, responsible for the creation, fine management and continuous monitoring of the global process. This layer provides rich external interfaces (such as RESTful API, WebSocket) and intuitive interactive pages, which facilitates third-party developers to register and integrate plug-ins, and realize seamless docking and function calls with third-party systems. The working steps of the process management layer include: (1) Process management: create, edit, and delete global processes to ensure the integrity and accuracy of the processes; (2) Instance query: provide query functions for process instances to facilitate users to understand the execution status and historical records of the current process; (2) Scheduling management: manage and configure the process scheduling layer to ensure that process tasks can be executed according to the scheduled time and sequence; (3) Data query: query and generate process data reports to help users analyze process execution status and results; (4) Plug-in management: register, integrate, update, and uninstall plug-ins to ensure the availability and security of plug-ins; (5) Log query: query and analyze process execution logs to facilitate users to troubleshoot problems and optimize processes; (6) Instance management: monitor and manage process instances to ensure that the process can be executed normally and handle abnormal situations; (7) Open page: provide intuitive interactive pages to facilitate users to manage and configure processes; (8) System management: overall management and configuration of the system, including user management, permission management, etc.
[0031] The process scheduling layer deploys various types of agents in a distributed manner and has the ability to interact efficiently with various plug-ins. This layer is responsible for real-time tracking and reporting the execution status and results of plug-ins, providing real-time and accurate data support for process monitoring. At the same time, it supports dynamic loading and unloading of plug-ins to achieve hot update functions, greatly improving the flexibility and maintenance efficiency of the system. The working steps of the process scheduling layer include: (1) Task scheduling: scheduling and executing process tasks according to the instructions of the process management layer; (2) Real-time tracking: real-time tracking of the execution status of plug-ins to ensure that tasks can be completed according to the scheduled time and sequence; (3) Result reporting: reporting the execution results of plug-ins to the process management layer to provide data support for process monitoring; (4) Dynamic loading and unloading: supporting dynamic loading and unloading of plug-ins to achieve hot update.
[0032] The plug-in layer brings together many plug-ins with different functions, each of which is responsible for completing specific business process tasks. These plug-ins follow the design principles of independence and reusability, which makes it easy for enterprises to flexibly expand and customize them according to actual needs. The plug-in layer and the process scheduling layer use standardized interactive protocols to communicate, ensuring the compatibility and interchangeability between plug-ins. The working steps of the plug-in layer include: (1) File parsing: parsing and processing Excel, CSV and other files; (2) Instrument detection: testing and data collection of instruments and equipment; (3) Notification issuance: sending notifications and reminders to users or systems; (4) Data cleaning: cleaning and converting raw data; (5) Printing processing: printing documents or reports; (6) Report submission: generating and submitting various reports and data; (7) Task issuance: issuing tasks to other systems or modules for execution; (8) Model triggering: triggering specific business models or algorithms for calculation and analysis; (9) Equipment scheduling: scheduling and controlling equipment.
[0033] Based on the above-mentioned hierarchical architecture, the non-blocking and extensible process management system of the present invention receives process management instructions from users or third-party systems through the process management layer, and performs operations such as creation, editing, and deletion of global processes. The process management layer passes the process tasks to the process scheduling layer through the internal communication mechanism for execution. The process scheduling layer assigns tasks to corresponding agents and plug-ins for execution according to the task type, and tracks the execution status of the plug-ins in real time. After receiving the task, the plug-in layer performs the corresponding operation and returns the execution result to the process scheduling layer. The process scheduling layer reports the execution result to the process management layer, and the process management layer performs process monitoring and data analysis based on the execution result, and provides intuitive interactive pages for users to manage and configure the process.
[0034] Embodiment 2
[0035] Based on the first embodiment, Figure 2 As shown, the following is a specific embodiment of the present invention:
[0036] (1) System deployment: Deploy the process management layer, process scheduling layer, and plug-in layer on corresponding servers to ensure smooth communication between the layers.
[0037] (2) Plug-in development: Develop corresponding plug-ins based on the actual needs of the enterprise, and follow the design principles of independence and reusability to ensure the flexibility and scalability of the plug-ins.
[0038] (3) Process creation: Create a global process through the interactive page of the process management layer and configure the corresponding task nodes and plug-ins.
[0039] (4) Task Scheduling: The process management layer passes the process tasks to the process scheduling layer. The process scheduling layer assigns the tasks to the corresponding agents and plug-ins for execution based on the task type.
[0040] (5) Real-time tracking: The process scheduling layer tracks the execution status of the plug-in in real time to ensure that the task can be completed according to the scheduled time and sequence.
[0041] (6) Result reporting: After the plug-in is executed, the execution result is returned to the process scheduling layer, and the process scheduling layer reports the execution result to the process management layer.
[0042] (7) Process monitoring: The process management layer monitors the process and performs data analysis based on the execution results, and provides an intuitive interactive page for users to manage and configure the process.
[0043] (8) Plug-in update: When enterprise needs change, the plug-in management function of the process management layer can be used to dynamically load, unload and update plug-ins to achieve hot update function.
[0044] Embodiment 3
[0045] Based on the first embodiment, Figure 2 As shown, the workflow of the management layer includes: (1) process triggering; (2) process creation; (3) node triggering; (4) judging whether there is a plug-in queue, otherwise judging whether the flow queue is satisfied, if not, staying at the current node, otherwise flowing to the next node; (5) if there is a plug-in queue, then transferring to the parallel scheduling queue, the scheduling queue is set to 1, 2, 3...M, each queue is set with a corresponding trigger plug-in, marked as 1, 2, 3...M; (6) judging whether it is an http plug-in, if so, adding it to the http task queue, otherwise judging whether it is a ws plug-in; (7) if it is a ws plug-in, adding it to the ws task queue.
[0046] The workflow of the scheduling layer includes: (1) completing the previous task; (2) applying for a new task; (3) determining whether there is a new task, if yes, parsing the new task, otherwise putting it into the listening task queue and repeating (3); (4) scheduling the parsed new task and putting it into the plug-in layer for execution. The new task applied for is added to the http task queue.
[0047] The plug-in layer is used to report data, logs, and results.
[0048] Embodiment 4
[0049] On the basis of the first and second embodiments, Figure 1 and Figure 2As shown, the main technical problem solved by the present invention is to provide a layered and plug-in-friendly non-blocking, extensible process management system to meet the complex and ever-changing process management needs of enterprises in an efficient, flexible and maintainable manner. It can be seen that the present invention focuses on high availability and scalability in the overall architecture design to meet the challenges of high-concurrency scenarios. In addition, the plug-in layer also provides a complete plug-in development tool set and detailed documentation support, aiming to reduce the learning cost and development difficulty of third-party developers, and further promote the prosperity and development of the plug-in ecosystem.
[0050] The above shows and describes the basic principles and main features of the present invention and the advantages of the invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments. The above embodiments and descriptions are only for explaining the principles of the present invention. Without departing from the spirit and scope of the present invention, the present invention may have various changes and improvements, which fall within the scope of the present invention to be protected. The scope of protection of the present invention is defined by the attached claims and their equivalents.
Claims
1. A non-blocking and scalable process management system, comprising a process management layer, a process scheduling layer, and a plug-in layer based on a three-layer architecture, characterized in that: The process management layer is the core and hub of the entire system. This layer is responsible for the creation, fine management and continuous monitoring of the global process. At the same time, it provides a convenient plug-in registration and integration mechanism for third-party developers. Through rich external interfaces and intuitive interactive pages, it realizes seamless docking and function calls with third-party systems; the process scheduling layer deploys various types of Agents in a distributed manner, and has the ability to interact efficiently with various plug-ins, thereby ensuring the accurate execution of plug-in tasks. The process scheduling layer is responsible for real-time tracking and reporting the execution status and results of the plug-ins, providing real-time and accurate data support for process monitoring, and supporting dynamic loading and unloading of plug-ins to realize hot update functions, greatly improving the flexibility and maintenance efficiency of the system; the plug-in layer brings together many plug-ins with different functions, each of which is independently responsible for completing specific business process tasks. These plug-ins follow the design principles of independence and reusability, which is convenient for enterprises to flexibly expand and customize according to actual needs. The plug-in layer and the process scheduling layer use standardized interactive protocols for communication, ensuring the compatibility and interchangeability between plug-ins, thereby further enhancing the scalability and adaptability of the system.
2. A non-blocking, scalable process management system according to claim 1, characterized in that The working steps of the process management layer include: (1) process management: responsible for the creation, editing, and deletion of global processes to ensure the integrity and accuracy of the processes; (2) Instance query: Provides the query function for process instances, allowing users to understand the execution status and historical records of the current process; (3) Scheduling management: manage and configure the process scheduling layer to ensure that process tasks can be executed according to the scheduled time and sequence; (4) Data query: Provides query and report generation functions for process data to help users analyze process execution status and results; (5) Plug-in management: responsible for the registration, integration, update, and uninstallation of plug-ins to ensure the availability and security of plug-ins; (6) Log query: Provides query and analysis functions for process execution logs, making it easier for users to troubleshoot problems and optimize processes; (7) Instance management: monitor and manage process instances to ensure that the process can be executed normally and handle abnormal situations; (8) Open page: Provides an intuitive interactive page to facilitate user process management and configuration; (9) System management: overall management and configuration of the system, including user management, permission management, etc.
3. A non-blocking, scalable process management system according to claim 1, characterized in that The process management layer interacts with third-party systems through a variety of external interfaces, including RESTful API and WebSocket. It provides intuitive interactive pages through which users can manage and configure processes. The process management layer passes process tasks to the process scheduling layer for execution through an internal communication mechanism.
4. A non-blocking, scalable process management system according to claim 1, characterized in that The working steps of the process scheduling layer include: (1) task scheduling: scheduling and executing process tasks according to the instructions of the process management layer; (2) Real-time tracking: Real-time tracking of the execution status of the plug-in to ensure that the task can be completed according to the scheduled time and order; (3) Result reporting: Report the execution results of the plug-in to the process management layer to provide real-time and accurate data support for process monitoring; (4) Dynamic loading and unloading: Supports dynamic loading and unloading of plug-ins, implements hot updates, and improves system flexibility and maintenance efficiency.
5. A non-blocking, scalable process management system according to claim 1, characterized in that The process scheduling layer interacts with the process management layer through an internal communication mechanism, receives instructions from the process management layer and returns execution results; communicates with the plug-in layer through a standardized interaction protocol, assigns tasks to corresponding plug-ins for execution, and receives execution results of the plug-ins; The process scheduling layer interacts with the database and message queue to obtain the required data and resources. The Agent types it contains include Http Agent, ShellAgent, SocketAgent, BatAgent, Exe Agent, and JarAgent.
6. A non-blocking, scalable process management system according to claim 1, characterized in that The functions of the plug-in layer include: (1) file parsing: parsing and processing Excel and CSV files; (2) instrument detection: detecting and collecting data on instruments and equipment; (3) notification issuance: sending notifications and reminders to users or systems; (4) data cleaning: cleaning and converting raw data to meet the needs of subsequent processing; (5) printing processing: printing and processing documents or reports; (6) report submission: generating and submitting various reports and data; (7) task issuance: issuing tasks to other systems or modules for execution; (8) model triggering: triggering specific business models or algorithms for calculation and analysis; (9) equipment scheduling: scheduling and controlling equipment, such as starting, stopping, and adjusting parameters.
7. A non-blocking, scalable process management system according to claim 1, characterized in that The plug-in layer communicates with the process scheduling layer through a standardized interaction protocol, receives tasks and performs corresponding operations, and the plug-ins interact and collaborate with each other to complete more complex business processes; The plug-in layer interacts with the database, file system, and network communication platform to obtain the required data and resources, and can extend functions based on the protocol.
Citation Information
Patent Citations
Assembly process recording system and method
CN117980929A
Automatic model quality evaluation method and device, equipment and storage medium
CN118172589A