Methods, apparatuses, systems, and articles for determining and implementing an efficient computer network architecture
First Claim
1. A method comprising:
- determining a rate-limiting factor of a computing environment including at least one user device, a server, and a data storage device, the rate-limiting factor being at least one of a data rate of a connection between the user device and server, instruction and data processing speed of at least one processor in the server, and data access time required to generate and transmit a data request to the data storage device and receive responsive data from the data storage device at the server;
determining at least one constraint on the user device, server, and/or data storage device based on the rate-limiting factor, the constraints related to the time required to download a presentation with data from the server using the user device, the time required to execute a module by the user device, and the time required for the server to access and retrieve data from the data storage device; and
implementing the user device, server, and/or data storage device to meet the determined constraints.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, apparatuses, systems, and articles of the invention are used to enhance the efficiency of a computing environment, and to improve its responsiveness to one or more users. In the invention, queuing of data or computer instructions is avoided since this would detract from best case performance for a network environment. The rate-limiting factor for the network is determined, and all constraints imposed by the rate-limiting factor are determined. Business logic is programmed in modules sufficiently small to avoid queuing of instructions. Data is stored by frequency of access and persistence to increase responsiveness to user requests. Requests for data from a data storage device are fulfilled not only with the requested data, but also additional data which is likely to be requested in the navigational hierarchy of presentations to which the requested data belongs.
123 Citations
62 Claims
-
1. A method comprising:
-
determining a rate-limiting factor of a computing environment including at least one user device, a server, and a data storage device, the rate-limiting factor being at least one of a data rate of a connection between the user device and server, instruction and data processing speed of at least one processor in the server, and data access time required to generate and transmit a data request to the data storage device and receive responsive data from the data storage device at the server;
determining at least one constraint on the user device, server, and/or data storage device based on the rate-limiting factor, the constraints related to the time required to download a presentation with data from the server using the user device, the time required to execute a module by the user device, and the time required for the server to access and retrieve data from the data storage device; and
implementing the user device, server, and/or data storage device to meet the determined constraints. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
determining a navigational structure of presentations; and
programming the server to retrieve all data associated with a user for the determined hierarchy of presentations upon a request for the lead presentation of the hierarchy so that such data can be used to populate the presentations of the hierarchy upon request by the user. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
determining the frequency of access of different classes of data;
determining persistence of the data as always dynamic, initially dynamic but later static, or always static;
storing data in the server and data storage device based on the determined frequency of access of different classes of data and the persistence. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A system for use with at least one network, the system comprising:
-
at least one user device operable by a user to generate a data request;
a server coupled to receive the data request from the user device via the network, and storing business logic in modules sufficiently small to be executed without queuing of instructions to process the data request, the server programmed to refer to a cache or data storage unit (DSU) thereof to obtain the data requested by the user, the data stored in the cache or DSU according to persistence and frequency of access, and if the data is not available in the cache or DSU, the server generating a request for the data of a lead presentation and all presentations in a hierarchy thereunder; and
a data storage device coupled to receive the forwarded data request from the server, and retrieving data responsive to the server, the data including data for a presentation hierarchy including all data that can be accessed by the user for the lead presentation and presentations linked thereunder and providing the same to the server over the network. - View Dependent Claims (23, 24, 25, 26)
-
-
27. An apparatus comprising:
a server having a memory and a data storage unit (DSU), and programmed to store data used by such server amongst the memory and DSU according to frequency of access and persistence of the data. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34)
-
35. A data storage device comprising:
a data storage unit storing data in at least one user profile, the data associated with an index identifying a presentation hierarchy to which the data belongs, and at least one variable name identifying a field of the respective presentation for population with the data. - View Dependent Claims (36, 37, 38)
- 39. A data storage medium storing data in accordance with the frequency of access and persistence of the data.
- 49. A processor-readable medium storing data in at least one user profile, the data associated with an index identifying a presentation hierarchy to which the data belongs, and at least one variable name identifying a field location of the respective presentation for population with the data.
- 55. A processor-readable medium storing a computer program executable by a processor to respond to a request for data by retrieving the requested data and additional data included in a presentation hierarchy containing the requested data, the processor responding to the request for data by providing the requested data and additional data.
Specification