IP Library Granted Patent US 7,313,652
Granted Patent B2
US 7,313,652 · App. 11/088,402 · Granted Dec 25, 2007

Multi-level persisted template caching

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,313,652
App. No.
11/088,402
Granted
Dec 25, 2007
Kind
B2
Abstract

Methods and apparatuses are provided for use with a web server device, and which permit the web server logic to selectively store template data associated with one or more Active Server Pages (ASPs) or other like web pages in a multiple-level template storage arrangement that includes a first level storage mechanism within primary memory and at least one subsequent level storage mechanism within a secondary memory device.

Claims (30)

1. An apparatus comprising:

primary memory;

secondary memory; and

logic operatively coupled to said primary and secondary memory and configured to selectively store template data, to be used in dynamic generation of one or more web pages, in a first level template cache in said primary memory and to selectively store at least a portion of said template data in at least one subsequent level template cache in said secondary memory, wherein the selectively storing template data in said primary memory and said secondary memory is based at least in part on a demand level of the template data required in dynamic generation of the one or more web pages.

2. The apparatus as recited in claim 1 , wherein said template data includes at least a template flat structure portion associated with at least a portion of at least one web page.

3. The apparatus as recited in claim 1 , wherein said first level template cache includes a buffer suitable for storing template data associated with at least one web page.

4. The apparatus as recited in claim 1 , wherein said primary memory includes solid state memory circuits and said secondary memory includes at least one data storage medium selected from a group of data storage media including magnetic disk media, magnetic tape media, and optical disc media.

5. The apparatus as recited in claim 1 , wherein said logic includes at least one processing unit.

6. The apparatus as recited in claim 1 , wherein said logic further includes:

compiler logic configured to generate at least a portion of said template data based on at least one file;

template persisting logic operatively coupled to said complier logic, said primary memory and said secondary memory and configured to selectively store at least a portion of said template data generated by said compiler logic in said primary memory and said secondary memory; and

delivery logic operatively coupled to said complier logic, said template persisting logic, said primary memory, and said secondary memory, and configured to output at least a portion of a web page using said stored template data.

7. The apparatus as recited in claim 1 , wherein said template data includes Active Server Page (ASP) template data.

8. The apparatus as recited in claim 1 , wherein at least a portion of said logic is part of a web server device.

9. A method for use in a web server device having at least one processing unit, primary memory and secondary memory, the method comprising:

selectively storing template data in a first level template cache in said primary memory, the template data being used in dynamic generation of one or more web pages; and

subsequently selectively storing at least a portion of said template data in at least one subsequent level template cache in said secondary memory, wherein the selectively storing template data in said primary memory and said secondary memory is based at least in part on a demand level of the template data required in dynamic generation of the one or more web pages.

10. The method as recited in claim 9 , wherein said template data includes at least a template flat structure portion associated with at least a portion of at least one web page.

11. The method as recited in claim 9 , wherein selectively storing template data in said first level template cache in said primary memory further includes determining if a web request demand level for said web page exceeds a first level threshold value and if so, then selectively storing template data in said first level template cache.

12. The method as recited in claim 11 , further comprising determining said demand level during a defined period of time.

13. The method as recited in claim 11 , further comprising not storing said template data associated with said web page if said web request demand level for said web page does not exceed a first level threshold value.

14. The method as recited in claim 9 , wherein said template data includes Active Server Page (ASP) template data.

15. A computer-readable medium having computer implementable instructions for configuring at least one processing unit operatively coupled to a primary memory and at least one secondary memory to perform acts comprising:

selectively storing template data in a first level template cache in said primary memory, the template data being used in dynamic generation of one or more web pages; and

subsequently selectively storing at least a portion of said template data in at least one subsequent level template cache in said secondary memory, wherein the selectively storing template data in said primary memory and said secondary memory is based at least in part on a demand level of the template data required in dynamic generation of the one or more web pages.

16. The computer-readable medium as recited in claim 15 , wherein said template data includes at least a template flat structure portion associated with at least a portion of at least one web page.

17. The computer-readable medium as recited in claim 15 , wherein selectively storing template data in said first level template cache in said primary memory further includes determining if a web request demand level for said web page exceeds a first level threshold value and if so, then selectively storing template data in said first level template cache.

18. The computer-readable medium as recited in claim 17 , further comprising determining said demand level during a defined period of time.

19. The computer-readable medium as recited in claim 17 , further comprising not storing said template data associated with said web page if said web request demand level for said web page does not exceed a first level threshold value.

20. The computer-readable medium as recited in claim 15 , wherein said template data includes Active Sewer Page (ASP) template data.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECORDAL TO REMOVE INADVERTENTLY RECOREDED PROPERTIES SHOWN IN ATTACHED SHEET PREVIOUSLY RECORDED AT REEL: 047681 FRAME: 0916. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 18, 2019
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: SERVICENOW, INC.
Reel/Frame 049797/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2018
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: SERVICENOW, INC.
Reel/Frame 047681/0916 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →