Hi there folks!
I'm stress testing an application built on Play Framework 1.3.0 and getting some strange results (or not!).
From what I saw in documentation and forums, built in server should be better.
An example of how I'm testing it:
I'm using Tomcat 7, default configuration, most of the time:
Transactions: 1585 hits
Availability: 100.00 %
Elapsed time: 9.76 secs
Data transferred: 9.39 MB
Response time: 0.11 secs
Transaction rate: 162.40 trans/sec
Throughput: 0.96 MB/sec
Concurrency: 17.32
Successful transactions: 1585
Failed transactions: 0
Longest transaction: 1.42
Shortest transaction: 0.00
(it peaked 1700 hits at some runs!)
When using Play's "play run", my best was
Transactions: 1566 hits
Availability: 100.00 %
Elapsed time: 9.65 secs
Data transferred: 9.33 MB
Response time: 0.11 secs
Transaction rate: 162.28 trans/sec
Throughput: 0.97 MB/sec
Concurrency: 18.10
Successful transactions: 1566
Failed transactions: 0
Longest transaction: 0.39
Shortest transaction: 0.00
I see that difference is minimal, the CPU usage on play is almost 10% less (which is great, but, still both uses not more than 60-70% of CPU), the memory usage varies from 100% less to 50% less (which is great, but, still both uses minimum memory).
I see another difference that Tomcat's performance varies a lot from user to user, while Play maintains the request time close to the mean.
My question is: is this the expected result or am I doing something wrong? I remember a lot of people sayin' the built server was way faster...