Caching output from an object in an application server environment
AssigneeE★Trade
InventorsRoni Korenshtein, Rajesh Narayanaswamy
Life of this patent
Estimating the term…
Abstract
A method and system of streaming a page of data are described. In one embodiment, an object corresponding to the page of data is allocated. The object is executed. If the object is a proxy, then the proxy is executed. If the object is a component, then the component is executed. If the object is a container, then the container is executed.
Claims40
A computer implemented method of streaming a page of data, the method comprising:
- allocating at least one object corresponding to the page of data, the page of data including one or more sub-components;
- executing the at least one object within a single request to an application server to provide the page, wherein, for each of the one or more sub-components, the executing comprises,
- creating a proxy corresponding to the sub-component, the proxy representing a functionality of an object corresponding to the sub-component,
- having the proxy to return the data corresponding to the sub-component to the at least one object if the corresponding data is in a cache memory without executing the object corresponding to the sub-component in order to obtain the data corresponding to the sub-component,
- if the corresponding data is not in the cache memory, having the proxy to create the object corresponding to the sub-component to execute the object via a container associated with the object to generate the data corresponding to the sub-component, to return the generated data to the at least one object, and to store the data in the cache memory, including
- generating at least one container object from the container, and
- executing the at least one container object, including
- executing a proxy if the at least one container object is a proxy,
- executing a component if the at least one container object is a component, and
- executing a container if the at least one container object is a container;
- and recursively performing allocating and executing the at least one object to process at least one sub-object contained within the at least one object.
A system for streaming a page of data, the system comprising:
- means for allocating at least one object corresponding to the page of data, the page of data including one or more sub-components;
- means for executing the at least one object within a single request to an application server to provide the page, wherein, for each of the sub-components, means for executing comprises,
- means for creating a proxy corresponding to the sub-component, the proxy representing a functionality of an object corresponding to the sub-component,
- means for having the proxy to return the data corresponding to the sub-component to the at least one object if the corresponding data is in a cache memory without executing the object corresponding to the sub-component in order to obtain the data corresponding to the sub-component,
- if the corresponding data is not in the cache memory, means for having the proxy to create the object corresponding to the sub-component, to execute the object via a container associated with the object to generate the data corresponding to the sub-component, to return the generated data to the at least one object, and to store the data in the cache memory, including
- generating at least one container object from the container, and
- executing the at least one container object, including
- executing a proxy if the at least one container object is a proxy,
- executing a component if the at least one container object is a component, and
- executing a container if the at least one container object is a container;
- and
- recursively performing allocating and executing the at least one object to process at least one sub-object contained within the at least one object.
An article of manufacture including one or more computer-readable media with executable instructions therein, which, when executed by a processing device causes the processing device to:
- allocate at least one object corresponding to the page of data, the page of data including one or more sub-components;
- execute the at least one object within a single request to an application server to provide the page, wherein, for each of the one or more sub-components, the executing comprises,
- create a proxy corresponding to the sub-component, the proxy representing a functionality of an object corresponding to the sub-component,
- have the proxy to return the data corresponding to the sub-component to the at least one object if the corresponding data is in a cache memory without executing the object corresponding to the sub-component in order to obtain the data corresponding to the sub-component,
- if the corresponding data is not in the cache memory, have the proxy to create the object corresponding to the sub-component, to execute the object via a container associated with the object to generate the data corresponding to the sub-component, to return the generated data to the at least one object, and to store the data in the cache memory, including
- generating at least one container object from the container, and
- executing the at least one container object, including
- executing a proxy if the at least one container object is a proxy,
- executing a component if the at least one container object is a component, and
- executing a container if the at least one container object is a container;
- and
- recursively performing allocating and executing the at least one object to process at least one sub-object contained within the at least one object.
A system for streaming a page of data, the system comprising:
- a base agent processing unit to allocate at least one object corresponding to the page of data within a single request to an application server to provide the page, the page of data including one or more sub-components;
- an object processing unit to execute the at least one object if the at least one object is a component to perform a task of the component and to execute each of the sub-objects contained within the at least one object if the respective object is a container;
- and
- a proxy processing unit to execute the at least one object if the at least one object is a proxy, wherein for each of the sub-components, the proxy processing unit returns data corresponding to the sub-component to the base agent processing unit from the cache memory if the corresponding data is in the cache memory without executing the object corresponding to the sub-component in order to obtain the data corresponding to the sub-component, and wherein if the data is not in the cache memory, the proxy processing unit creates an object corresponding to the sub-component and invokes the object processing unit to execute the object to generate output data, returns the output data to the base agent processing unit, and stores the output data in the cache memory, including
- generating at least one container object from the container, and
- executing the at least one container object, including
- executing a proxy if the at least one container object is a proxy,
- executing a component if the at least one container object is a component, and
- executing a container if the at least one container object is a container, and
- wherein the base agent processing unit recursively performs allocating and executing the at least one object to process at least one sub-object contained within the at least one object.
A computer implemented method for streaming data, the method comprising:
- a Web server receiving a request for a URL (uniform request locator) page of data from a client over a wide area network (WAN) and the Web server transferring the request to an application server;
- the application server creating a base agent associated with the requested URL page and executing a method of the base agent, wherein executing a method of the base agent includes determining which object is associated with the requested URL page, allocating the determined object, and executing a method of the allocated object by passing one or more input parameters related to the requested URL page to the allocated object, wherein executing a method of the allocated object comprises
- if the object is a container, the container determining all of the sub-objects contained within the container, allocating each of the sub-objects, and executing a method of each sub-objects to cause each sub-object to stream out its own data to the base agent,
- if the object is a component, streaming out an output of the component to the base agent, and
- if the object is a proxy, determining whether the input parameters match one or more cache criteria for an underlying object, determining whether there is an entry within a component cache if the input parameters match the one or more cache criteria, and streaming out the requested data from the component cache if the entry is found in the component cache.
Dependencies are inferred from the claim text.