Code Monkeyism

Programming is hard by Stephan Schmidt

Rails and Grails: A language shootout?

Following the benchmarking, I think it’s a very good idea from Graeme to stop benchmarking until Grails gets some optimizations. Currently performance should not be a big concern for the Grails developers. Keeping up the good work with implementing features and fixing bugs should stay their main concern.

When looking at the Grails versus Rails benchmarks, I thought this might be more about languages than web frameworks.


Rails: Ruby
Ruby: Ruby/C
MySQL: C
MySQL driver: C/Ruby
Mongrel: Ruby/C

Grails: Java/Groovy
Groovy: Java/Groovy
Java: Java/C
MySQL: C
MySQL driver: Java
Tomcat: Java

(Correct me if I’m wrong please)

It’s great news to me that for example mongrel is primary ruby. Some years ago when I did some projects with Ruby, a lot of stuff was written in C and needed to be compiled, which is always a lot of pain. Also the code looks quite good and clean. And they thought about performance:


# Does the majority of the IO processing.
# It has been written in Ruby using
# about 7 different IO processing strategies
# and no matter how it's done
# the performance just does not improve.
# It is currently carefully constructed
# to make sure that it gets the best possible
# performance [...]

Good to see.

So is this about Rails versus Grails or Ruby versus Groovy or C versus Java? But as I said in the beginning, I think it’s a very good idea from Graeme to stop benchmarking until Grails gets some optimizations

About the author: Stephan Schmidt is currently a team manager at ImmobilienScout24 in Berlin. Stephan has been working as a head of development and CTO. He has used a lot of different technologies in the last 20 years including Java, Rails and Python. Stephans main field of interest is maintainablity and productivity in software development. Want to know more? All views are only his own.

If you did like this article but you don't want to subscribe to new articles with your reader, you can follow me on Twitter or subscribe to new posts with your email:

Leave a Reply