← Back to Patent Explorer
US6510429B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Message broker apparatus, method and computer program product

Assignee: International Business Machines Corp
•
Filing: 1998-10-02
•
Granted: 2003-01-21
•
Expires: 2018-10-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A message broker data processing apparatus for receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages. An incoming stream of messages is received from a sender application, with each message being arranged as a tuple having at least one field. The incoming stream of messages is collated with data stored in a database, the data being also arranged as tuples having at least one field. The stream of message is processed so that a resultant stream of messages becomes directed to at least one receiving application.

Inventors

  • 👤 Stephen James Paul Todd

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 05:13
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/542; G06F9/546; G06Q; G06Q40/00; G06Q40/06; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 106 words
A message broker data processing apparatus for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising: means for receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; means for collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and means for processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 2
Dependent Claim 106 words
A message broker data processing apparatus for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising: means for receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; means for collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and means for processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 3
Dependent Claim 48 words
The apparatus of claim 1 wherein the means for receiving, means for collating and means for processing utilize a plurality of processing nodes interconnected to form a network of processing nodes, the processing functionality of each node being defined by a relational expression in a standard relational language.
Claim 4
Dependent Claim 17 words
The apparatus of claim 2 wherein streams of message tuples are passed between the plurality of nodes.
Claim 5
Dependent Claim 53 words
The apparatus of claim 3 wherein, for two adjacent nodes in the network, node 1 and node 2 , the output of the relational expression defining the functionality of node 1 is interpreted as a stream of message tuples by the input of the relational expression defining the functionality of node 2 .
Claim 6
Dependent Claim 15 words
The apparatus of claim 1 wherein the means for receiving communicates with a queue manager.
Claim 7
Dependent Claim 19 words
The apparatus of claim 1 wherein the sending application is a publisher and the receiving application is a subscriber.
Claim 8
Dependent Claim 14 words
The apparatus of claim 2 wherein the standard relational language is Structured Query Language.
Claim 9
Dependent Claim 24 words
The apparatus of claim 2 wherein a visual database tool is used to generate the relational expression which defines the functionality of a node.
Claim 10
Dependent Claim 25 words
The apparatus of claim 3 wherein each message tuple in a stream of message tuples existing between two nodes has the same set of fields.
Claim 11
Dependent Claim 31 words
The apparatus of claim 3 wherein, in a stream of message tuples existing between two nodes, each message tuple in the stream does not necessarily have the same set of fields.
Claim 12
Dependent Claim 40 words
The apparatus of claim 10 wherein fields used in a relational expression defining the functionality of a node but which are not defined in a particular message tuple of a stream input to the node are assigned a null value.
Claim 13
Dependent Claim 16 words
The apparatus of claim 1 wherein said apparatus is contained on a single data processing unit.
Claim 14
Dependent Claim 18 words
The apparatus of claim 1 wherein said apparatus is contained on a plurality of interconnected data processing units.
Claim 15
Dependent Claim 70 words
A method of providing an information service to a customer, using the apparatus of claim 1 , comprising steps of: (a) receiving criteria from a customer concerning which messages the customer wants to receive; (b) receiving published messages from a publisher; (c) comparing the published messages to the criteria received from the customer; and (d) forwarding on to the customer published messages which meet the criteria received from the customer.
Claim 16
Dependent Claim 102 words
A message broker data processing method for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising steps of: receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 17
Dependent Claim 102 words
A message broker data processing method for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising steps of: receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 18
Dependent Claim 44 words
The method of claim 15 wherein the steps of receiving, collating and processing utilize a plurality of processing nodes interconnected to form a network of processing nodes, the processing functionality of each node being defined by a relational expression in a standard relational language.
Claim 19
Dependent Claim 17 words
The method of claim 16 wherein streams of message tuples are passed between the plurality of nodes.
Claim 20
Dependent Claim 53 words
The method of claim 17 wherein, for two adjacent nodes in the network, node 1 and node 2 , the output of the relational expression defining the functionality of node 1 is interpreted as a stream of message tuples by the input of the relational expression defining the functionality of node 2 .
Claim 21
Dependent Claim 15 words
The method of claim 15 wherein the step of receiving communicates with a queue manager.
Claim 22
Dependent Claim 19 words
The method of claim 15 wherein the sending application is a publisher and the receiving application is a subscriber.
Claim 23
Dependent Claim 14 words
The method of claim 16 wherein the standard relational language is Structured Query Language.
Claim 24
Dependent Claim 24 words
The method of claim 16 wherein a visual database tool is used to generate the relational expression which defines the functionality of a node.
Claim 25
Dependent Claim 25 words
The method of claim 17 wherein each message tuple in a stream of message tuples existing between two nodes has the same set of fields.
Claim 26
Dependent Claim 31 words
The method of claim 17 wherein, in a stream of message tuples existing between two nodes, each message tuple in the stream does not necessarily have the same set of fields.
Claim 27
Dependent Claim 40 words
The method of claim 24 wherein fields used in a relational expression defining the functionality of a node but which are not defined in a particular message tuple of a stream input to the node are assigned a null value.
Claim 28
Dependent Claim 123 words
A computer program product stored on a computer readable storage medium for, when run on a data processing apparatus, carrying out a message broker data processing method for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising steps of: receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 29
Dependent Claim 123 words
A computer program product stored on a computer readable storage medium for, when run on a data processing apparatus, carrying out a message broker data processing method for use in receiving messages from a sender application, processing the received messages and deciding which receiver application to forward the processed messages, comprising steps of: receiving an incoming stream of messages from a sender application, with each message being arranged as a tuple having at least one field; collating the incoming stream of messages with database data stored in a database, the database data being also arranged as tuples having at least one field; and processing the stream of messages so that a resultant stream of messages becomes directed to at least one receiving application.
Claim 30
Dependent Claim 44 words
The product of claim 26 wherein the steps of receiving, collating and processing utilize a plurality of processing nodes interconnected to form a network of processing nodes, the processing functionality of each node being defined by a relational expression in a standard relational language.
Claim 31
Dependent Claim 17 words
The product of claim 27 wherein streams of message tuples are passed between the plurality of nodes.
Claim 32
Dependent Claim 53 words
The product of claim 28 wherein, for two adjacent nodes in the network, node 1 and node 2 , the output of the relational expression defining the functionality of node 1 is interpreted as a stream of message tuples by the input of the relational expression defining the functionality of node 2 .
Claim 33
Dependent Claim 15 words
The product of claim 26 wherein the step of receiving communicates with a queue manager.
Claim 34
Dependent Claim 19 words
The product of claim 26 wherein the sending application is a publisher and the receiving application is a subscriber.
Claim 35
Dependent Claim 14 words
The product of claim 27 wherein the standard relational language is Structured Query Language.
Claim 36
Dependent Claim 24 words
The product of claim 27 wherein a visual database tool is used to generate the relational expression which defines the functionality of a node.
Claim 37
Dependent Claim 25 words
The product of claim 28 wherein each message tuple in a stream of message tuples existing between two nodes has the same set of fields.
Claim 38
Dependent Claim 31 words
The product of claim 28 wherein, in a stream of message tuples existing between two nodes, each message tuple in the stream does not necessarily have the same set of fields.
Claim 39
Dependent Claim 40 words
The product of claim 35 wherein fields used in a relational expression defining the functionality of a node but which are not defined in a particular message tuple of a stream input to the node are assigned a null value.
Claim 40
Dependent Claim 36 words
The apparatus of claim 1 wherein the message broker data processing apparatus is located on an Internet server and at least one of the sending application and receiving application utilize a World Wide Web browser application.
Claim 41
Dependent Claim 36 words
The method of claim 15 wherein the message broker data processing apparatus is located on an Internet server and at least one of the sending application and receiving application utilize a World Wide Web browser application.
Claim 42
Dependent Claim 36 words
The product of claim 26 wherein the message broker data processing apparatus is located on an Internet server and at least one of the sending application and receiving application utilize a World Wide Web browser application.

References Cited (Backward Citations)

US5276899A Cited
US5530939A Cited
US5893079A Cited
US5710889A Cited
US5649186A Cited
EP0806731A2 Cited
US5878419A Cited
US6233575B1 Cited
EP0959416A2 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-01-20 2006-07-22 2007-01-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-01-20 2010-07-22 2011-01-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-01-20 2014-07-22 2015-01-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag