IP Library Granted Patent US 7,225,296
Granted Patent B2
US 7,225,296 · App. 11/087,925 · Granted May 29, 2007

Multiple-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,225,296
App. No.
11/087,925
Granted
May 29, 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 (33)

1. An apparatus comprising:

primary memory and secondary memory; and

means for selectively storing template data in a first level template cache in said primary memory and for selectively storing at least a portion of said template data in at least one subsequent level template cache in said secondary memory;

wherein said first level template cache includes a buffer suitable for storing template data associated with at least one web page; and

wherein said means selectively stores said template data associated with said web page in said buffer if a web request demand level for said web page exceeds a level threshold value.

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 said web page.

3. The apparatus as recited in claim 1 , wherein said web request demand level is determined over a defined period of time.

4. The apparatus as recited in claim 1 , wherein said means selectively stops storing said template data associated with said web page in said buffer if said web request demand level for said web page does not exceed the level threshold value.

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

6. The apparatus as recited in claim 1 , wherein said means comprises:

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

template persisting logic operatively coupled to said compiler 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.

7. The apparatus as recited in claim 6 , wherein said means further comprises:

delivery logic operatively coupled to said compiler 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.

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

9. A system comprising:

means for selectively storing template data in a first level template cache in a primary memory;

means for subsequently selectively storing at least a portion of said template data in at least one subsequent level template cache in a secondary memory;

means for generating at least a portion of said template data based on at least one file; and

means for outputting at least a portion of a web page using said stored template data.

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

11. The system as recited in claim 10 , wherein said template data further includes a template meta information portion associated with said template flat structure portion.

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

13. 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 if a web request demand level for a web page exceeds a level threshold value; and

subsequently selectively storing at least a portion of said template data in at least one subsequent level template cache in said secondary memory.

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

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

16. The method as recited in claim 15 , further comprising selectively storing at least a portion of said template data in said secondary memory if said web request demand level for said web page does not exceed said level threshold value.

17. The method as recited in claim 16 , further comprising not storing said template data in said secondary memory if said web request demand level for said web page does not exceed a subsequent level threshold value.

18. The method as recited in claim 16 , further comprising selectively storing at least a second portion of said template data in said primary memory if said web request demand level for said web page does not exceed said level threshold value.

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

20. A computer-readable medium having computer-executable instructions that, when executed by one or more processors, directs a device to perform the method of claim 13 .

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 →