Did a benchmark test to compare ASP.NET MVC2 against Spring Web MVC3 &
Grails. Results shown ASP.NET MVC is 2x slower than Spring MVC.
Results (request per second)
Grails = 530
Spring Web MVC 3 = 2323
ASP.NET MVC 2 = 1299
I also observed that Tomcat scales better than IIS7. On my test machine, IIS
only used one of the CPU cores while Tomcat was able to use both.
*Is there any way to tune IIS7 so that it can use both cores for this test?*
Method:
Local test client makes 100k requests and take the average requests per
second.
Test:
Controller gets the posted HTTP variable "name" and set it as view variable
and returns the view. The view then display "Hello world from ${name}!!!"
OS:
Windows Server 2008 R2 Datacenter x64
CPU:
Intel(R) Xeon(R) W3520 2.66GHz/8MB L3 Cache/4.8GT/s (Quad Core)
Memory:
24GB DDR3
Software:
Microsoft IIS 7 + .NET 4.0
Spring Web MVC 3.0.0
Grails 1.3.3
Groovy 1.7.2
JDK 1.6.020 x64
Tomcat 6.0.28
Video taken during the test + test sources:
http://dl.dropbox.com/u/9319643/aspmvc2%2Cspringmvc%2Cgrails-benchmark.7z
Regards
Peter