Skip to Main Content
Object-oriented (OO) technologies have become widely adopted in enterprise applications due to the additional functionality and flexibility they provide to these applications. At the same time, however, OO technologies also require significant amounts of computational power to support, greatly impacting the performance and scalability of such applications. A very popular solution to mitigate this problem is object caching. In this paper, we show how the application of object caching maps into an optimization problem. In particular, we focus on the design-time decision of determining which objects should be candidates for caching. Choosing the cacheable objects is an important decision since it can have a significant impact on application performance. We formulate this problem as a linear integer program and present a heuristic solution approach. We also demonstrate, through a set of experiments, that our heuristic provides solutions that are reasonably close to optimal. Our contribution is a model and an efficient solution approach for this model that can help application developers to make more informed cacheability decisions and thereby improve application performance and scalability.