On Thu, Jan 30, 2014 at 5:25 PM, Michael Torrie <torr...@gmail.com> wrote: > On 01/30/2014 05:05 PM, Tod Hansmann wrote: >> - I think Ruby is hideous (aesthetic, I know) >> - Until recently Rails performance has been horrendous. It's not >> "great" now, mind you, but it is at least competitive. I just have the >> stigma left over (I had a similar issue with Java for a good two years >> after 1.3) > > Performance can mean a lot of different things. Web apps need > scalability more than the ability to do CPU-intensive things in a timely > way. So ruby doesn't need to be fast for a web application to work > well. I suspect you're referring to other aspects of performance, not > just CPU-bound calculations. And that is a fair criticism. What > exactly caused Ruby on Rails to have performance and scalability issues? > And what issues would Ruby have that Python doesn't have? For example, > they both have a GIL, which makes multi-threaded approaches fairly > useless. Of course asynchronous and multi-processing are the techniques > being used to scale these days. Can't see any reason Ruby can't do them > like Python can. > > Does Python with a mature framework like Django scale at all compared to > a behemoth like Java? What is your experience?
It all depends on what you're trying to build. Python and Ruby just can't compete at all in raw performance with Java. Don't kid yourself. I mean, depending on what your web application is, they can do fine. If you've got an excellent team of Python or Ruby developers that know how to play to the strengths of those languages and pawn the tasks they're weak at onto other components (specialized caching or data storage applications), you can certainly build effective applications. And some applications just don't have to scale like mad. Take a look at these framework benchmarks: http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=fortune They're benchmarks, so they're not going to tell you the whole story regarding all the factors that go into application performance, but they do make it clear just how much overhead some frameworks add on top of basic tasks than others. Sometimes the overhead is worth it due to some big advantage elsewhere, but sometimes it's not. --Levi /* PLUG: http://plug.org, #utah on irc.freenode.net Unsubscribe: http://plug.org/mailman/options/plug Don't fear the penguin. */