Preemptive Priority Scheduling Dispatcher for Message Serialization Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveserialization constraint preservationVSAvoidmessage processing parallelism
Core Design Contradiction:
ReliabilityVSProductivity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #15Dynamics

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

Engineering Contradiction:
Improvequeue management complexityVSAvoidload balancing efficiency
Core Design Contradiction:
Device complexityVSProductivity

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).

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of manufacture

If static priority scheduling is used, then implementation is straightforward, but optimal load balancing under constraints cannot be achieved

Engineering Contradiction:
Improvescheduling system implementationVSAvoidoptimal load balancing
Core Design Contradiction:
Ease of manufactureVSProductivity

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #35Parameter changes

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

Engineering Contradiction:
Improveload balancing of fixed priority threadsVSAvoiddynamic class switching capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8428076B2System and method for priority scheduling of plurality of message types with serialization constraints and dynamic class switching
Publication Date: 2013.04.23 TATA CONSULTANCY SERVICES LTD
  • US8428076B2 patent drawing
  • US8428076B2 patent drawing
  • US8428076B2 patent drawing

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.