Transparent injection of intelligent proxies into existing distributed applications
First Claim
Patent Images
1. A method for transparently injecting a proxy into a distributed application having a server portion and a client portion, comprising:
- creating the proxy that implements an interface of a remote object in the server portion and has a capability to cache data from the remote object;
modifying the client portion to substitute a call for the remote object with a call for the proxy; and
interposing a client runtime that includes the proxy between the client portion and the server portion.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for transparently injecting a proxy into a distributed application having a server portion and a client portion including creating the proxy that implements an interface of a remote object in the server portion and has a capability to cache data from the remote object, modifying the client portion to substitute a call for the remote object with a call for the proxy, and interposing a client runtime that includes the proxy between the client portion and the server portion.
-
Citations
36 Claims
-
1. A method for transparently injecting a proxy into a distributed application having a server portion and a client portion, comprising:
-
creating the proxy that implements an interface of a remote object in the server portion and has a capability to cache data from the remote object;
modifying the client portion to substitute a call for the remote object with a call for the proxy; and
interposing a client runtime that includes the proxy between the client portion and the server portion. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for transparently injecting a proxy into a distributed application having a server portion and a client portion, comprising:
-
creating the proxy for a plurality of remote objects in the server portion, each proxy implementing an interface of a corresponding remote object and having a capability to cache data from the corresponding remote object;
modifying the client portion to substitute a call for a remote object with a call for a corresponding proxy; and
interposing a runtime that includes the proxy between the client portion and the server portion. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for transparently injecting a proxy into a distributed application having a server portion and a client portion, comprising:
-
analyzing the server portion to find each remote object in the server portion;
creating the proxy for each remote object in the server portion and including the proxy in a runtime library;
analyzing the client portion to determine calls made to remote objects in the server portion and replacing calls for remote objects with calls for a corresponding proxy; and
interposing the runtime library between the client portion and the server portion.
-
-
25. A method for optimizing a distributed application having a server portion and a client portion, comprising:
-
interposing a runtime between the client portion and the server portion, the runtime comprising at least a proxy associated with a remote object in the server portion, the proxy having a capability to cache state information from the remote object;
enabling the client portion to interact with the proxy;
fetching data from the remote object into the proxy; and
synchronizing data in the proxy with data in the remote object.
-
-
26. A computer-readable medium having recorded thereon instructions executable by a processor, the instructions for:
-
generating a proxy for a remote object in a server and making the proxy available to a client;
fetching data from the remote object into the proxy; and
returning data in the proxy to the remote object. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A computer-readable medium having recorded thereon instructions executable by a processor, the instructions for:
-
analyzing a server portion of a distributed application to find each remote object in the server portion;
generating a proxy for each remote object in the server portion; and
including the proxy for each remote object in the server portion in a runtime library. - View Dependent Claims (32)
-
-
33. An optimizer for a distributed application, comprising:
-
means for creating a local proxy for a remote object in the distributed application;
means for fetching data from the remote object into the local proxy; and
means for synchronizing data in the local proxy with data in the remote object. - View Dependent Claims (34, 35, 36)
-
Specification