Asynchronous App Interaction via Manifest-Driven Gateway
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Legacy techniques for deploying applications in distributed virtualization environments are inadequate, as they rely on a priori knowledge of the installation environment and fail to support dynamic discoverability and efficient messaging between applications.
Innovation Solution
The implementation of an asynchronous interaction protocol that utilizes a manifest file to facilitate discoverability and messaging between applications, where each application has an entry in the manifest file specifying its intent to interact with other applications, and an application services gateway creates messaging data structures for asynchronous interactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If legacy deployment techniques are used with a priori knowledge of installation environment, then application deployment is simplified, but dynamic discoverability and messaging between applications is not supported
Solution Approach 1:
The manifest file is created beforehand to define application interaction requirements, intents, and discoverability metadata before deployment. This preliminary configuration enables dynamic discoverability without requiring complex runtime discovery mechanisms, as the interaction protocol is pre-established in the manifest.
Solution Approach 2:
The application services gateway acts as an intermediary that manages the manifest file and facilitates asynchronous messaging between applications. It mediates the communication between applications by routing messages through the gateway, eliminating the need for direct peer-to-peer connections and simplifying the deployment configuration.
2Reliability
If synchronous interaction protocol is used, then real-time communication is ensured, but network bandwidth and inter-component communication demand increase
Solution Approach 1:
The system uses asynchronous periodic messaging where applications publish events and subscribe to topics rather than maintaining continuous synchronous connections. This periodic action pattern maintains communication reliability through event-driven updates while significantly reducing network bandwidth consumption by transmitting data only when changes occur.
Solution Approach 2:
Applications autonomously manage their own communication by publishing intents and subscribing to relevant topics without requiring centralized coordination. This self-service approach eliminates the need for complex communication management infrastructure, reducing inter-component communication overhead while maintaining reliable event-driven interaction.
3Ease of operation
If application interactions are managed manually, then control over communication is maintained, but productivity and deployment efficiency decrease
Solution Approach 1:
Applications automatically discover each other through the manifest file and manage their own interactions by publishing intents and subscribing to topics. This self-service mechanism eliminates manual configuration of communication protocols, significantly improving deployment efficiency while maintaining operational control through structured interaction definitions in the manifest.
Solution Approach 2:
The system implements feedback mechanisms where applications publish status events and the gateway routes appropriate responses back to senders. This feedback loop enables automatic confirmation of message delivery and interaction status, maintaining operational control while eliminating manual communication management and improving deployment productivity.
Data Source
AI summary
Systems and methods for managing communication between applications (e.g., apps) in a host computing environment. Apps are published to a globally-accessible site. Upon download of an app to a host computing environment, apps can register themselves with a communication gateway as being discoverable and permissive to inter-app communications. Message queues are created to facilitate asynchronous communications between apps. After registration, any of the apps can send and receive messages using the communication gateway. The messages can be directed to any other app that is registered with the communication gateway. Using the message queues, the communication gateway facilitates asynchronous app interactions such that any app can communicate with any other discoverable and permissive app. Aspects of operation, discoverability and other attributes can be codified in an application manifest that is processed by the communication gateway. Discoverability, source of origination, payload contents, permissions and other attributes are carried in the application manifest.


