On 9/17/07, Nikolaj Baer <[EMAIL PROTECTED]> wrote: > In talking to a google engineer a while back, he mentioned offhand > that, although he had done his particular google project in python, > they were strongly considering moving it to java due to scalability > issues. This isn't the first time I have heard the implication that > for truly massive applications, java is really the standard. > > I have been reading a bunch lately, everything from shards and > hibernate to youtube scalability (they have a python app under the > hood), and I can't seem to find a simple explanation of what makes > java better at scaling. I think alot of java based sites tend to be > too verbose and acronym happy, and I am pretty certain there is a > simple way to explain it. There are plenty of articles (mostly by the > RoR folks) on why java isn't better at scaling, but none that I have > found so far deal with systems on the google scale.
* Java has no GIL (Global Interpreter Lock). * Java generates machine code which, while only being a factor, can still be a big help. Or conversely: * Python has a GIL which reduces how much of a multicore and/or hyperthreading CPU you can leverage (not much). * Python is among the slower languages at runtime. I've used Python on plenty of projects because comparatively Java is far less productive. On all of them but a financial application, I was able to get the speed I needed using various techniques like the ones you mentioned. For that one application, I switched to C# where the performance improvement more than made up for the longer development time (didn't have to wait 20 mins for my results on each run). -Chuck -- [email protected] http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg
