views:

329

answers:

3

I am a Java guy and therefore would prefer a Java based framework for an auction site that I am planning to develop from scratch. But all my colleagues and friends have pointed out to me that the better sites that are coming up now-a-days are mostly written either using Ruby on Rails, Django or ASP.net MVC framework.

I was wondering if anyone here has done a comparisons of some Java-based frameworks like Struts 2 v/s any of the other frameworks with a focus on limited resources and performance?

+1  A: 

I haven't seen any good performance comparisons. For example, the PetShop comparisons between Java and .NET from a long time ago were widely regarded as heavily flawed.

However, I'd expect that a well-written application, put through appropriate profiling and load testing, will be fine on any of those platforms. A poorly written application which guesses at performance bottlenecks will fail on any of those platforms.

In other words, it's more what you do with the platform than the choice of platform itself. Obviously that's not universally true, but for the choices you've given I believe you should be fine.

Now, you're more likely to do a good job on a platform you're familiar with (although it won't provide the same learning opportunities of course). So are you going to be the sole developer, or will there be a team? If you're going to be part of a team, what do the other members think? (It's not clear whether the friends/colleagues you mention are working on the project.) Are you doing this for fun, or to make money? (That may well change the emphasis you put on learning vs doing what you know.)

Jon Skeet
Thanks Jon. I agree with you partially to the point that any framework in the wrong hands is bad. But the reverse is not always true. Frameworks are supposed to offer features like caching, query optimizations, client server load optimizations etc...so there are some frameworks that cater well for static content were as others fare well for dynamic content....I was just wondering if anyone had done performance comparisons...
Drunken Programmer
+1  A: 

I think that the most important performance comparison to do is to compare the performance of the code that you write for the different frameworks. I believe that will affect overall performance more than the framework itself. If you use an environment that you know well, the chances for writing a well-performing solution increases, even if the framework in question is not the "fastest" one.

Fredrik Mörk
+1  A: 

There are some very big sites that run on Java based frameworks. I know that Sky News in the UK runs on Grails which uses Spring MVC under the covers. Not evidence per se but an indication that it is possible. If you need a comparison with RoR then Grails might be just the thing. Make sure you take into account the scaling possibilities that Java application servers give you.

Peter Kelley
Thank You Peter. Would you have some sort of performance metrics for Grails?
Drunken Programmer
No sorry. I can only speak from the underlying technologies (Spring and Hibernate) which I know to perform and scale well. I'm sure if you asked on one of the mailing lists there would be people who could help.
Peter Kelley