IP Library Granted Patent US 8,589,472
Granted Patent B2
US 8,589,472 · App. 12/820,179 · Granted Nov 19, 2013

Agent system for reducing server resource usage

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,589,472
App. No.
12/820,179
Granted
Nov 19, 2013
Kind
B2
Abstract

A method, data processing system, and computer program product for processing information. A server-side agent running on a server data processing system monitors for a selected event for processing by the server-side agent. In response to detecting the selected event for processing by the server-side agent, the server-side agent requests information to process the selected event from a client-side agent running on a client data processing system. The server-side agent performs a subset of functions performed by the client-side agent. In response to receiving a response with the information to process the selected event from the client-side agent, the server-side agent performs a set of steps to process the selected event using the information received from the client-side agent.

Claims (64)

1. A method for processing information, the method comprising:

establishing a session between a client-side agent running on a client data processing system and a server-side agent running on a data processing system;

monitoring, by the server-side agent for a selected event in an application running in the session for processing by the server-side agent;

detecting, by the server-side agent, the selected event for processing by the server side agent;

based on the detecting, requesting, by the server-side agent, information to process the selected event from the client-side agent,

wherein the server-side agent performs a subset of functions performed by the client-side agent; and

receiving, by the server-side agent, a response with the information to process the selected event from the client-side agent;

based on the response, performing, by the server-side agent, a set of steps included in the subset of functions to process the selected event using the information received from the client-side agent.

2. The method of claim 1 , wherein the step of monitoring, by the server-side agent running on the server data processing system, for the selected event for processing by the server-side agent comprises:

monitoring, by the server-side agent running on the server data processing system, a session on the server data processing system for the selected event occurring in the session for processing by the server-side-agent, wherein the selected event includes a request for information and the request for information is sent by the server-side agent to the client-side agent.

3. The method of claim 1 further comprising:

establishing a communications channel between the server-side agent and the client-side agent, wherein the server-side agent is a smaller version of the client-side agent that has less functionality than the client-side agent.

4. The method of claim 2 , wherein the server-side agent performs a single sign on for applications in the session and wherein the selected event is an attempt to access an application requiring a user identifier and a password.

5. The method of claim 1 , wherein the server-side agent uses fewer resources than the client-side agent.

6. The method of claim 1 , wherein the server-side agent takes less time to start up as compared to the client-side agent.

7. The method of claim 1 , wherein the client-side agent loads data into a memory on the client data processing system, wherein the data is used to provide the information to the server-side agent.

8. The method of claim 1 , wherein the client-side agent performs steps to process data stored on the client data processing system to generate the information requested by the server-side agent.

9. The method of claim 7 , wherein the data comprises a policy for a single sign-on service.

10. A method for processing information, the method comprising:

establishing a session between a client-side agent running on a client data processing system and a server-side agent running on a server data processing system;

receiving, by the client-side agent, a request for information from the server-side agent,

wherein the server-side agent monitors for a selected event in an application running in the session for processing by the server-side agent and sends the request for information based on detecting the selected event, and

wherein the server-side agent performs a subset of functions performed by the client-side agent;

based on receiving, by the client-side agent, the request for information, performing, by the client-side agent, a set of steps to obtain the information;

sending, by the client-side agent, a response including the information to the server-side agent,

wherein, based on the response, the server-side agent performs a set of steps included in the subset of functions to process the selected event using the information sent by the client-side agent.

11. The method of claim 10 , wherein the client-side agent receives requests for the information from a plurality of server-side agents running on a plurality of server data processing systems.

12. A data processing system comprising:

a bus;

a communications unit connected to the bus;

a storage device connected to the bus, wherein the storage device includes program code, the program code for executing a server-side agent; and

a processor unit connected to the bus, wherein the processor unit runs the program code to perform a method, the method comprising:

establishing a session between the server-side agent and a client-side agent running on a client data processing system;

monitoring, by the server-side agent, for a selected event in an application running in the session for processing by the server-side agent;

detecting, by the server-side agent, the selected event for processing by the server side agent;

