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.

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.