Scaleable message system
First Claim
1. A message system for delivering data in the form messages between message clients;
- the message system being configured to receive messages from message producing clients and to forward messages to message consuming clients;
the message system comprising a server cluster containing a group of client manager nodes, said group of client manager nodes comprising a plurality of client manager nodes;
each client manager node of said group of client manager nodes comprising means for connecting to clients, means for managing client connections and means for forwarding messages received from message producing clients to message manager nodes, and means for forwarding messages received from message manager nodes to message consuming clients;
the server cluster further containing a group of message manager nodes being configured differently from the client manager nodes, said group of message manager nodes comprising a plurality of message manager nodes;
each message manager node comprising means for storing and distributing messages, said messages comprising a destination information addressing a destination, said destination being at least one of a queue and a topic;
the system further comprising communication channel means for providing a multicast communication channel for forwarding messages between said group of client manager nodes and said group of message manager nodes.
3 Assignments
0 Petitions
Accused Products
Abstract
A message system for delivering data in the form messages between message clients comprises a server cluster with a group of client manager nodes and a group of independent message manager nodes. The client manager nodes have the function of managing client connections, whereas the message manager are configured to store and distribute messages. The system further comprising communication channel means in the form of a multicast messagebus for providing a multicast communication channel between said at least one client manager node and said at least one message manager node. The system guarantees delivery of a message by storing it until a receiver is ready to consume it.
125 Citations
20 Claims
-
1. A message system for delivering data in the form messages between message clients;
-
the message system being configured to receive messages from message producing clients and to forward messages to message consuming clients; the message system comprising a server cluster containing a group of client manager nodes, said group of client manager nodes comprising a plurality of client manager nodes; each client manager node of said group of client manager nodes comprising means for connecting to clients, means for managing client connections and means for forwarding messages received from message producing clients to message manager nodes, and means for forwarding messages received from message manager nodes to message consuming clients; the server cluster further containing a group of message manager nodes being configured differently from the client manager nodes, said group of message manager nodes comprising a plurality of message manager nodes; each message manager node comprising means for storing and distributing messages, said messages comprising a destination information addressing a destination, said destination being at least one of a queue and a topic; the system further comprising communication channel means for providing a multicast communication channel for forwarding messages between said group of client manager nodes and said group of message manager nodes. - View Dependent Claims (2, 3, 4, 5, 6, 12)
-
-
7. A method for delivering data in the form messages between message clients using a server cluster comprising the steps of:
-
providing a group of client managers of said server cluster, said group of client managers comprising a plurality of client manager nodes; providing a group of message managers of said server cluster, said group of message managers comprising a plurality of message managers having at least one destination, said destination being at last one of a queue and a topic; connecting a message client to a client manager node of said group of client managers of said server cluster; transmitting a message from said message client to said client manager node; depending on the content of said message, sending message data by said client manager across at least one multicast communication channel connected to said client manager, said message data comprising a destination information addressing a destination; and receiving said message data by all message managers having said destination addressed by said destination information and storing said message data on data storage means of said message managers. - View Dependent Claims (8, 9, 10, 11)
-
-
13. A computer-readable medium having computer readable program code means embodied therein for enabling a computer to serve as a client manager in a server cluster, the computer-readable medium comprising computer readable code means for enabling the computer:
-
to establish a connection to a message client; to communicate with at least one of a plurality of message manager nodes comprising means for storing messages and at least one destination across a multicast communication channel, said destination being at least one of a queue and a topic; to receive a message from said message client, and depending on the content of said message, to transmit message data across said multicast communication to at least one of said message manager nodes, said message comprising a destination information addressing a destination, further comprising computer readable code means for enabling the computer; to receive message data containing a client information from a message manager node, and to transmit, depending on the content of said message data, a message to the message client addressed by said message data. - View Dependent Claims (14, 15, 16)
-
- 17. A computer-readable medium having computer readable program code means embodied therein for enabling a computer to serve as a message manager node in a server cluster, the computer-readable medium comprising computer readable code means for enabling the computer to communicate with at least one client manager across a multicast communication channel, to receive message data from said client manager node, said message data comprising a destination information addressing a destination, depending on the destination information, to store said message data, to maintain a list of client subscriptions, and to compare the list of client subscriptions to available messages, and, when there is a match, for transmitting message information with a client information to a client server across said multicast communication channel.
-
20. A message system for delivering data in the form of messages between message clients, the message system being configured use at least one of queues and topics as destinations, and being configured to receive messages from message producing clients and to forward messages to message consuming clients, the system comprising:
-
a server cluster containing a group of client manager nodes; each client manager node of said group of client manager nodes comprising means for connecting to clients, means for managing client connections, means for forwarding messages received from message producing clients to message manager nodes, said messages comprising destination information specifying at least one of a queue and a topic, and means for forwarding messages received from message manager nodes to message consuming clients; the server cluster further containing a group of message manager nodes being configured differently from the client manager nodes; each message manager node comprising means for storing and distributing messages and means for managing at least one of a queue and a topic, said messages comprising a destination information addressing a destination, said destination being at least one of a queue and a topic; the system further comprising communication channel means for providing a multicast communication channel for forwarding messages from a plurality of said client manager nodes to a plurality of said message manager nodes, and vice versa; wherein at least two message manager nodes are configured to comprise identical destinations, each of which is arranged to maintain a redundant copy of a message received in the course of the same multicast transmission from a client manager to said destination, said destination being at least one of a queue and a topic.
-
Specification