Zed S. wrote:
You also have to run each test multiple times and take the mean of them
in order to rule out accidentally getting a bad read. Not to mention a
bunch of other stuff.
quoting myself:
The results:
The test was run 10 times. Results here are the average.
All of these are so pathetically low that I seriously doubt your test is
configured correctly. These are so low that you’re either running this
against a worst case setup or in development mode or something. In
fact, these numbers are so low it doesn’t matter how fast your setup is,
it can’t service any kind of reasonable requests rate.
The rendered page is a 500Kb page. This is the controller code:
def list
#@sorteo_pages, @sorteos = paginate :sorteos, :per_page => 10
@sorteos = Sorteo.find(:all)
end
The view code is the one generated by the scaffold, minus the pagination
stuff.
In your situation there’s probably so many confounding factors that
you’d need to work on the setup to find the simplest best case as a
comparison (like the control in an experiment). Until you do that you
really have no idea how fast each config could be.
I could do the same test our friend Alexey did: hit the index page.
For example, how is it possible that you have such a low performance and
yet with 5 mongrels or fcgi processes you don’t see a 5x increase?
That’s the expected response. Also, why 5? How come there’s no test
for lighttp+1 fcgi?
Yes… I should’ve tested lighttpd+1 fcgi.
Is this with everything running on the same machine
(even your ab run)?
again, quoting myself:
The command:
/usr/sbin/ab -c $CONN -n $TOTAL http://cerebro:3000/sorteos
Run from another machine in the LAN.
How many of these runs did you do? Just one? How
do you know that one wasn’t just bad/good luck? Why are you increasing
the concurrency but not the number of connections?
Again, each test was run 10 times. The results in the post are the
average. Also, you have to consider that the rendered page was about
500Kb. There were no images, no external stylesheets, etc.
Just some minor criticisms as I don’t think the test is right for any of
the tested servers (I know fcgi does better than 2.3 req/s, as well as
mongrel).
Did you read the whole post? I was trying to hit a worst case
scenario, not an average one. That’s why I removed the pagination, there
was no cache (except the default in the production environment), that’s
why I rendered a whole ~350 rows html-table to the browser.
I might run the same test, but this time with pagination (to reduce the
size of the result for the query and the rendered page)…
–
Zed A. Shaw
Regards,
rolando.-