based on the detecting, requesting, by the server-side agent, information to process the selected event from the client-side agent,

wherein the server-side agent performs a subset of functions performed by the client-side agent; and

receiving, by the server-side agent, a response with the information to process the selected event from the client-side agent;

based on the response, performing, by the server-side agent, a set of steps included in the subset of functions to process the selected event using the information received from the client-side agent.

13. The data processing system of claim 12 , wherein in running the program code to monitor for the selected event for processing by the server-side agent, the processor unit runs the program code to monitor a session on the server data processing system for the selected event occurring in the session for processing by the server-side-agent, wherein the selected event includes a request for information and the request for information is sent by the server-side agent to the client-side agent.

14. The data processing system of claim 12 further comprising:

establishing a communications channel between the server-side agent and the client-side agent, wherein the server-side agent is a smaller version of the client-side agent that has less functionality than the client-side agent.

15. A computer program product for processing information comprising:

a computer recordable storage device; and

program code, stored on the tangible computer recordable storage device, the program code for, when executed by a processor, performing a method, the method comprising:

establishing a session between a server-side agent running on a server data processing system and a client-side agent running on a client data processing system;

monitoring, by the server-side agent, for a selected event in an application running in the session for processing by the server-side agent;

detecting, by the server-side agent, the selected event for processing by the server side agent;

based on the detecting, requesting, by the server-side agent, information to process the selected event from the client-side agent,

wherein the server-side agent performs a subset of functions performed by the client-side agent; and

receiving, by the server-side agent, a response with the information to process the selected event from the client-side agent;

based on the response, performing, by the server-side agent, a set of steps included in the subset of functions to process the selected event using the information received from the client-side agent.

16. The computer program product of claim 15 , wherein program code, stored on the tangible computer recordable storage device, for monitoring for the selected event for processing by the server-side agent comprises:

program code, stored on the tangible computer recordable storage device, for monitoring a session on the server data processing system for the selected event occurring in the session for processing by the server-side-agent, wherein the selected event includes a request for information and the request for information is sent by the server-side agent to the client-side agent.

17. The computer program product of claim 15 further comprising:

program code, stored on the tangible computer recordable storage device, for establishing a communications channel between the server-side agent and the client-side agent, wherein the server-side agent is a smaller version of the client-side agent that has less functionality than the client-side agent.

18. The computer program product of claim 16 , wherein the server-side agent performs a single sign on for applications in the session and wherein the selected event is an attempt to access an application requiring a user identifier and a password.

19. The computer program product of claim 15 , wherein the server-side agent uses fewer resources than the client-side agent.

20. The computer program product of claim 15 , wherein the server-side agent takes less time to start up as compared to the client-side agent.

21. The computer program product of claim 15 , wherein the client-side agent loads data into a memory on the client data processing system, wherein the data is used to provide the information to the server-side agent.

22. The computer program product of claim 15 , wherein the client-side agent performs steps to process data stored on the client data processing system to generate the information requested by the server-side agent.

23. The computer program product of claim 21 , wherein the data comprises at least one of a policy for a single sign-on service, single sign-on (SSO) specifications, credentials for a user application, access control lists, and virus signatures.

24. The computer program product of claim 15 , wherein the program code is stored on the tangible computer recordable storage device in a data processing system, and wherein the program code is downloaded over a network from a remote data processing system to the data processing system.

25. The computer program product of claim 15 , wherein the program code is stored on the tangible computer recordable storage device in the server data processing system, and wherein the program code is downloaded over a network to a remote data processing system for use in a second tangible computer recordable storage device with the remote data processing system.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2024
From: GREEN MARKET SQUARE LIMITED
To: WORKDAY, INC.
Reel/Frame 067801/0892 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: GREEN MARKET SQUARE LIMITED
To: WORKDAY, INC.
Reel/Frame 067556/0783 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GREEN MARKET SQUARE LIMITED
Reel/Frame 055078/0982 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2010
From: KARANDE, ADVAIT DEEPAK; LOW, CHEE MENG; SESHAGIRI, NANDAGOPAL
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024570/0641 →