We spent the last days tuning the performance of our homepage in Umbraco 7. This is on a new site that imports some content from another instance with Umbraco 4.
This is the list of things we did to go down from slow responses of up to 45sec to 40ms. This is only measuring initial document request without any images, scripts or other resource loading.
We saw response times of up to 45s, and lots of "Application Shutdown" in the logs with the reason "ConfigurationChanged". They seemed to happen any time a document was published.
We noticed that the umbraco.config file was written about 4000 times and this seemed to trigger IIS to restart the app pool, the MS hotfix 3052480 didn't seem to help
-> We changed the setting ContinouslyUpdateXmlDiskCache= false. This ended the app pool resets with the reason ConfigurationChanged
We still had app pool resets, although less frequent with the reason "MaxRecompilationsReached", this caused delays of about 30s.
-> We added numRecompilesBeforeAppRestart=120. This reduced the frequency of app pool restarts "MaxRecompilationsReached" from one every 15 mins to one every 90 mins
We still had a few app pool restarts "MaxRecompilationsReached" and there was a periodic slow request of about 10s every 15mins
-> We changed ModelsMode from PureLive to Dll. This ended the app pool restarts "MaxRecompilationsReached" and the periodic slow request. We also introduced an extra manual step to deployment: building the Models.
We were down to an average of 500ms consistently on the homepage.
-> We added a 1h caching to the slower Macros. We got the homepage request time down to 40ms with the random slower request of 500ms due to cache miss or document publishing.
We still don't understand exactly the reason for the app pool restarts and the recompiles, if anyone can help us improve this setup or if you have any questions please let us know.
We are using:
We already had this hotfix installed, it didn't seem to prevent the restarts with restarts with reason "ConfigurationChanged", changing ContinouslyUpdateXmlDiskCache did help.
I think we have the same problem with application shutdown and restarts quite often (every 15-60 mins). Just curious if you have come closer to an explanation and possibly a better solution than just increasing the numRecompilesBeforeAppRestart?
It's been a while but things have been running more or less with the setup I described.
AFAIK, we don't have shutdowns.
I think the biggest issue we have is the initial startup time after an app pool recycle, we're seeing about 3mins of startup time, I think for building the cache, we have thousands of pages published.
Slow performance on content requests
We spent the last days tuning the performance of our homepage in Umbraco 7. This is on a new site that imports some content from another instance with Umbraco 4.
This is the list of things we did to go down from slow responses of up to 45sec to 40ms. This is only measuring initial document request without any images, scripts or other resource loading.
We saw response times of up to 45s, and lots of "Application Shutdown" in the logs with the reason "ConfigurationChanged". They seemed to happen any time a document was published. We noticed that the umbraco.config file was written about 4000 times and this seemed to trigger IIS to restart the app pool, the MS hotfix 3052480 didn't seem to help
-> We changed the setting ContinouslyUpdateXmlDiskCache= false. This ended the app pool resets with the reason ConfigurationChanged
We still had app pool resets, although less frequent with the reason "MaxRecompilationsReached", this caused delays of about 30s.
-> We added numRecompilesBeforeAppRestart=120. This reduced the frequency of app pool restarts "MaxRecompilationsReached" from one every 15 mins to one every 90 mins
We still had a few app pool restarts "MaxRecompilationsReached" and there was a periodic slow request of about 10s every 15mins
-> We changed ModelsMode from PureLive to Dll. This ended the app pool restarts "MaxRecompilationsReached" and the periodic slow request. We also introduced an extra manual step to deployment: building the Models.
We were down to an average of 500ms consistently on the homepage.
-> We added a 1h caching to the slower Macros. We got the homepage request time down to 40ms with the random slower request of 500ms due to cache miss or document publishing.
We still don't understand exactly the reason for the app pool restarts and the recompiles, if anyone can help us improve this setup or if you have any questions please let us know.
We are using:
Looks very similar to this issues http://issues.umbraco.org/issue/U4-6338
You need install windows hotfix for it
We already had this hotfix installed, it didn't seem to prevent the restarts with restarts with reason "ConfigurationChanged", changing ContinouslyUpdateXmlDiskCache did help.
I think we have the same problem with application shutdown and restarts quite often (every 15-60 mins). Just curious if you have come closer to an explanation and possibly a better solution than just increasing the numRecompilesBeforeAppRestart?
It's been a while but things have been running more or less with the setup I described. AFAIK, we don't have shutdowns. I think the biggest issue we have is the initial startup time after an app pool recycle, we're seeing about 3mins of startup time, I think for building the cache, we have thousands of pages published.
is working on a reply...