Asynchronous Bus Schema for Payload Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing communication methods between separate products or distributed systems face challenges in ensuring payload validity and security, particularly in large applications like vSphere Webclient, where conventional API approaches lead to tightly coupled services, modularity issues, and vulnerability to attacks.
Innovation Solution
The implementation of an asynchronous channel-based bus with a bridge that allows dynamic channel creation and message broadcasting, using JSON schema for runtime validation to ensure payload integrity and prevent attacks, decoupling services and views, and extending channels to message brokers for seamless communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional API communication methods are used between distributed systems, then service integration is achieved, but services become tightly coupled and modularity is lost
Solution Approach 1:
The patent introduces an asynchronous message broker as an intermediary component that sits between distributed services. Services publish messages to topics through the broker without direct point-to-point connections, enabling service integration while maintaining loose coupling. The broker mediates message routing and delivery, preventing tight coupling between producer and consumer services.
Solution Approach 2:
The system segments communication into independent publish-subscribe channels (topics) rather than direct service-to-service connections. Each service can independently publish to or subscribe from topics without knowing about other services, creating modular, loosely coupled architecture while maintaining system-wide integration.
2Reliability
If runtime validation of message payloads is implemented, then payload validity and security are ensured, but communication overhead increases
Solution Approach 1:
The system performs preliminary validation by attaching JSON Schema definitions to message topics during system initialization or message publication. The schema validation rules are pre-configured and stored, allowing rapid runtime validation without complex real-time analysis. This preliminary preparation reduces validation overhead during actual message processing.
Solution Approach 2:
The patent uses JSON Schema as a lightweight copy or representation of the expected message structure, rather than implementing complex validation logic. The schema acts as a template that can be rapidly matched against incoming messages using efficient JSON Schema validation algorithms, minimizing validation overhead while ensuring payload validity.
3Adaptability or versatility
If asynchronous message broadcasting is used across distributed systems, then service decoupling is achieved, but message delivery control becomes difficult
Solution Approach 1:
The message broker implements acknowledgment mechanisms where consumers confirm successful message processing. The broker tracks message delivery status and can retry failed deliveries or notify producers of delivery outcomes. This feedback loop maintains ease of operation by providing delivery control and visibility while preserving asynchronous decoupled communication between services.
Data Source
AI summary
A method for ensuring payload validity for communications on an asynchronous channel based bus. A consumer provides to a channel of an asynchronous channel based bus, a request message that includes a request for data. A producer monitoring the channel receives the request message. The producer generates a response message to the request message. The response message includes a schema and a payload. The producer provides, to the channel of the asynchronous channel based bus, the response message. The consumer receives the response message and performs a runtime validation of the schema of the response message. The consumer allows the response message to be utilized when the response message passes the runtime validation.


