Sooner or later all architects and developers of large-scale J2EE products
face the same problem: their software's response time gets slower and slower,
and the scalability of their solution is ending. This article investigates
caching solutions that promise to help; sheds some light on their
limitations; and describes an easy, lightweight, and effective caching
mechanism that solves most of the issues.
Note: This article does not assess all possible ways of caching nor does it
take solutions such as commercial external caching products into account.
The Problem
Whenever we build distributed software for a large scale - whether it's J2EE
or not - we face the same challenge: keep response or transaction times low
while increasing user load. The main problem is that essentially all software
systems scale exponentially at some point (see Figure 1). Architecting and
imp... (more)