Proxy Push-Pull Server Merging Live Content History
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Clients using publish-subscribe mechanisms can miss out on messages due to delayed subscription or network errors, as existing systems fail to provide a comprehensive and reliable method for accessing live content.
Innovation Solution
A proxy push-pull server that utilizes a connection-oriented communication channel to obtain a history and updates of live content, combining them into a merged stream for the client, ensuring sequential data delivery and error handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a publish-subscribe mechanism is used to enable clients to obtain content from the server, then clients can receive real-time updates, but clients may miss out on messages published before subscription establishment or when network errors occur
Solution Approach 1:
The proxy server performs preliminary action by obtaining and storing the history of live content before the client subscribes. When a client connects, the proxy server has already retrieved the complete content history from the publish-subscribe server, ensuring that no messages are lost regardless of when the client subscribes. This resolves the contradiction by proactively preparing the content history in advance.
Solution Approach 2:
The proxy server acts as an intermediary between the client and the publish-subscribe server. It retrieves the complete content history and merges it with real-time updates, then delivers everything to the client through a connection-oriented channel. This intermediary role ensures that clients receive both historical and real-time content reliably, preventing message loss.
2Speed
If a publish-subscribe mechanism is used to enable clients to obtain content from the server, then clients can receive real-time updates, but clients may miss out on messages when network transmission errors occur or when the client fails to keep up with the rate of message publication
Solution Approach 1:
The proxy server performs preliminary action by obtaining the complete content history from the publish-subscribe server before the client needs it. This allows the server to send historical content and real-time updates together through a reliable connection-oriented channel, ensuring that clients never miss messages even if they join late or experience network issues.
Solution Approach 2:
The proxy server maintains continuous connection-oriented communication with the client, merging historical content and real-time updates into a single continuous stream. This continuous delivery mechanism ensures that clients receive all content without gaps, maintaining both speed and reliability by keeping the data flow uninterrupted.
3Reliability
If a proxy push-pull server obtains and merges content history and updates via a connection-oriented communication channel, then clients receive complete and sequential live content, but the system complexity increases
Solution Approach 1:
The proxy server acts as an intermediary that simplifies the client's task by handling all the complexity of retrieving and merging content history and updates. The client only needs to establish a connection-oriented channel and receive the merged stream, while the proxy server manages the complex operations of querying the publish-subscribe server, obtaining history, and merging updates.
Solution Approach 2:
The proxy server merges the content history and real-time updates into a single unified stream delivered to the client. This merging operation consolidates multiple data sources and operations into one coherent delivery mechanism, reducing the complexity the client must handle while maintaining reliable content delivery.
Data Source
AI summary
A connection-oriented proxy push-pull network server, including: obtaining a history of the live content in response to a request from a client via a connection-oriented communication channel; obtaining a set of updates to the live content in response to the request from the client; and combining the history and the updates into a merged content stream back to the client via the connection-oriented communication channel.


