Content aware routing of subscriptions for streaming and static data
First Claim
1. A computer readable medium having instructions stored thereon that, when executed by a processor on a first server, causes the processor to load-balance Java Message Service (JMS) requests, the instructions comprising:
- receiving a JMS subscription request from a client, wherein the request comprises a topic name for a topic;
determining how to service the subscription request;
based on the determining, servicing the subscription request by generating one or more messages, wherein the one or more messages comprise one of;
a plurality of topic messages, a Redirection directive, or a Join directive; and
sending the one or more messages to the client;
wherein the Redirection directive comprises directing the client to send the subscription request to a second server;
wherein the Join directive comprises directing the client to generate a second subscription request to the second server, and in response receive a first part of the topic from the first server and a second part of the topic from the second server.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention relates to integration of streaming data, and more specifically relates to subscription routing: distributing the load of streaming data subscriptions across multiple servers in a session-oriented client-server architecture. In one embodiment the invention provides, in a client-server architecture, a method of implementing the client-side architecture whereby a logical connection and session may be mapped to one or more physical connections and sessions. The invention provides mobility of subscriptions from one physical session/connection to another based on directives from a server; and further permit a client to blend multiple physical subscriptions for different data streams into a single logical data stream based on directives from a server.
-
Citations
31 Claims
-
1. A computer readable medium having instructions stored thereon that, when executed by a processor on a first server, causes the processor to load-balance Java Message Service (JMS) requests, the instructions comprising:
-
receiving a JMS subscription request from a client, wherein the request comprises a topic name for a topic; determining how to service the subscription request; based on the determining, servicing the subscription request by generating one or more messages, wherein the one or more messages comprise one of;
a plurality of topic messages, a Redirection directive, or a Join directive; andsending the one or more messages to the client; wherein the Redirection directive comprises directing the client to send the subscription request to a second server; wherein the Join directive comprises directing the client to generate a second subscription request to the second server, and in response receive a first part of the topic from the first server and a second part of the topic from the second server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer implemented method for load-balancing Java Message Service (JMS) requests, the method comprising:
-
receiving a JMS subscription request from a client at a first server, wherein the request comprises a topic name for a topic; determining how to service the request; based on the determining, servicing the request by generating one or more messages, wherein the one or more messages comprise one of;
a plurality of topic messages, a Redirection directive, or a Join directive; andsending the one or more messages to the client; wherein the Redirection directive comprises directing the client to send the subscription request to a second server; wherein the Join directive comprises directing the client to generate a second subscription request to the second server, and in response receive a first part of the topic from the first server and a second part of the topic from the second server. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A system for load-balancing Java Message Service (JMS) requests, the system comprising:
-
a processor; a computer readable medium coupled to the processor, wherein the computer readable medium stores instructions that cause the processor to perform the functionality of; receiving a JMS subscription request from a client at a first server, wherein the request comprises a topic name for a topic; determining how to service the request; based on the determining, servicing the request by generating one or more messages, wherein the one or more messages comprise one of;
a plurality of topic messages, a Redirection directive, or a Join directive; andsending the one or more messages to the client; wherein the Redirection directive comprises directing the client to send the subscription request to a second server; wherein the Join directive comprises directing the client to generate a second subscription request to the second server, and in response receive a first part of the topic from the first server and a second part of the topic from the second server. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31)
-
Specification