Workflow Worker Thread Management for Processing Delays
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computational intensive applications often consume excessive processing resources, leading to longer execution times and wasted resources due to inefficient task management on computing devices.
Innovation Solution
A method and system for efficient worker utilization, where a client device requests workflow tasks from a server with a time-to-live (TTL) token, initializes worker and heartbeater threads, suspends tasks during processing delays, and resumes execution when delays terminate, allowing for dynamic task management and resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If computational intensive applications are executed on a computing device, then processing tasks can be completed, but excessive processing resources are consumed and execution time increases
Solution Approach 1:
The patent segments computational tasks into workflow tasks that can be independently executed by multiple worker threads. The poller thread divides incoming workflow tasks and distributes them to available workers, enabling parallel processing that reduces overall execution time while maintaining resource efficiency.
Solution Approach 2:
The system dynamically adjusts the number of active worker threads based on processing delays and system load. When processing delays are detected, the system suspends certain workers and activates standby workers, allowing the system to adapt to changing conditions and optimize both productivity and execution time.
2Productivity
If more worker threads are initialized to process tasks in parallel, then productivity increases, but system complexity and resource management difficulty increase
Solution Approach 1:
The poller thread automatically manages the worker thread pool by monitoring system state, suspending workers when processing delays occur, and activating standby workers when needed. This self-managing approach eliminates the need for complex external orchestration while maintaining optimal parallel processing capacity.
Solution Approach 2:
The system implements feedback mechanisms where the poller thread monitors worker performance and system load, then adjusts worker activation accordingly. This closed-loop control simplifies thread management by using real-time system state information to automatically balance productivity and complexity.
3Reliability
If worker threads are kept idle during processing delays, then task accuracy is maintained, but resource utilization decreases
Solution Approach 1:
The system dynamically transitions worker threads between active and suspended states based on processing delay conditions. During delays, workers are suspended to maintain accuracy; when delays terminate, standby workers are activated to resume processing, optimizing both reliability and resource utilization.
Solution Approach 2:
The system temporarily discards active worker threads during processing delays by suspending them and switching to standby workers. When delays end, the suspended workers are recovered and reactivated, allowing the system to preserve task accuracy while minimizing resource waste during delay periods.
Data Source
AI summary
Techniques are disclosed for efficient utilization worker threads in a workflow-as-a-service (WFaaS) environment. A client device may request a workflow for execution by the client device. The client device may receive the requested workflow and initialize a set of worker threads to execute the workflow and a set of heartbeater threads to monitor the set of worker threads. Upon receiving an indication of a processing delay, the client device may capture the state of the workflow, suspend execution of the workflow, and store the workflow in a temporary queue. While the processing delay persists, the client device may use the set of worker threads to execute other tasks. When the processing delay terminates, the client device may resume execution of the workflow.


