Most eligible server in a common work queue environment
First Claim
1. A method of managing servers comprising:
- providing a shared queue;
providing a plurality of servers each operable to determine whether it has capacity to process a message, and if determined to have the capacity, further operable to dequeue a message in the shared queue, process the message and place one or more response messages in the shared queue;
using at least one client to transmit messages to the shared queue and to receive messages in the shared queue from the plurality of servers;
establishing a list having a most eligible server status record accessible by said client, the most eligible server status record being updated when one or more of the plurality of servers connects to the shared queue and determines that its eligibility to process requests is greater than is currently reflected in the most eligible server status record, the most eligible server status record further being updated when one or more of the plurality of servers disconnects from the shared queue; and
providing a processor for maintaining the list further indicating whether at least one of the plurality of servers is eligible and available to process a particular message from the at least one client, the list further indicating one or more types of messages eligible to be processed by said at least one of the plurality of servers, said at least one client checking the list before transmitting said particular message to the shared queue to determine if a server is available to process said particular message, said at least one client enquening said particular message in the shared queue only if it is determined that a server is available,if there is a change in the most eligible server status record, notifying the client of the change, and if the most eligible server status record is lower than its previous status, providing the client an option of removing one or more requests from the shared queue for which there is no longer a server eligible to process.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for managing servers. The system comprises a plurality of servers for processing messages, at least one client for transmitting messages to and receiving messages from the servers, and processor means for maintaining a list indicating whether at least one of the servers is eligible to process messages. Preferably, the servers are adapted to process messages of different types; and the processor means includes means to indicate on said list whether, for each of the different types of messages, at least one of the servers is eligible to process each of the different types of messages. Also, in the preferred embodiment, each of the clients includes means to read the list, before the client transmits a message of a given type to one of the servers, to determine whether at least one of the servers is eligible to process messages of the given type. In addition, the processor means may notify the clients when changes are made to the list, and each of the clients may include means for removing messages from the servers in case there is no longer a server eligible to process the messages.
19 Citations
4 Claims
-
1. A method of managing servers comprising:
-
providing a shared queue; providing a plurality of servers each operable to determine whether it has capacity to process a message, and if determined to have the capacity, further operable to dequeue a message in the shared queue, process the message and place one or more response messages in the shared queue; using at least one client to transmit messages to the shared queue and to receive messages in the shared queue from the plurality of servers; establishing a list having a most eligible server status record accessible by said client, the most eligible server status record being updated when one or more of the plurality of servers connects to the shared queue and determines that its eligibility to process requests is greater than is currently reflected in the most eligible server status record, the most eligible server status record further being updated when one or more of the plurality of servers disconnects from the shared queue; and providing a processor for maintaining the list further indicating whether at least one of the plurality of servers is eligible and available to process a particular message from the at least one client, the list further indicating one or more types of messages eligible to be processed by said at least one of the plurality of servers, said at least one client checking the list before transmitting said particular message to the shared queue to determine if a server is available to process said particular message, said at least one client enquening said particular message in the shared queue only if it is determined that a server is available, if there is a change in the most eligible server status record, notifying the client of the change, and if the most eligible server status record is lower than its previous status, providing the client an option of removing one or more requests from the shared queue for which there is no longer a server eligible to process. - View Dependent Claims (2, 3, 4)
-
Specification