Intelligent system control agent for managing jobs on a network by managing a plurality of queues on a client
First Claim
1. An intelligent system control agent for coordinating user requested jobs among a plurality of clients, comprising:
- a user interface module configured to receive a user request by way of a processor;
a client selection module configured to select one of a plurality of clients to service the user request according to a predetermined criterion, the client selection module configured to centrally provide job request allocations for each client, each client comprising a plurality of queue types, each queue type having an individual scheme for prioritizing jobs, the plurality of queue types for each client comprising two or more of an asynchronous queue, a synchronous queue and an exclusive queue, each client further comprising a job execution module that selects one of the plurality of queue types of the selected client for queuing the user request based on characteristics of the requested job; and
a communication module configured to submit the user request to the job execution module of the selected client;
wherein the user interface module, client selection module, and communication module comprise one or more of logic hardware and executable code, the executable code stored on one or more non-transitory machine-readable storage media; and
wherein the asynchronous queue is configured to dispatch job requests simultaneously, the synchronous queue is configured to dispatch job requests only in the same order in which the job requests were received, and the exclusive queue is configured to dispatch job requests either exclusively of any other job requests in any of the other queue types or when no other activity is occurring on the client.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a robust intelligent system control agent configured to receive user job requests, submit the user job requests to selected qualified clients for servicing, and monitor the progress of the requests. The system is also configured with the capability of relocating a system control agent from one location within a network to another location within the network and for relocating a job request from one client to another. This ability to relocate agents and jobs provides robustness and reliability to the system, allowing the agent to move to a different machine when, for example, its current host system requires maintenance or other downtime. In order to facilitate the relocation of a job request, the state of the request is temporarily stored by the agent or by other means while the job request is relocated to another client.
-
Citations
25 Claims
-
1. An intelligent system control agent for coordinating user requested jobs among a plurality of clients, comprising:
-
a user interface module configured to receive a user request by way of a processor; a client selection module configured to select one of a plurality of clients to service the user request according to a predetermined criterion, the client selection module configured to centrally provide job request allocations for each client, each client comprising a plurality of queue types, each queue type having an individual scheme for prioritizing jobs, the plurality of queue types for each client comprising two or more of an asynchronous queue, a synchronous queue and an exclusive queue, each client further comprising a job execution module that selects one of the plurality of queue types of the selected client for queuing the user request based on characteristics of the requested job; and a communication module configured to submit the user request to the job execution module of the selected client; wherein the user interface module, client selection module, and communication module comprise one or more of logic hardware and executable code, the executable code stored on one or more non-transitory machine-readable storage media; and wherein the asynchronous queue is configured to dispatch job requests simultaneously, the synchronous queue is configured to dispatch job requests only in the same order in which the job requests were received, and the exclusive queue is configured to dispatch job requests either exclusively of any other job requests in any of the other queue types or when no other activity is occurring on the client. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for remotely controlling clients from a central location, the system comprising:
-
a plurality of clients, each client comprising a plurality of queue types, each queue type having an individual scheme for prioritizing jobs, the plurality of queue types for each client comprising two or more of an asynchronous queue, a synchronous queue and an exclusive queue, each client further comprising a job execution module that selects one of the plurality of queue types of the selected client for queuing a requested job based on characteristics of the requested job; an agent configured to receive a user request from a user and determine based upon a predetermined criterion which of the plurality of the clients to submit the user request to, the agent configured to centrally provide job request allocations for each client, each client comprising a plurality of queue types, each queue type having an individual scheme for prioritizing jobs, the plurality of queue types for each client comprising two or more of an asynchronous queue, a synchronous queue and an exclusive queue, each client further comprising a job execution module that selects one of the plurality of queue types of the selected client for queuing the user request based on characteristics of the requested job; and a communication channel configured to send the user request to the specified client; wherein the asynchronous queue is configured to dispatch job requests simultaneously, the synchronous queue is configured to dispatch job requests only in the same order in which the job requests were received, and the exclusive queue is configured to dispatch job requests either exclusively of any other job requests in any of the other queue types or when no other activity is occurring on the client. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method of operating a software control agent, comprising:
-
receiving a user request with a first software control agent; automatically selecting based upon a predetermined criterion one of a plurality of clients to submit the user job request to for service of the request, each client comprising a plurality of queue types, each queue type having a different scheme for prioritizing job requests, the plurality of queue types for each client comprising two or more of an asynchronous queue configured to dispatch job requests simultaneously, a synchronous queue configured to dispatch job requests only in the same order in which the job requests were received, and an exclusive queue configured to dispatch job requests either exclusively of any other job requests in any of the other queue types or when no other activity is occurring on the client; sending the user request over a communication channel to the selected client; selecting one of the plurality of queue types of the selected client for queuing the user job request based on characteristics of the requested job; and relocating the first agent from one computer station within a network to another computer station within the network wherein relocating the first agent from one computer system within the network to another computer system within the network comprises instructing the first agent to relocate to a known agent endpoint by a system administrator. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
-
-
22. An article for manufacture comprising a non-transitory storage medium readable by a processor and to perform a method of operating a software control agent, comprising:
-
receiving a user request; automatically selecting based upon a predetermined criterion one of a plurality of clients to centrally submit the request to for service of user request, each client comprising a plurality of queue types, each queue type having an individual scheme for prioritizing jobs, the plurality of queue types for each client comprising two or more of an asynchronous queue, a synchronous queue and an exclusive queue, each client further comprising a job execution module that selects one of the plurality of queue types of the selected client for queuing the user request based on characteristics of the requested job; and sending the user request over a communication channel to the job execution module of the selected client; wherein the asynchronous queue is configured to dispatch job requests simultaneously, the synchronous queue is configured to dispatch job requests only in the same order in which the job requests were received, and the exclusive queue is configured to dispatch job requests either exclusively of any other job requests in any of the other queue types or when no other activity is occurring on the client. - View Dependent Claims (23, 24, 25)
-
Specification