Asynchronous Channel Bus for Decoupled Service Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current approaches to integrating separate products or distributed systems face challenges in sourcing, delivering, and sharing multiple streams of real-time data between middleware layers, leading to tightly coupled services that are difficult to manage and prone to breakage from API changes.
Innovation Solution
An asynchronous channel-based bus architecture, Bifröst, enables decoupled services by allowing dynamic channel creation and message broadcasting, using STOMP and ReactiveX for asynchronous communication, allowing any UI, service, or platform to send and receive messages without additional technology or custom integrations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If services are tightly coupled through dependency injection and direct API calls, then real-time data sharing between services is achieved, but system complexity and difficulty of maintenance increase significantly
Solution Approach 1:
The patent introduces an event bus as an intermediary component that mediates communication between services. Instead of services directly calling each other's APIs or being injected with dependencies, they publish events to and subscribe from the event bus. This intermediary layer simplifies the system architecture by providing a standardized communication protocol and reducing the complexity of direct service-to-service interactions.
Solution Approach 2:
The patent segments the monolithic service architecture into independent, loosely-coupled services that communicate through events. Each service operates independently, publishing its own events and subscribing to events it needs, which divides the complex system into manageable, autonomous units that are easier to maintain and scale.
2Speed
If proprietary APIs and SDKs are used for internal service communication, then real-time data access is enabled, but technical debt accumulates and adaptability decreases
Solution Approach 1:
The patent implements a universal event bus that serves as a common communication infrastructure for all services in the system. This single standardized interface replaces multiple proprietary APIs and SDKs, allowing any service to communicate with any other service through a consistent event publishing and subscription mechanism, thereby improving adaptability and reducing technical debt.
3Loss of information
If multiple services are integrated bidirectionally through direct API calls, then comprehensive data sharing is achieved, but the integration process becomes slow and painful when API changes occur
Solution Approach 1:
The event bus enables continuous, asynchronous data flow between services without the need for bidirectional API calls. Services can publish events continuously and have them delivered to all subscribers in real-time, eliminating the back-and-forth synchronization delays inherent in bidirectional API integration and significantly improving integration speed and responsiveness.
Data Source
AI summary
In an asynchronous channel based bus architecture enabling decoupled services, there is an asynchronous channel based bus having at least one channel. A first service is coupled to the asynchronous channel based bus, the first service passes messages to and receives messages on the at least one channel. A second service is also coupled to the asynchronous channel based bus, the second service also passes messages to and receive messages on the at least one channel.


