I was having issues with sitecore publish performing badly when I stumbled into the FastPublishing attribute which is controlled in web.config. By default it’s turned off.
<setting name="FastPublishing" value="false" />
Great. That sounded exactly like what I needed. But why would you disable fast publishing by default? There must be a catch. Unfortunately sitecore hasn’t done any documentation for FastPublishing so you’re on your own. Do you dare to enabled it? I did and didn’t see any big changes. It made the publishing a bit faster I guess. But what does it do?
The catch
By default when a user publish anything in sitecore the cache will be cleared in the web database and a XML publish-file will be generated. If you however enables FastPublisering it’ll instead publish on-demand. So what does that mean? This means that the load is moved from the sitecore editors to the users of your site since their perceived performance will drop because items are published as they view them.