EPiServer should be performance tested as any other web site at all, here is some simple methods to benchmark a EPiServer site.
Load Test
Create scenarios and a estimate how frequently it’s happens. If it’s possible to add load for the editorial part also you are able to detect locks before the site is released. The admin part of EPiServer shouldn’t be tested because it not written for daily use.
Load the server to 80% CPU load
Examine
- the number of requests / second the server can take
- the time to first byte (TTFB)
- the number of failures
Load Test long run to detect memory leaks
This test found out memory leaks for object that are not removed when the site has a soft reset, like static events to some object and so on...
Create a load test from some client (I use Web application stress tool)
Load the site to about 40% CPU load
Create a script that make a soft reset of the web application
copy /Y c:\Inetpub\EPiServerWeb\web.config my_web.config
:loop
copy /Y my_web.config c:\Inetpub\EPiServerWeb\web.config
ping -n 600 127.0.0.1 > NUL
goto loop
Restart the site
Access the site to see that it’s working
Add load for a day or more
Write down the average of the counter
.NET CLR Memory(w3wp)\# Total committed Bytes
- After the test has run onece
- and then every hour until the test are finised
(it should look like a saw, it's the garbage collector that causing this)
And then take a memory dump so you are able to examine the memory used by the application if some issues occur.