Dynamic workload balancing in clustered message queuing systems
Original Publication Date: 2005-Apr-11
Included in the Prior Art Database: 2005-Apr-11
This article describes a system and method for workload balanced getting and putting of messages from and on cluster queues in a message queuing cluster
Dynamic workload balancing in clustered message queuing systems Dynamic workload balancing in clustered message queuing systemsDynamic workload balancing in clustered message queuing systems Dynamic workload balancing in clustered message queuing systems
Summary of Invention:
The present article relates to message queuing in an asynchronous messaging network, and in particular to a system, method and computer program product for processing messages in a message queuing system, especially in a message queuing cluster.
Message queuing systems in a message queuing cluster exchange information about their queues configured for the use in the cluster, members of the cluster and so on. A message queuing cluster allows applications to connect to any member of that message queuing cluster and putting messages on a queue configured as cluster queue. A workload balancing task decides where to put the message physically in the cluster, that means it decides which member in the cluster will store the message physically on its cluster queue . This allows to dynamically start applications on a machine putting messages on a queue in a message queuing cluster without the knowledge of where the specific queue is physically defined .
2. Problem Statement
The problem in such a message queuing cluster is to get messages from a cluster queue in a message queuing cluster by connecting to any member of the cluster and to get messages from a cluster queue of any member in this cluster according to particular performance figures of the cluster . It is only possible to get messages from a queue by connecting directly to the appropriate message queuing system. This becomes more and more important for grid computing and on -demand architectures where heterogenous systems are interconnected by queue managers in large message queuing clusters and where it should be possible to run a message processing application on any machine and the application should be able to process messages from the message queuing cluster without any knowledge about the topology of the cluster and the location of specific services .
The problem can be solved by introducing a dynamic workload balancing in clustered message queuing systems for putting messages on and getting messages from cluster queues without directly connecting to the message queuing system physically holding the queue.
With a dynamic workload balancing in clustered message queuing systems for putting and getting messages it is possible for applications to connect to any member of a message queuing cluster and processing messages on cluster queues without knowledge of the physical location of the queues . This allows to use such a message queuing cluster e.g. in a grid by starting tasks for processing messages on a machine where resources are currently free. It also avoids the need for adjusting connection parameters if members of a message queuing clusters are moved, deleted or added beca...