Messaging Endpoint Container Mapping for Service Decoupling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing messaging systems require requesting applications to be aware of available services, making it difficult to scale services without modifying the applications and requiring explicit service requests, which limits flexibility and efficiency in scalable service architectures.

Innovation Solution

The method maps messaging endpoints to services using container technology, allowing requesting applications to remain unaware of service instances, with containers like Docker containers running applications and isolating them from infrastructure, enabling dynamic message optimization and efficient provisioning of resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If services are scaled to multiple instances, then service capacity and reliability are improved, but application complexity and coupling increase because applications must be aware of service instances

Engineering Contradiction:
Improveservice reliabilityVSAvoidapplication complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a message broker as an intermediary component that decouples applications from service instances. Applications publish messages to the broker without needing to know about service instances, and the broker routes messages to appropriate service instances. This intermediary layer resolves the contradiction by maintaining service reliability through multiple instances while preventing application complexity from increasing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If messaging systems require explicit service requests, then service invocation is precise, but system flexibility and scalability are reduced

Engineering Contradiction:
Improveservice invocation precisionVSAvoidsystem scalability
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent segments the service invocation process into two independent parts: message publishing by applications and message routing by the broker. Applications only need to publish messages to topics without specifying target services, while the broker handles the routing logic. This segmentation enables precise service invocation through topic-based routing while maintaining high scalability, as new services can be added without modifying application code.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If applications are modified to work with scalable services, then service integration is improved, but maintenance difficulty and deployment complexity increase

Engineering Contradiction:
Improveservice integrationVSAvoiddeployment ease
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The message broker serves as a stable intermediary that absorbs changes in service infrastructure. Applications interact only with the broker through fixed publishing interfaces, while the broker adapts to service scaling, versioning, and deployment changes. This approach improves service integration through standardized messaging interfaces while maintaining deployment ease, as applications remain unchanged even when services are modified or scaled.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10372516B2Message processing
Publication Date: 2019.08.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10372516B2 patent drawing
  • US10372516B2 patent drawing
  • US10372516B2 patent drawing

AI summary

A method and system for processing a message of a messaging system. The messaging system includes a messaging engine and a set of messages. A messaging endpoint of each message of the set of messages is associated with a respective container configured to run an associated application. In response to a first message being published to a messaging endpoint of the first message, the container associated with the messaging endpoint of the first message is used to process the message.