Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm having my first attempt at stress testing a simple django web app running from gunicorn and nginx which I’ve put on a small 256MB Rackspace Cloud server.

Using httperf, I increase the number of connections per second until I start getting errors e.g.

httperf --hog --server=localhost --uri=/myapp --timeout=10 --num-conns=2500 --rate=25

I find that for a simple almost static page from django I can get about 35 req/sec before errors start being thrown.

For a more dynamic page which requires a database lookup and some more processing, I can get about 25 req/sec.

Originally I was only using 1 gunicorn worker, but increasing to 4 workers (I think my cloud server has 4 cores) didn’t seem to make any difference (it still starts throwing errors above 25 req/sec).

Do these results sound about as expected considering this is running on such a small (256MB) server?

Also, are there any changes I could make to improve the throughput?

share|improve this question
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.