Bootstrapping
By default, when the Content Engine is started,
all its caches are empty. In a test or development environment, where
activity is usually very low, this is not a problem. For a production
system running a busy site, however, the level of requests can be so high
as to completely cripple the site if all requests have to be fully
processed rather than served from the cache. For this reason, the
Content Engine
includes an InitialBootstrapper
component that can be
used to protect the Content Engine from traffic during start-up, allowing it to prime
the caches with frequently-requested pages before it is required to
respond to real requests.
The InitialBootstrapper
component works
by:
-
Intercepting incoming requests and returning HTTP 503 responses (Service Unavailable).
-
Simultaneously submitting a series of dummy requests for frequently requested pages, thereby priming the caches with content that will enable fast responses to many requests when the bootstrap sequence is completed.
Bootstrapping is initialized on a per-publication basis by setting
the bootstrapOnStartup
parameter in each publication's
feature
resource. The
bootstrapOnStartup
parameter allows you to specify the
individual sections of a publication that are to be bootstrapped. For a
detailed description, see bootstrapOnStartup
.
Details of how the InitialBootstrapper
component
carries out the bootstrap operation can be controlled by setting
properties in the
configuration-layer-root/neo/io/content/InitialBootstrapper.properties
configuration file, described in the following section.