IP Library Granted Patent US 7,089,296
Granted Patent B2
US 7,089,296 · App. 10/424,227 · Granted Aug 8, 2006

System and method for caching and validating user and command specific server response messages

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,089,296
App. No.
10/424,227
Granted
Aug 8, 2006
Kind
B2
Abstract

A system and method is provided for user and command specific place based caching with cache validation, including a server; a database; a server cache; the server responsive to receiving a request message for generating a user-specific cache file name, accessing the server based cache with the file name to obtain a cached response message, validating the cached response message, generating a response message selectively from the cached response message if obtained and validated, and otherwise generating from the database and selectively caching the response message.

Claims (75)

1. A method for user and command specific place based caching with cache validation, comprising:

receiving a request message at a server;

generating a user-specific cache file name;

accessing a server based cache with said file name to obtain a cached response message;

validating said cached response message; and

generating a response message selectively from said cached response message if obtained and validated, otherwise generating and selectively caching said response message.

2. The method of claim 1 , further comprising generating said user-specific cache file name as a hashed concatenation of a request argument, a user name, a user's name list, and a server build version.

3. The method of claim 2 , further comprising inhibiting caching of said response message at said server based cache for responses cached in browser cache.

4. The method of claim 2 , further comprising receiving administrator defined specification of cache users, selectively including anonymous user, whose response pages will be cached in said server based cache.

5. The method of claim 2 , further comprising invalidating a cached response message responsive to any change in group membership of a member submitting said request message.

6. The method of claim 2 , further comprising invalidating a cached response messages responsive to a change is said server build version.

7. The method of claim 2 , further comprising invalidating said cached response message for all cached pages of a room having a last modified date later than a last modified date of said cached response message.

8. The method of claim 2 , further comprising invalidating said cached response message for all cached pages of a child room for which a change is made to its parent room.

9. The method of claim 2 , further comprising invalidating said cached response message for all cached pages of a place for which a change has been made to its members room.

10. The method of claim 2 , further comprising invalidating said cached response message for all places on a server having had a change to its setup room.

11. The method of claim 2 , further comprising invalidating all cached response messages responsive to said server being upgraded.

12. A system for user and command specific place based caching with cache validation, comprising:

a server;

a database;

a server based cache;

said server responsive to receiving a request message for generating a user-specific cache file name, accessing said server based cache with said file name to obtain a cached response message, validating said cached response message, generating a response message selectively from said cached response message if obtained and validated, and otherwise generating from said database and selectively caching said response message.

13. The system of claim 12 , further comprising:

a browser;

a browser cache;

said server further for

generating said user-specific cache file name as a hashed concatenation of a request argument, a user name, a user's name list, and a server build version;

inhibiting caching of said response message at said server based cache for responses cached in said browser cache;

receiving administrator defined specification of cache users, selectively including anonymous user, whose response pages will be cached in said server based cache;

invalidating a cached response message responsive to any change in group membership of a member submitting said request message;

invalidating a cached response messages responsive to a change is said server version;

invalidating said cached response message for all cached pages of a room having a last modified date later than a last modified date of said cached response message;

invalidating said cached response message for all cached pages of a child room for which a change is made to its parent room;

invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

invalidating said cached response message for all places on a server having had a change to its setup room; and

invalidating all cached response messages responsive to said server being upgraded.

14. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for user and command specific place based caching with cache validation, said method comprising:

receiving a request message at a server;

generating a user-specific cache file name;

accessing a server based cache with said file name to obtain a cached response message;

validating said cached response message; and

generating a response message selectively from said cached response message if obtained and validated, otherwise generating and selectively caching said response message.

15. The program storage device of claim 14 , sad method further comprising:

generating said user-specific cache file name as a hashed concatenation of a request argument, a user name, a user's names list, and a server build version;

inhibiting caching of said response message at said server based cache for responses cached in said browser cache;

receiving administrator defined specification of cache users, selectively including anonymous user, whose response pages will be cached in said server based cache;

invalidating a cached response message responsive to any change in group membership of a member submitting said request message;

invalidating a cached response messages responsive to a change is said server version;

invalidating said cached response message for all cached pages of a room having a last modified date later than a last modified date of said cached response message;

invalidating said cached response message for all cached pages of a child room for which a change is made to its parent room;

invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

invalidating said cached response message for all places on a server having had a change to its setup room; and

invalidating all cached response messages responsive to said server being upgraded.

16. A computer program product for user and command specific place based caching with cache validation comprising:

a computer readable medium;

first program instructions for receiving a request message at a server;

second program instructions for generating a user-specific cache file name;

third program instructions for accessing a server based cache with said file name to obtain a cached response message;

fourth program instructions for validating said cached response message; and

fifth program instructions for generating a response message selectively from said cached response message if obtained and validated, otherwise generating and selectively caching said response message; and wherein

said first, second. third, fourth. and fifth program instructions are recorded on said computer readable medium.

17. The computer program product of claim 16 , further comprising:

sixth program instructions for generating said user-specific cache file name as a hashed concatenation of a request argument, a user name, a user's names list, and a server build version;

seventh program instructions for inhibiting caching of said response message at said server based cache for responses cached in said browser cache;

eighth program instructions for receiving administrator defined specification of cache users, selectively including anonymous user, whose response pages will be cached in said server based cache;

ninth program instructions for invalidating a cached response message responsive to any change in group membership of a member submitting said request message;

tenth program instructions for invalidating a cached response messages responsive to a change is said server version;

eleventh program instructions for invalidating said cached response message for all cached pages of a room having a last modified date later than a last modified date of said cached response message;

twelfth program instructions for invalidating said cached response message for all cached pages of a child room for which a change is made to its parent room;

thirteenth program instructions for invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

fourteenth program instructions for invalidating said cached response message for all cached pages of a place for which a change has been made to its members room;

fifteenth program instructions for invalidating said cached response message for all places on a server having had a change to its setup room; and

sixteenth program instructions for invalidating all cached response messages responsive to said server being upgraded; and wherein

said sixth, seventh, eighth, ninth, tenth, eleventh, twelfth, thirteenth, fourteenth, fifteenth, and sixteenth program instructions are recorded on said computer readable medium.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CORPORATION
Reel/Frame 054486/0422 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 046486/0433 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2009
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: RPX CORPORATION
Reel/Frame 022951/0408 →