Concurrency Identification for Distributed Workflow Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed systems face performance bottlenecks due to limited concurrency levels at processing stages, often caused by resource constraints or locking mechanisms, which hinder efficient job request processing.
Innovation Solution
A method and system for identifying concurrency levels by analyzing measurement data from job requests, sorting timestamps, and determining maximum concurrency levels for each processing stage, allowing for resource classification and allocation to optimize resource utilization and alleviate bottlenecks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locking mechanisms are used to ensure proper execution of job requests, then system reliability is improved, but concurrency level deteriorates
Solution Approach 1:
The system continuously monitors concurrency levels at each processing stage by collecting measurement data from job requests. When a bottleneck is detected (concurrency level < maximum job requests), the system provides feedback to dynamically adjust resource allocation, adding resources to bottleneck stages to maintain both reliability and productivity
Solution Approach 2:
The patent implements dynamic resource allocation where resources are not statically assigned but dynamically adjusted based on real-time concurrency level measurements. The system continuously adapts resource distribution to match actual workload demands, allowing locking mechanisms to maintain reliability while minimizing their impact on concurrency
2Productivity
If resources are allocated to processing stages, then processing capacity is improved, but resource utilization efficiency deteriorates due to idle dedicated resources
Solution Approach 1:
The patent classifies resources as either dedicated or shared based on concurrency analysis. Shared resources can serve multiple processing stages and are dynamically allocated to different stages based on real-time needs. This multi-functionality ensures that resources maintain high utilization efficiency while still providing sufficient processing capacity across all stages
Solution Approach 2:
The system changes the allocation parameters of resources dynamically based on measured concurrency levels. When a stage experiences a bottleneck, the system adjusts the number of resources allocated to that stage. This parameter adjustment allows the system to optimize processing capacity while minimizing idle resources, as resources are allocated only when and where needed
Data Source
AI summary
A system and method may be utilized to identify concurrency levels of processing stages in a distributed system, identify common resources and bottlenecks in the distributed system using the identified concurrency levels, and allocate resources in the distributed system using the identified concurrency levels.


