Preemptive Priority Scheduling Dispatcher for Message Serialization Constraints
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current priority scheduling systems in intersystem communication face challenges such as restrictive serialization, inability to process lower priority messages in parallel with high priority messages, and inadequate load balancing, especially when handling messages with dynamic priorities and varied serialization constraints.
Innovation Solution
A preemptive priority scheduling system that dynamically switches message processing based on serialization constraints, allowing for customizable scheduling of multiple message classes, with a dispatcher that assigns messages to output servers according to predetermined priorities and adapts to fully restrictive, partially restrictive, or non-restrictive modes to optimize load balancing and ensure consistent processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If First Come First Serve (FCFS) priority queuing is used, then serialization constraints are maintained, but lower priority messages cannot be processed in parallel with high priority messages
Solution Approach 1:
The system segments messages into multiple priority queues (high priority queue and low priority queue) based on priority levels. The dispatcher can selectively process from different queues, allowing parallel processing of high and low priority messages while maintaining serialization within each priority level through separate queue management.
Solution Approach 2:
The scheduling system dynamically switches between different scheduling modes (fully restrictive, partially restrictive, non-restrictive) based on current system conditions and message priorities. This dynamic adaptation allows the system to optimize between serialization constraint preservation and parallel processing efficiency depending on the operational context.
2Device complexity
If two high priority messages are mapped to the same queue, then queue management is simplified, but load balancing across processing servers is inadequate
Solution Approach 1:
The system segments high priority messages into multiple priority queues based on their specific priority levels. This segmentation allows the dispatcher to distribute messages across different queues and subsequently across multiple processing servers, achieving both simplified queue management (through structured segmentation) and improved load balancing (through distributed message placement).
Solution Approach 2:
The system introduces an additional dimension for message distribution by mapping messages not only to processing servers but also to specific priority queues and time slots. This multi-dimensional approach enables the dispatcher to balance load across servers while maintaining priority-based serialization constraints, solving the contradiction between simple queue management and effective load balancing.
3Ease of manufacture
If static priority scheduling is used, then implementation is straightforward, but optimal load balancing under constraints cannot be achieved
Solution Approach 1:
The system implements dynamic priority scheduling where the dispatcher can adjust scheduling decisions based on current system state, message priorities, and server availability. The system supports multiple scheduling modes (fully restrictive, partially restrictive, non-restrictive) that can be dynamically selected. This dynamic approach maintains relative implementation simplicity through structured mode selection while achieving optimal load balancing through adaptive message distribution.
Solution Approach 2:
The system changes scheduling parameters dynamically by adjusting the restriction level (from fully restrictive to non-restrictive) based on system conditions. This parameter change allows the system to optimize load balancing efficiency while maintaining implementation straightforwardness through predefined scheduling modes that can be selected based on operational requirements.
4Productivity
If time slicing and pre-emption are used for load balancing, then fixed priority threads can be balanced, but the system is not dynamic for plurality of class switching and cannot handle serialization constraints
Solution Approach 1:
The system implements dynamic class switching capability by allowing the dispatcher to switch between different scheduling modes (fully restrictive, partially restrictive, non-restrictive) based on the message class and system conditions. This dynamic adaptation enables the system to handle multiple message classes with varied serialization constraints while maintaining effective load balancing, overcoming the limitations of static time-slicing approaches.
Solution Approach 2:
The system changes scheduling parameters dynamically by adjusting the restriction level and queue selection based on message class and system state. This parameter change mechanism enables the system to adapt to plurality of class switching while maintaining load balancing effectiveness, unlike fixed time-slicing approaches that cannot dynamically adjust to different message classes and serialization requirements.
Data Source
AI summary
The present invention provides a preemptive priority scheduling system and method for optimal load balancing of messages and preserving the lightweight allocation resources in an intersystem communication. The invention also provides a system and method for scheduling of messages of a plurality of classes in an intersystem communication.


