2 Replies - 3009 Views - Last Post: 11 April 2012 - 09:05 PM Rate Topic: -----

#1 NotarySojac  Icon User is offline

  • D.I.C Regular
  • member icon

Reputation: 53
  • View blog
  • Posts: 428
  • Joined: 30-September 10

Rails- Benchmarking server performance across platforms and such

Posted 21 March 2012 - 12:44 PM

Hey, I'm thinking about doing benchmark tests for rails for say...

Rails + thin + nginx >> On vmWare vSphere Hypervisor on Debian
vs.
Rails + thin + nginx >> Debian on the bare hardware


Does anyone know of a rails app + ruby app that can be used to benchmark the performance of a ruby on rails rig? Otherwise I'm going to build a basic benchmarking suite and could use input and advice.

My benchmark app will be split up between a Rails App and a ruby script serving as a client. The Ruby script will handle all the benchmarking, since I just don't know enough about the internals of rails to properly record each stage of a test.

The script will do simple get requests, and the rails app will have different database functions attached to said get requests, and I'll just record the response times.


Any thoughts on the matter of testing? Or perhaps speculation as to how virtualization using vSphere will impact rails performance. Any thoughts on my server configuration are welcome too, it's been a while since I've reviewed the ruby server scene.

I'm off to a quick start, it doesn't feel very precise though. I need to do some stats research to and figure out what datapoints and calculations need to be made for a proper report.

https://github.com/TheNotary/perftest

This post has been edited by NotarySojac: 21 March 2012 - 06:01 PM


Is This A Good Question/Topic? 0
  • +

Replies To: Rails- Benchmarking server performance across platforms and such

#2 Skaggles  Icon User is offline

  • THE PEN IS MIGHTIER
  • member icon





Reputation: 251
  • View blog
  • Posts: 640
  • Joined: 01-March 09

Re: Rails- Benchmarking server performance across platforms and such

Posted 21 March 2012 - 10:52 PM

Questions I ask myself when creating a project is if I'm doing it to learn, or to be used by others. If it's the former, then I generally don't care if it's been done before (or better.) I know that Rails has built-in performance testing that may be useful to you. You can read about it on their website: Performance Testing Rails Applications

This post has been edited by Skaggles: 21 March 2012 - 10:53 PM

Was This Post Helpful? 1
  • +
  • -

#3 NotarySojac  Icon User is offline

  • D.I.C Regular
  • member icon

Reputation: 53
  • View blog
  • Posts: 428
  • Joined: 30-September 10

Re: Rails- Benchmarking server performance across platforms and such

Posted 11 April 2012 - 09:05 PM

Hey, if anyone's curious I have some basic figures (3) regaurding the difference in networking between running debian on bare metal vs debian on ESXi 5.0 vSphere (by VM Ware). I still haven't gotten around to reading that RoR.org article, although I'll have an airplane trip coming up so maybe that will be the reading material I smuggle past the TSA for my flight.


Method overview: Javascript loops through sending synchronous ajax requests to my rails app which does a RAND(0,1) type of thing, thus returning the text "true" or "false". Each loop iterates 1000 times.

Debian on Bare Hardware
Trial    Avg Time    High       Low
1         30.87      206         21
2         30.717     483         14
3         30.318     217         14
4         29.535      65         14




Debian on ESXi 5.0
Trial    Avg Time    High       Low
1         36.282      1101       26    # consider throwing this out, 
                                       # it may not have been warmed up as much
2         33.258      1017       26
3         32.202       350       22
4         33.905      1056       25
5         31.806        94       26
6         32.327       349       26



Points of interest:
-The average time was not impacted too thoroughly
-EXSi hide much longer stutters (even after an exhaustive warmup procedure)
-EXSi's minimum respons time was 10ms longer than the bare metaled OS (which is neither here nor there for my purposes considering the average)

Conclusion:
Well, I was mostly running the tests to make sure that the performance loss of rails apps would not be significant if using virtualization. These results do not deter me from using bare metal virtualization with ESXi, but actual database performance has yet to be tested (by me at least).

The processor used for testing was a Xeon Processor E3-1230.

This post has been edited by NotarySojac: 11 April 2012 - 09:05 PM

Was This Post Helpful? 0
  • +
  • -

Page 1 of 1