Methods and computer program products for using a front-end server to
access content stored on one or more back-end servers. The front-end
server receives requests for content from client systems. Back-end
servers store the content, but to the client system, it appears as if the
front-end server is the content's source. Upon receiving the request, the
front-end server checks the validity of the request and examines a global
catalog that dynamically maps client system requests to the back-end
server or servers that store the requested content. In some
circumstances, the content will be stored at a single back-end server and
the front-end server directs the request to that server. Alternatively, a
list of back-end servers storing the requested content may be generated.
If so, the front-end then uses an authentication token as a key to a hash
operation that is performed on the list and a single server that is
capable of satisfying the request for content is identified. A given
request and authentication token always identify the same server if the
list of servers available for providing the requested content remains the
same. The front-end server provides a single source for content requests
so that client systems are not required to alter requests or invalidate
local caches when content is moved from one back-end server to another.
The front-end server also provides an additional level of security for
back-end servers.