Configure the Delivery Tier for Stale Configuration Model Support
Introduction
Goal
Configure Hippo's delivery tier to use a stale configuration model for serving requests while the updated configuration model is being reloaded.
Background
Enabling stale configuration support will make sure that if the delivery tier's configuration model needs to be reloaded (due to configuration changes made by a webmaster) this will be done in a background thread. Until that background thread is finished, the delivery tier will serve HTTP requests with the old (stale) model. This guarantees frontends that are hit by visitors won't suffer from possible hiccups during model reloading.
In case you have more then 20 channels, or when a single channel has a lot of configuration nodes it is recommended to turn on stale configuration support.
Stale configuration support will make sure that if the HST model needs to be reloaded (due to configuration changes made by a webmaster) the HST will reload its' model in a background thread. Untill that background thread is finished, the HST will serve HTTP requests with the old (stale) model. This guarantees frontends that are hit by visitors won't suffer from possible hiccups during model reloading.
Enable Stale Configuration Model Support
In your hst-config.properties, on production add/set the following property:
stale.configuration.supported = true
This setting will make sure that if the HST model needs to be reloaded, it will do so in a background thread, and as long as that background thread is not finished, the HST will continue to serve HTTP requests with the old (stale) model. This guarantees frontends that are hit by visitors won't suffer from possible hiccups during model reloading.
If you want to know whether stale model support is turned on, you can set the log level of the following class to INFO level :
org.hippoecm.hst.configuration.model.HstManagerImpl
If the log-level set to INFO before start up you should see in the site logs something like
INFO: Is stale configuraion for HST model supported : true
Otherwise, if you set the log level of the HstManagerImpl to INFO in a running environment through the /logging servlet, then during a async reload of the mode, you should see in the logs something like:
INFO: Asynchronous hst model build will be scheduled