Patent ID: 8447948
Filing Date: 2013-05-21
Classification: G06F

Abstract:
1. A computer implemented method for managing a data cache in an application server having server resources comprising a processor, memory and access to remote resources, comprising: (a) determining a group of cache objects for inclusion in a first, uncompressed portion of the data cache, and a second group of cache objects for inclusion in a second, compressed portion of the cache based on a replacement policy; (b) compressing ones of said second group of cache objects and storing said objects in the compressed portion of the cache; (c) defining a cost metric and a benefit metric based on application operations on objects in the data cache, the cost benefit and benefit metric selected from a plurality of cost benefits and a plurality of benefit metrics including at least one measuring the server resources and at least one measuring cache performance; (d) sampling operations on cache objects; (e) determining a cost value for the cost metric and a benefit value for the benefit metric for a plurality of relative sizes of the compressed and uncompressed portions of the data cache by computing the cost value to a normalized cost value and the benefit value to a normalized benefit value; (f) setting the size of the compressed portion relative to the uncompressed portion based on an optimal cost to benefit ratio of the normalized cost value and the normalized benefit value for said application; and (g) repeating steps (e) and (f) continuously.