Methods and systems for efficient queue propagation using a single protocol-based remote procedure call to stream a batch of messages
First Claim
1. A computer-implemented remote procedure call configured to enable a stream of a plurality of messages to be sent from a source queue accessible by a first computer application to one or more selected remote destination queues accessible to a second computer application over a computer network, the remote procedure call comprising:
- a first message header indicator, the first message header indicator being configured to signal that an identity of a first destination queue for messages to be streamed follows;
first header data configured to identify the first destination queue;
a first message body indicator, the first message body indicator being configured to signal that a first message to be streamed to the first destination queue follows;
first message data, the first message data including the first message to be streamed to the first destination queue identified by the first header data;
a second message body indicator, the second message body indicator being configured to signal that a second message to be streamed follows;
second message data, the second message data including the second message to be streamed, and an end of batch token, the end of batch token signaling the end of the stream of the plurality of messages.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer-implemented method of streaming a plurality of messages from a source queue to at least one destination queue over a computer network. The method may include steps of generating a remote procedure call, the remote procedure being configured to encapsulate at least header data, message data for each of the plurality of messages and an end of batch token, the header data being common to each of the plurality of messages and including an identification of the at least one destination queue, the end of batch token signaling that no further message data follows; sending the generated remote procedure call over the computer network to the destination queue identified in the header data, and dequeueing at least the message data for each of the plurality of messages from the source queue and streaming the dequeued messages over the network, and successively enqueueing each streamed message data into the at least one destination queue identified by the header data until the end of batch token is received.
-
Citations
16 Claims
-
1. A computer-implemented remote procedure call configured to enable a stream of a plurality of messages to be sent from a source queue accessible by a first computer application to one or more selected remote destination queues accessible to a second computer application over a computer network, the remote procedure call comprising:
-
a first message header indicator, the first message header indicator being configured to signal that an identity of a first destination queue for messages to be streamed follows;
first header data configured to identify the first destination queue;
a first message body indicator, the first message body indicator being configured to signal that a first message to be streamed to the first destination queue follows;
first message data, the first message data including the first message to be streamed to the first destination queue identified by the first header data;
a second message body indicator, the second message body indicator being configured to signal that a second message to be streamed follows;
second message data, the second message data including the second message to be streamed, and an end of batch token, the end of batch token signaling the end of the stream of the plurality of messages. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A machine-readable medium having data stored thereon representing sequences of instructions which, when executed by a computing device, causes the computing device to generate a remote procedure call configured to enable a stream of a plurality of messages to be sent from a source queue accessible by a first computer application to one or more selected remote destination queues accessible to a second computer application over a computer network, the remote procedure call comprising:
-
a first message header indicator, the first message header indicator being configured to signal that an identity of a first destination queue for messages to be streamed follows;
first header data configured to identify the first destination queue;
a first message body indicator, the first message body indicator being configured to signal that a first message to be streamed to the first destination queue follows;
first message data, the first message data including the first message to be streamed to the first destination queue identified by the first header data;
a second message body indicator, the second message body indicator being configured to signal that a second message to be streamed follows;
second message data, the second message data including the second message to be streamed, and an end of batch token, the end of batch token signaling the end of the stream of the plurality of messages. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-implemented method of streaming a plurality of messages from a source queue to at least one destination queue over a computer network, each of the plurality of messages including metadata and message data, the method comprising the steps of:
-
generating a remote procedure call, the remote procedure being configured to encapsulate at least header data, message data for each of the plurality of messages and an end of batch token, the header data being common to each of the plurality of messages and including an identification of the at least one destination queue, the end of batch token signaling that no further message data follows;
sending the generated remote procedure call over the computer network to the destination queue identified in the header data, and beginning execution of the remote procedure call by invoking a SQL engine and initiating a single insert statement to enqueue each of the streamed message data into the at least one destination queue identified by the header data, and dequeueing at least the message data for each of the plurality of messages from the source queue and streaming the dequeued messages over the network, and successively enqueueing each streamed message data into the at least one destination queue identified by the header data until the end of batch token is received. - View Dependent Claims (12, 14, 15, 16)
-
-
13. The computer-implemented method 11, further comprising a step of configuring the remote procedure call such that a message header indicator and header data precedes each group of message data to be streamed to a same destination queue.
Specification