Server application components with control over state duration
First Claim
1. In a computer, a computer operating environment for scalable, component-based server applications, comprising:
- a run-time service for executing an application component in a process, the application component having a state and implementing a set of functions;
an instance creation service operative, responsive to a request of a client, to return a reference to the application component through the run-time service to the client, whereby the client calls functions of the application component indirectly through the run-time service using the reference to initiate work by the application component; and
the run-time service being operative, responsive to an indication from the application component that the application component has completed the work for the client, to destroy the application component'"'"'s state on the application component returning from a call by the client without action by the client.
1 Assignment
0 Petitions
Accused Products
Abstract
A component-based framework includes system services and component integration interfaces that provide a run-time environment for component-based server application in which server application components have control over the duration of their state independent of client action. The framework provides functions that a server application component calls to indicate its work for a client is complete, and its state is to be destroyed. On the component'"'"'s return from the client'"'"'s method call, the framework destroys the component'"'"'s state thus releasing any server computer resources held by the component. This allows the server application components to be programmed so as to minimize the duration that their state remains in memory consuming server computer resources, and which enhances scalability of the server application.
79 Citations
21 Claims
-
1. In a computer, a computer operating environment for scalable, component-based server applications, comprising:
-
a run-time service for executing an application component in a process, the application component having a state and implementing a set of functions;
an instance creation service operative, responsive to a request of a client, to return a reference to the application component through the run-time service to the client, whereby the client calls functions of the application component indirectly through the run-time service using the reference to initiate work by the application component; and
the run-time service being operative, responsive to an indication from the application component that the application component has completed the work for the client, to destroy the application component'"'"'s state on the application component returning from a call by the client without action by the client. - View Dependent Claims (2, 3, 4, 5)
-
-
6. In a computer, a method of encapsulating state of processing work for a client by a server application in a component with improved scalability, comprising:
-
encapsulating function code and a processing state for the work in a component;
providing a reference through an operating service for a client to call the function code of the component to initiate processing of the work by the component;
receiving an indication from the component that the work by the component is complete; and
discarding the processing state of the component responsive to the component indicating completion of the work before receiving any indication from the client that the component'"'"'s work is complete. - View Dependent Claims (7, 8, 9, 10)
-
-
11. In a computer, a system service for providing an execution environment for scalable application components, comprising:
-
code responsive to a request from a client program to create an application component for returning to the client program a reference through the system service to the application component;
code responsive to a call from the client program using the reference for initiating processing of work by the application component, the application component producing a processing state during processing the work;
code for receiving an indication from the application component that processing by the application component of the work is complete; and
code for destroying the processing state of the application component responsive to the indication from the application component that processing by the application component of the work is complete and without action from the client program. - View Dependent Claims (12, 13)
-
-
14. In a computer having a main memory, a method of enhancing scalability of server applications, comprising:
-
executing an application component under control of an operating service, the application component having a state and function code for performing work responsive to method invocations from a client;
maintaining the state in the main memory between the method invocations of the function code by the client in the absence of an indication from the application component that the work is complete; and
destroying the state by the operating service in response to an indication from the application component without action by the client, such that the destroyed state is not persistent.
-
-
15. A computer-readable medium comprising computer executable instructions comprising:
-
instructions responsive to a request from a client program to create an application component for returning to the client program a reference through the system service to the application component;
instructions responsive to a call from the client program using the reference for initiating processing of work by the application component, the application component producing a processing state during processing the work;
instructions for receiving an indication from the application component that processing by the application component of the work is complete; and
instructions for destroying the processing state of the application component responsive to the indication from the application component that processing by the application component of the work is complete and without action from the client program. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification