Service for retrieving and aggregating data used to generate web pages or other content items
First Claim
Patent Images
1. A method of generating data used to dynamically generate web pages, the method comprising:
- receiving a request at a web server for a web page;
in response to the request, processing at least one template for generating the web page, wherein processing the template comprises invoking at least one method of an aggregation component in order to initiate retrieval by the aggregation component, from a plurality of services, of data for generating the web page;
via the aggregation component;
(a) generating a graph structure that corresponds to the at least one method and specifies dependencies between service requests for retrieving the data from the plurality of services, (b) during dynamic generation of the web page, traversing the graph structure and using the graph structure i) to maintain, during generation of the web page, service request status information, and ii) to control order and timing with which individual service requests are sent to corresponding services at least in part based on traversing the graph structure and at least in part on the service request status information and (c) receiving results of the sent service requests from the plurality of services; and
further processing the at least one template to generate the web page using the service request results received by the aggregation component.
1 Assignment
0 Petitions
Accused Products
Abstract
An aggregation service acts as an intermediary between a template (or template processor) and a set of two or more services that supply data for generating web pages or other types of content items. The aggregation service stores dependency information in connection with the set of services, and uses this information to control the order and timing with which service requests are made on behalf of the template/template processor. The aggregation service aggregates the retrieved service data for incorporation into the template, and in some cases, formats the service data for display.
-
Citations
23 Claims
-
1. A method of generating data used to dynamically generate web pages, the method comprising:
-
receiving a request at a web server for a web page; in response to the request, processing at least one template for generating the web page, wherein processing the template comprises invoking at least one method of an aggregation component in order to initiate retrieval by the aggregation component, from a plurality of services, of data for generating the web page; via the aggregation component;
(a) generating a graph structure that corresponds to the at least one method and specifies dependencies between service requests for retrieving the data from the plurality of services, (b) during dynamic generation of the web page, traversing the graph structure and using the graph structure i) to maintain, during generation of the web page, service request status information, and ii) to control order and timing with which individual service requests are sent to corresponding services at least in part based on traversing the graph structure and at least in part on the service request status information and (c) receiving results of the sent service requests from the plurality of services; andfurther processing the at least one template to generate the web page using the service request results received by the aggregation component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A web server comprising a memory and a processor programmed to perform a method of generating data used to dynamically generate web pages, the method comprising:
-
receiving a request at a web server for a web page; in response to the request, processing at least one template for generating the web page, wherein processing the template comprises invoking at least one method of an aggregation component in order to initiate retrieval by the aggregation component, from a plurality of services, of data for generating the web page; via the aggregation component;
(a) generating a graph structure that corresponds to the at least one method and specifies dependencies between service requests for retrieving the data from the plurality of services, (b) during dynamic generation of the web page, traversing the graph structure and using the graph structure i) to maintain, during generation of the web page, service request status information, and ii) to control order and timing with which individual service requests are sent to corresponding services at least in part based on traversing the graph structure and at least in part on the service request status information and (c) receiving results of the sent service requests from the plurality of services; andfurther processing the at least one template to generate the web page using the service request results received by the aggregation component.
-
-
17. A computer storage device which stores a computer program which, when executed, causes a processor to perform a method of generating data used to dynamically generate web pages, the method comprising:
-
receiving a request at a web server for a web page; in response to the request, processing at least one template for generating the web page, wherein processing the template comprises invoking at least one method of an aggregation component in order to initiate retrieval by the aggregation component, from a plurality of services, of data for generating the web page; via the aggregation component;
(a) generating a graph structure that corresponds to the at least one method and specifies dependencies between service requests for retrieving the data from the plurality of services, (b) during dynamic generation of the web page, traversing the graph structure and using the graph structure i) to maintain, during generation of the web page, service request status information, and ii) to control order and timing with which individual service requests are sent to corresponding services at least in part based on traversing the graph structure and at least in part on the service request status information and (c) receiving results of the sent service requests from the plurality of services; andfurther processing the at least one template to generate the web page using the service request results received by the aggregation component.
-
-
18. A system for dynamically generating documents, comprising:
-
one or more processors; a template processor that uses document templates to dynamically generate documents using service data retrieved from services, said template processor comprising software executed by at least one of said one or more processors; and an aggregation component that acts as an intermediary between the template processor and a plurality of said services, and sends service requests to the plurality of services on behalf of, and in response to requests from, the template processor, said aggregation component comprising software executed by at least one of said one or more processors; wherein the aggregation component maintains information about dependencies between the service requests, and uses such information to control the order and timing, relative to dependent ones of the service requests, with which the service requests are sent to the plurality of services. - View Dependent Claims (19, 20, 21, 22)
-
-
23. A computer system comprising:
-
at least one web server machine having at least one processor configured to; receive a request for a web page; in response to the request, process at least one template for generating the web page, wherein processing the template comprises invoking at least one method of an aggregation component in order to initiate retrieval by the aggregation component, from a plurality of services, of data for generating the web page, wherein via the aggregation component the processor is further configured to;
(a) generate a graph structure that corresponds to the at least one method and specifies dependencies between service requests for retrieving the data from the plurality of services, (b) during dynamic generation of the web page, traverse the graph structure and use the graph structure i) to maintain, during generation of the web page, service request status information, and ii) to control an order and a timing with which individual service requests are sent to corresponding services at least in part based on traversing the graph structure and at least in part on the service request status information, and (c) receive results of the sent service requests from the plurality of services; andfurther process the at least one template to dynamically generate the web page using the service request results received by the aggregation component; a storage configured to store the at least one template.
-
Specification