Kentico CMS 7.0 Developer's Guide

Synchronization mechanisms

Synchronization mechanisms

Previous topic Next topic Mail us feedback on this topic!  

Synchronization mechanisms

Previous topic Next topic JavaScript is required for the print function Mail us feedback on this topic!  

This topic describes the process of propagating changes in a web farm.


When you make changes to content on a server, those changes get logged into the database as a web farm task. The server then notifies other servers, which retrieve the task data from the database and make appropriate changes in their file system or memory. There are two ways servers can get notified about changes in the web farm.


URL notifications


Every Kentico CMS instance contains a page that a web farm server can send requests to when it generates one or more web farm tasks. The other web farm servers don't get involved in the process until they are notified about the changes. When this happens, each server fetches its tasks and processes them accordingly.


This is the default behavior in instances not running on Windows Azure.


Database notifications


In this approach, a column in the CMS_WebFarmServer database table is used. The column contains a time stamp, which indicates the time of the last change made on a server. On the application side, a routine runs in a separate thread which continuously polls the database to find out whether a time stamp changed.


To enable this mechanism, add the following key to your web.config file. You don't need this key if your application runs on Windows Azure, as this mechanism is used on Azure by default.


<add key="CMSWebFarmUseDBUpdater" value="true" />