Dynamic Messaging Bus Service Swapping for Processing Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Service-Oriented Architecture (SOA) with an Enterprise Service Bus (ESB), the sequential execution of services on a messaging bus can lead to slowed processing of critical requests due to integration delays and varying performance factors, such as different loads at different times, making it challenging to maximize processing speed.

Innovation Solution

A dynamic messaging bus with multiple sub-buses of varying priority rankings, where services are dynamically assigned based on performance monitoring, allowing critical requests to be processed on high-priority sub-buses with the best performing services, while non-critical requests are handled on lower-priority sub-buses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If services are executed sequentially on a single messaging bus, then system simplicity is maintained, but processing speed of critical requests deteriorates due to integration delays and varying performance factors

Engineering Contradiction:
Improveprocessing speedVSAvoidmessaging bus structure
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The messaging bus is segmented into multiple sub-buses (first sub-bus, second sub-bus, etc.) with different priority rankings. Critical requests are routed to high-priority sub-buses while non-critical requests use lower-priority sub-buses, enabling parallel processing and improving overall processing speed without significantly increasing system complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically assigns services to different sub-buses based on real-time performance monitoring. The swapping module continuously monitors service performance and dynamically swaps service assignments between sub-buses to ensure critical requests are always processed by the best-performing services, optimizing processing speed adaptively

Inventive Principle:
Principle #15Dynamics

2Productivity

If services are statically assigned to sub-buses, then system complexity is reduced, but productivity deteriorates due to varying performance factors and different loads at different times

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidservice assignment mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The performance monitoring module continuously monitors service performance metrics and provides feedback to the swapping module. This feedback loop enables the system to automatically adjust service assignments based on real-time performance data, ensuring optimal processing efficiency without requiring complex manual configuration or static pre-planning

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-optimization through automatic service swapping based on monitored performance. The swapping module autonomously determines and executes service reassignments without external intervention, allowing the messaging bus to adapt to varying loads and performance conditions dynamically, thereby maintaining high productivity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9516117B2Dynamic shifting of service bus components
Publication Date: 2016.12.06 RED HAT INC
  • US9516117B2 patent drawing
  • US9516117B2 patent drawing
  • US9516117B2 patent drawing

AI summary

Systems and methods are disclosed for processing messages using a dynamic messaging bus. An example system includes a plurality of services residing in a dynamic messaging bus including a plurality of sub-buses. Each service is assigned to a sub-bus of the plurality of sub-buses. The example system also includes a performance monitoring module that monitors a performance of one or more services executing on a sub-bus to which the respective one or more services is assigned. A first service is assigned to a first sub-bus and a second service is assigned to a second sub-bus. The example system further includes a swapping module that determines, based on the monitored performances of the first and second services, whether to swap the assignments of the first and second services such that the first service is assigned to the second sub-bus and the second service is assigned to the first sub-bus.