IP Library Granted Patent US 7,024,452
Granted Patent B1
US 7,024,452 · App. 10/195,798 · Granted Apr 4, 2006

Method and system for file-system based 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,024,452
App. No.
10/195,798
Granted
Apr 4, 2006
Kind
B1
Abstract

A method and system for file-system based caching can be used to improve efficiency and security at network sites. In one set of embodiments, the delivery of content and storing content component(s) formed during generation of the content may be performed by different software components. Content that changes at a relatively high frequency or is likely to be regenerated between requests may not have some or all of its corresponding files cached. Additionally, extra white space may be removed before storing to reduce the file size. File mapping may be performed to ensure that a directory within the cache will have an optimal number of files. Security at the network site may be increased by using an internally generated filename that is not used or seen by the client computer. Many variations may be used is achieving any one or more of the advantages described herein.

Claims (31)

1. A method for generating and storing content responsive to a user request, comprising:

analyzing a request to obtain a set of parsed elements;

generating a set of mapped filenames from the set of parsed elements;

obtaining content responsive to the request, wherein the content is composed of a set of components; and

storing a set of stored components to a cache, wherein each of the set of stored components is in the set of components and content within the cache is arranged hierarchically.

2. The method of claim 1 , wherein analyzing the request further comprises parsing the request to obtain the set of parsed elements.

3. The method of claim 2 , wherein one of the set of parsed elements corresponds to a caching-related parameter.

4. The method of claim 3 , wherein each mapped filename is obtained by hashing one or more of the set of parsed elements.

5. The method of claim 4 , wherein each mapped file name has an internal format and is not accessible by a client computer.

6. The method of claim 3 , wherein obtaining content responsive to the request further comprises determining whether each of the set of components is in the cache.

7. The method of claim 6 , wherein determining whether a component from the set of components is in the cache is done using a mapped filename from the set of mapped filenames, the mapped filename corresponding to the component.

8. The method of claim 7 , wherein obtaining content responsive to the request further comprises generating the component for each component in the set of components that is not in the cache.

9. The method of claim 8 , further comprising generating tracking information for the component.

10. The method of claim 8 , further comprising generating metadata pertaining to the caching of the component.

11. The method of claim 10 , wherein storing a set of stored components to a cache further comprises determining the cacheability of each of the set of components that were generated to obtain the set of stored components.

12. The method of claim 11 , wherein determining the cacheability includes evaluating the metadata pertaining to the caching of the component.

13. The method of claim 12 , wherein each of the set of components that is stored to the cache is stored to a location corresponding to the corresponding mapped file name.

14. The method of claim 13 , wherein content within the cache is arranged in a directory based file system.

15. The method of claim 14 , wherein each directory within the cache has no more than approximately 4100 files.

16. The method of claim 14 , further comprising preprocessing the at least one component before it is stored.

17. The method of claim 16 , wherein preprocessing includes removing extra whitespace from the at least one component.

18. A method for generating and storing content responsive to a user request, comprising:

analyzing a request to obtain a set of parsed elements;

generating a set of mapped filenames from the set of parsed elements;

obtaining content responsive to the request, wherein the content is composed of a set of components; and

storing a set of stored components to a cache, wherein each of the set of stored components is in the set of components and content within the cache is arranged in a directory structure.

19. The method of claim 18 , wherein each of the set of stored components is stored to a directory of the directory structure.

20. The method of claim 18 , wherein

a first component within the set of stored components is stored to a first directory in the cache;

a second component in the set of stored components is stored to a second directory within the cache; and

the first directory and the second directory are on different levels.

Assignments (11)
IP BUSINESS SALE AGREEMENT Recorded Sep 13, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 040019/0627 →
CERTIFICATE OF AMALGAMATION Recorded Sep 13, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 040019/0578 →
CERTIFICATE OF CONTINUANCE Recorded Sep 13, 2016
From: OP IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 040019/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2011
From: VIGNETTE PARTNERSHIP, LP
To: OPEN TEXT S.A.
Reel/Frame 027483/0205 →
CERTIFICATE OF CONVERSION Recorded Oct 14, 2011
From: VIGNETTE OPERATING, LLC
To: VIGNETTE PARTNERSHIP, LP
Reel/Frame 027066/0773 →
CERTIFICATE OF CONVERSION Recorded Oct 13, 2011
From: VIGNETTE CORPORATION
To: VIGNETTE OPERATING, LLC
Reel/Frame 027091/0009 →
MERGER Recorded Oct 12, 2011
From: VIGNETTE SOFTWARE, LLC
To: VIGNETTE CORPORATION
Reel/Frame 027077/0423 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 14, 2010
From: VIGNETTE LLC (96%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023792/0470 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (96%)
To: VIGNETTE LLC
Reel/Frame 024006/0001 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (4%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023768/0708 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2003
From: O'CONNELL, CONLETH S., JR.; BERENSON, MAXWELL J.; RAJKUMAR, N. ISAAC
To: VIGNETTE CORPORATION
Reel/Frame 013874/0544 →