Dynamic Message Routing Broker for Microservice Protocol Complexity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Defining communication protocols between independently developed microservices in a service-oriented architecture is burdensome for software developers, as these protocols require understanding of both upstream and downstream microservices, which can lead to inefficiencies and complexity in message routing.
Innovation Solution
A computer-implemented method for dynamically routing messages based on a plurality of rules, involving message conversion, queue assembly, and rule-based mapping to facilitate communication between microservices, using a computing device to convert messages to suitable formats and send them to appropriate targets based on predefined rules and policies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If communication protocols are defined between microservices, then message routing accuracy is improved, but developer burden and system complexity increase
Solution Approach 1:
The patent introduces a message broker as an intermediary component that sits between microservices and handles message routing. The broker maintains a subscription model where services publish messages to topics and subscribers receive relevant messages without direct point-to-point connections. This intermediary absorbs the complexity of protocol definition and routing logic, allowing microservices to communicate through simple publish/subscribe operations while the broker handles the complex routing decisions based on message content and subscriber subscriptions.
2Measurement precision
If communication protocols are defined between microservices, then message routing accuracy is improved, but developer burden increases
Solution Approach 1:
The message broker implements automatic message routing based on content-based subscription rules. When a service publishes a message, the broker automatically matches the message content against subscription criteria and routes to appropriate subscribers without requiring developers to manually configure routing protocols. The system self-manages the routing logic through declarative subscription definitions, eliminating the need for developers to understand or implement complex routing protocols while maintaining accurate message delivery.
3Adaptability or versatility
If microservices are developed independently, then system adaptability is improved, but communication coordination becomes difficult
Solution Approach 1:
The message broker provides a universal communication interface that all microservices use regardless of their specific functions or domains. The publish/subscribe model with topic-based routing creates a common language for inter-service communication that works across different service types and boundaries. This universal approach allows independently developed services to communicate through a standardized mechanism without requiring service-specific protocol agreements, thereby maintaining adaptability while simplifying coordination.
Data Source
AI summary
Aspects described herein may allow messages to be routed between different programs or microservices based on a plurality of rules. For example, a computing device may receive, from a data stream, a plurality of messages, wherein each message, of the plurality of messages, may be converted from information associated with a microservice. The computing device may obtain, from the data stream, a first message. The computing device may also obtain a plurality of rules. The computing device may determine, based on at least one rule of the plurality rules, a mapping between a characteristic and an identifier of a target, and may convert, based on the at least one rule and determining that the first message has the characteristic, a copy of the first message to a format suitable to be sent to the target. In this way, communication between independently developed programs may be facilitated.


