HTTP Pub-Sub Server for JMS Client Scalability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies, such as the Bayeux protocol, do not effectively integrate channel-based communication between web-based clients and JMS-based application servers, limiting the ability of thousands of HTTP-based clients to simultaneously access information from a single JMS provider.
Innovation Solution
A publish and subscribe (pub/sub) server system that uses HTTP to enable channel-based communication, allowing web clients to send and receive asynchronous messages by identifying clients, negotiating trust, and exchanging messages, while associating HTTP channels with JMS destinations, thereby bridging the gap between JMS-based backend servers and channel-based HTTP servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the Bayeux protocol is used for channel-based communication, then asynchronous message delivery is achieved, but the system cannot effectively support thousands of simultaneous HTTP clients accessing a single JMS provider
Solution Approach 1:
The patent introduces an HTTP publish-subscribe server as an intermediary component between HTTP clients and the JMS provider. This mediator receives messages from JMS destinations, maintains channel subscriptions, and distributes messages to appropriate HTTP clients. The intermediary absorbs the complexity of managing thousands of simultaneous connections, allowing the JMS provider to focus on reliable message delivery while the HTTP layer handles client scalability.
2Productivity
If direct JMS integration is used, then message delivery reliability is maintained, but the system complexity increases and cannot scale to thousands of clients
Solution Approach 1:
The system is segmented into distinct functional layers: the JMS provider layer handles message production and reliable delivery, the HTTP publish-subscribe server layer handles channel management and client connection management, and the client layer handles message consumption. This segmentation allows each component to be optimized independently, reducing overall system complexity while enabling scalability to thousands of clients.
3Adaptability or versatility
If channel-based communication is implemented over HTTP, then web client accessibility is improved, but the ability to effectively utilize JMS provider capabilities is limited
Solution Approach 1:
The HTTP publish-subscribe server creates a copy of the JMS message delivery model adapted for HTTP protocols. It maintains channel subscriptions that mirror JMS topic subscriptions, translates JMS messages into HTTP responses, and preserves the publish-subscribe semantics. This copying approach allows web clients to access JMS provider capabilities through familiar HTTP protocols while maintaining the reliability and effectiveness of the underlying JMS infrastructure.
Data Source
AI summary
A system and method for providing a publish and subscribe server that includes channels to allow web based clients to send and receive asynchronous messages. In accordance with an embodiment, the system provides a Hypertext Transfer Protocol (HTTP) publish and subscribe (pub/sub) server that includes a channels-based means to allow web based clients to send and receive asynchronous messages over HTTP, including in some embodiments messages published by a JMS provider.


