Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

[ Create a new account ]

Another J2EE vs .NET Performance Comparison

Posted by michael on Wed Oct 30, 2002 12:38 PM
from the mine-is-bigger dept.
Starting yesterday, we received a bunch of story submissions about a performance comparison between J2EE and .Net. It didn't seem all that exciting, and we sort of ignored the story. But as usual, it appears that some people take issue with the methodology and conclusions.
This discussion has been archived. No new comments can be posted.
Display Options Threshold:
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • Some of us (Score:3, Insightful)

    by Anonymous Coward on Wednesday October 30 2002, @12:40PM (#4565586)
    Some of us are not in a position to dictate policy. Love Linux or not, some of us will have to use .Net or look for another job.

    Not a good option during these bad economic times.

    • Re:The sad thing is... by GreyWolf3000 (Score:3) Wednesday October 30 2002, @12:48PM
    • Re:Some of us by wmspringer (Score:1) Wednesday October 30 2002, @12:56PM
      • Re:Some of us by malfunct (Score:3) Wednesday October 30 2002, @02:27PM
      • Re:Some of us by chown (Score:2) Wednesday October 30 2002, @03:26PM
      • Re:Some of us by jazman_777 (Score:1) Wednesday October 30 2002, @04:54PM
        • Re:Some of us by wmspringer (Score:1) Wednesday October 30 2002, @05:07PM
          • Re:Some of us by spongman (Score:2) Saturday November 02 2002, @02:11AM
          • 1 reply beneath your current threshold.
      • 1 reply beneath your current threshold.
    • Re:Some of us by Anonymous Coward (Score:2) Wednesday October 30 2002, @01:04PM
      • Re:Some of us by yukster (Score:1) Wednesday October 30 2002, @01:56PM
        • Re:Some of us by ray-auch (Score:2) Wednesday October 30 2002, @03:42PM
      • Plastic Puppy Poop by MaggieL (Score:2) Wednesday October 30 2002, @04:23PM
      • 1 reply beneath your current threshold.
    • Re:Some of us by Lumpy (Score:2) Wednesday October 30 2002, @01:22PM
      • Re:Some of us by juan2074 (Score:1) Wednesday October 30 2002, @01:32PM
    • Re:Some of us by MAXOMENOS (Score:2) Wednesday October 30 2002, @01:25PM
      • 1 reply beneath your current threshold.
    • Re:Some of us by pVoid (Score:1) Wednesday October 30 2002, @01:28PM
    • Re:Some of us by Jeppe Salvesen (Score:2) Wednesday October 30 2002, @01:59PM
    • Re:Some of us by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @01:10PM
      • Re:Some of us by bbc22405 (Score:1) Wednesday October 30 2002, @02:52PM
        • Re:Some of us by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @03:42PM
      • Re:Some of us by yog (Score:2) Wednesday October 30 2002, @03:38PM
        • Re:Some of us by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @03:46PM
          • Re:Some of us by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @04:15PM
          • 1 reply beneath your current threshold.
      • Re:Some of us by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @01:23PM
      • 1 reply beneath your current threshold.
    • Re:Some of us by Laura_007 (Score:3) Wednesday October 30 2002, @02:12PM
      • Re:Some of us by gmack (Score:3) Wednesday October 30 2002, @02:36PM
        • Re:Some of us by Laura_007 (Score:2) Wednesday October 30 2002, @03:05PM
          • Re:Some of us by khuber (Score:1) Wednesday October 30 2002, @09:33PM
            • Re:Some of us by Laura_007 (Score:1) Friday November 01 2002, @07:24AM
              • Re:Some of us by khuber (Score:1) Friday November 01 2002, @01:23PM
          • 1 reply beneath your current threshold.
      • Re:Some of us by dpt (Score:1) Wednesday October 30 2002, @09:16PM
        • 1 reply beneath your current threshold.
      • 1 reply beneath your current threshold.
    • 4 replies beneath your current threshold.
  • Performance isn't most important (Score:4, Interesting)

    by Faggot (614416) <choads.gay@com> on Wednesday October 30 2002, @12:43PM (#4565613) Homepage
    The beast most of us have sitting on our desk these days is so fast as to make language performance not such an issue. What should be focused on to support the future of computing is a well-typed, well-structured language to allow programmers to think at a higher level of abstraction than previously. That's why I love Mac's standardization of Objective C so much -- it allows high-level control of programs. Performance only matters if it sucks.
  • Save your time by Captain Pedantic (Score:1) Wednesday October 30 2002, @12:44PM
    • Re:Save your time by Thomas Charron (Score:3) Wednesday October 30 2002, @12:51PM
      • Re:Save your time by WolfWithoutAClause (Score:2) Wednesday October 30 2002, @01:02PM
        • Re:Save your time (Score:5, Insightful)

          by Gaijin42 (317411) on Wednesday October 30 2002, @01:14PM (#4565943) Homepage
          I disagree. If I write an elegant solution that takes up 500 lines, and you write a clunky solution that takes 1000 lines, who was more productive?

          Now if we come up with the same solution, but I just type faster, so i have 1000 lines done, and you have 500 lines done, who is more productive?

          Performance of a developer should be measured in (features implemented - bugs found)/time * some_constant_for_how_maintainable_the_code_is

          anything else, and you are lying to yourself.

          [ Parent ]
        • Re:Save your time by mosch (Score:2) Wednesday October 30 2002, @01:34PM
        • Re:Save your time by Lussarn (Score:1) Wednesday October 30 2002, @02:01PM
      • Re:Save your time by spike2131 (Score:1) Wednesday October 30 2002, @01:03PM
      • Re:Save your time by spencerogden (Score:2) Wednesday October 30 2002, @01:03PM
      • Re:Save your time by LordNimon (Score:1) Wednesday October 30 2002, @01:04PM
      • Re:Save your time by harvardian (Score:3) Wednesday October 30 2002, @01:08PM
      • Lines of code has nothing to do with reliability? by Scotch Game (Score:2) Wednesday October 30 2002, @01:08PM
      • Re:Save your time by LoRider (Score:3) Wednesday October 30 2002, @01:12PM
        • Re:Save your time (Score:4, Informative)

          by sfe_software (220870) on Wednesday October 30 2002, @02:52PM (#4567013) Homepage
          Now of course the 14000 lines in the .Net application...

          I'm extremely curious, as many people have mis-quoted this figure. Where did you get this information? Is there another article that quotes this incorrectly?

          The .NET solution only had 2096 lines, while the J2EE one had 14,000+ lines of code...

          So much for Microsoft's write tons of shit code and hope for the best mentality :p
          [ Parent ]
        • Re:Save your time by LoRider (Score:2) Wednesday October 30 2002, @01:37PM
        • 1 reply beneath your current threshold.
      • Developers, developers, developers! by Inoshiro (Score:2) Wednesday October 30 2002, @02:09PM
    • Re:Save your time by JonK (Score:1) Wednesday October 30 2002, @12:52PM
    • Re:Save your time (Score:5, Informative)

      by interiot (50685) on Wednesday October 30 2002, @12:53PM (#4565709) Homepage
      Actually, it's the other way around. Look at the PDF [middleware-company.com], page 40.
      • The Middleware Java Pet Store 2.0 implementation uses the same basic EJB-recommended architecture as the original Java Pet Store (except fully optimized for performance). Hence, its code count remains largely unchanged over the original at 14,004 lines of total code.
      • With the .NET Pet Shop 2.0 implementation, Microsoft has done some further optimizations to reduce its overall line count, while also extending the application with new features for distributed transactions and Web Services. The new .NET Pet Shop 2.0 contains a total of 2,096 lines of C# code (the 1.5 version had a total of 3,484 lines of code, a 40% reduction).

      This is covered right away in the rebuttal, as there seem to be some tricks played to get the discrepancy so large.
      [ Parent ]
    • Re:Save your time by Yankovic (Score:3) Wednesday October 30 2002, @12:53PM
    • Backwards by smileyy (Score:1) Wednesday October 30 2002, @12:55PM
    • Re:Save your time by Utopia (Score:1) Wednesday October 30 2002, @12:55PM
    • Re:Save your time by Kythorn (Score:1) Wednesday October 30 2002, @12:56PM
    • Re:Save your time by Brian Blessed (Score:1) Wednesday October 30 2002, @12:57PM
    • Incorrect Citation by Scotch Game (Score:1) Wednesday October 30 2002, @12:57PM
    • Re:Save your time by NineNine (Score:1) Wednesday October 30 2002, @12:58PM
    • Re:Save your time by inerte (Score:1) Wednesday October 30 2002, @01:10PM
      • 1 reply beneath your current threshold.
    • Re:Save your time by PongStroid (Score:1) Wednesday October 30 2002, @01:11PM
    • Re:Save your time (and mirror) by rgbrenner (Score:1) Wednesday October 30 2002, @01:16PM
    • You've got it reversed. (Score:5, Interesting)

      by nobodyman (90587) on Wednesday October 30 2002, @01:18PM (#4565986)

      Did you intentionally reverse the figures? The .NET version was 2000 lines of code, and the Java version was 14,000 lines of code

      Why not go to the source [middleware-company.com] and draw your own conclusion. I looked at the report and it seemed more than fair. This was a straight up "best practices vs. best practices" competition, using Sun's recommended coding standards.

      It is helpful to note that this is the second such test that The Middleware Company performed. The Java folks squawked because the .Net version used stored procedures instead of dynamic SQL statements (Sun advises dynamic sql for easier portability and because they are idiots). This time, they addressed the Java camps' gripes and J2EE still lost!

      In my opinion you can pin the blame squarely on EJB's. They are bloated, the environments are a royal pain to configure, and they are S-L-O-W. Sun recommends that people use them, so it's totally fair that it was used against them in this comparison.

      Hate Microsoft if you want (I do), but you can't wear blinders and ignore the competition. J2EE blows. Get over it.
      [ Parent ]
    • Re:Save your time by rdean400 (Score:1) Wednesday October 30 2002, @01:29PM
    • Re:Save your time by sfe_software (Score:2) Wednesday October 30 2002, @02:49PM
    • Re:Save your time by glamslam (Score:1) Wednesday October 30 2002, @04:30PM
      • 1 reply beneath your current threshold.
    • Re:Save your time by Headius (Score:1) Wednesday October 30 2002, @05:58PM
    • Re:Save your time by Ghannodahn (Score:1) Friday November 08 2002, @12:43PM
    • Re:Register was Wrong by jaaron (Score:2) Wednesday October 30 2002, @02:10PM
    • 9 replies beneath your current threshold.
  • J2EE (Score:3, Informative)

    by Anonymous Coward on Wednesday October 30 2002, @12:44PM (#4565620)
    We used all java technology on www.bayoubid.com [bayoubid.com] and had no problems with speed. In fact from our initial tests java was quicker than C#.
    • Re:J2EE by scot4875 (Score:1) Wednesday October 30 2002, @03:11PM
    • Re:J2EE by galore (Score:1) Wednesday October 30 2002, @03:47PM
    • 2 replies beneath your current threshold.
  • Hmmmm. (Score:4, Insightful)

    by The Bungi (221687) <thebungi@gmail.com> on Wednesday October 30 2002, @12:45PM (#4565636) Homepage
    So essentially this boils down to actually, that thing we said was killer in fact sucks, so your comparison is unfair. We also ain't fixing it, so there.

    I mean, "...excessive exception handling"? WTF?

    This only underscores the by now expected knee-jerk reaction these types of pissing contests bring. There's always some expert who can refute every single point of the whitepaper, who in turns gets dissected by someone else ad nauseaum.

    In the end it's never been about benchmarks or raw speed. It's about how productive you can be writing these applications, time to "market" and total cost. It doesn't matter if J2EE is 14.3% faster than .NET or viceversa.

    • Re:Hmmmm. by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @12:58PM
      • Re:Hmmmm. by The Bungi (Score:1) Wednesday October 30 2002, @01:09PM
      • 1 reply beneath your current threshold.
    • Re:Hmmmm. by gosand (Score:2) Wednesday October 30 2002, @01:17PM
  • Paid for by MS (Score:4, Informative)

    by Anonymous Coward on Wednesday October 30 2002, @12:48PM (#4565661)
    Several independent sources have now confirmed that The Middleware Company was indeed paid by Microsoft to conduct this report.

    From second article.
    • Re:Paid for by MS by Call Me Black Cloud (Score:3) Wednesday October 30 2002, @12:52PM
    • Re:Paid for by MS by ruiner13 (Score:2) Wednesday October 30 2002, @12:58PM
      • Reading is goood....mmmm kay (Score:5, Troll)

        by malakai (136531) on Wednesday October 30 2002, @01:19PM (#4565998) Journal

        Was Microsoft involved in this, did they fund this, where were the tests done?

        Yes, Microsoft was certainly involved, as the paper describes. The Middleware Company approached Microsoft regarding performing such an experiment. Microsoft provided the lab, which was located in Seattle, funded the setup costs, and reimbursed us for expenses, including travel expenses. The Middleware Company invested several man-months in this project for which it received no compensation. The activity took much long than we expected, and at various points, we also hired independent consultants experienced in appservers A and B to tune them or provide recommendations, at our own expense. The parameters of the lab were under the control of TMC. TMC controlled the testing process. TMC stated up front that TMC would write a report about the real results, no matter what they were. These experiments are time-consuming, and require resources. Without permission and some support from Microsoft, we would not have been able to conduct the experiment. We would like to have conducted many more experiments than we did, and hope to in the future. TMC stands behind the results of the tests that were conducted.

        Does the fact that Microsoft gave permission for this experiment and provided some support, invalidate the results?

        That is for you to decide. TMC stands behind the results of the tests that were conducted. Should there be other such experiments to be arranged in the future, we will not be able to do them without some assistance with the lab, setup, expenses, and we would hope for more support than Microsoft provided us with for this experiment.


        It's not a loss of face to admit in this particular architecture, .Net beat J2EE. It does not mean .Net is better overall. All this simply states is the obvious, .Net is at least as fast as J2EE when engineered correctly. Both platforms are as slow (or fast) as the architecture decisions made during development.

        I don't understand why people instantly get defensive and point out conspiracies. They both kick ass, use which ever one makes you happy.

        -malakai
        [ Parent ]
      • Re:Paid for by MS by khuber (Score:1) Wednesday October 30 2002, @09:55PM
    • Re:Paid for by MS by Anonymous Coward (Score:1) Wednesday October 30 2002, @01:23PM
    • Re:Paid for by MS by jsse (Score:1) Wednesday October 30 2002, @01:32PM
    • Re:Paid for by MS by succotash (Score:1) Wednesday October 30 2002, @02:01PM
  • Hot News Flash -- Java Slow! (Score:5, Funny)

    by duck_prime (585628) on Wednesday October 30 2002, @12:49PM (#4565667)
    Thank you, Middleware Company, for that shattering piece of journalism.

    Oh yeah, we are also shocked -- shocked! -- to find out that Microsoft engineers are capable of putting out a rigged demo.

    These are not the benchmarks you're looking for. Move along.
  • Quel suprise (Score:5, Insightful)

    by JonK (82641) on Wednesday October 30 2002, @12:49PM (#4565670)
    ...as all the JavaBots leap to Sun's defence.

    One of the more interesting lines of commentary attached to the original article on TheServerSide was that "the community" should all band together and build a version of the Pet Shop which'd run faster in fewer LOC and on less hardware than the .Net equivalent while keeping to Sun's recommended best practices, thereby demonstrating the overarching superiority of Java and open source (or something like that.

    Or, alternatively, they could choose to sit with their heads in the sand and spread fud about how Microsoft bought The Middleware Company, while waiting for the .Net train to run them over.

    Sun shills, Microsoft shills, what's the difference?

  • Final Conclusion (Score:4, Funny)

    by Anonymous Coward on Wednesday October 30 2002, @12:50PM (#4565683)
    The only things TMC actually proved are that they are

    NOT J2EE experts

    but they

    ARE MS shills.

    Everybody knows "benchmarks lie" as the old cliche goes. It's just funny that a chest-thumping "enterprise software" consultancy would so blatantly pitch a relatively un-scientific benchmark as a serious study.
    • Re:Final Conclusion (Score:4, Insightful)

      by truth_revealed (593493) on Wednesday October 30 2002, @02:42PM (#4566908)
      Why on earth would Sun put out such a horribly performing example J2EE program (Pet Store) when it knows damn well that 99% of the programmers out there will copy this program as a shining example of how to code in J2EE correctly?
      For God's sake, Sun - get a clue! Give the world a better official J2EE example!
      The J2EE optimization rebuttal seemed awfully complicated to expect a new Java programmer to understand.
      Nevermind benchmarks optimized by experts - average shops don't have such experts. Think about the lowest common denominator. I'd rather see a benchmark of how average systems perform when designed by novices as an indicator of how good the underlying technology is. If a system has to be designed by leading experts then it is not cost effective for the average shop and I would want no part of it. Object orientation be damned - just give me something that works and does not cost an arm and a leg to extend and maintain.
      [ Parent ]
    • 1 reply beneath your current threshold.
  • by slamb (119285) on Wednesday October 30 2002, @12:52PM (#4565694) Homepage

    jPetStore [ibatis.com] is worth checking out. These people decided that the J2EE pet store is way too complex, which I'm inclined to agree with. They produced, using Jakarta Struts, a Java pet store web application that is much leaner. It's comparable in size to the .NET pet store but better in several ways - there's no SQL embedded in the code, there's no HTML embedded in the database, no code was automatically generated, and it's MVC-based.

    I've always thought that Enterprise Java Beans are overengineering to the extreme. It's nice to have something to back that up with now. There's no question in my mind that this JPetStore beats out both the original J2EE one and the .NET one in maintainability.

    They didn't do any benchmarks - performance wasn't what they were going for - but it would be interesting to see some. I'd be inclined to believe this simpler approach would also have much better performance than J2EE.

  • by Pov (248300) on Wednesday October 30 2002, @12:52PM (#4565699)
    Regardless of how you argue the testing parameters, it's pretty clear the .NET implementation won out. Even if it didn't, the Price/Performance chart makes this a pretty easy pick for most businesses.

    You can probably get much higher performance out of the J2EE stuff at the very top end, but only by running it on the 'big iron' that most companies can't afford and even fewer actually need.

    M$ has a lot of problems, but this .NET stuff is cool and people should take notice. Even the evil empire can raise the bar. And competition helps us all in the end. Lower those prices SUN and Oracle!!
  • Starting off strong (Score:3, Funny)

    by sootman (158191) on Wednesday October 30 2002, @12:53PM (#4565704) Journal
    Quote from the article: It contains both errors, halftruths, and lies.

    Unfortunately, the article contains both spelling errors, grammatical errors, and errors of style.
  • Infringement.... by Tsali (Score:1) Wednesday October 30 2002, @12:54PM
  • It's not the language by Anonymous Coward (Score:1) Wednesday October 30 2002, @12:54PM
  • hmm... (Score:3, Funny)

    by SpanishInquisition (127269) on Wednesday October 30 2002, @12:54PM (#4565725) Homepage Journal
    this is like trying to make a race between a tortoise and a snail, only to realize that your stopwatch doesn't go over 15 minutes.
  • J2EE, EJBs vs "JSPs" (Score:3, Interesting)

    by kisrael (134664) on Wednesday October 30 2002, @12:55PM (#4565727) Homepage
    I've heard some word (admittedly not many datapoints) that some companies are still embracing Java/J2EE, but are going for "JSPs" (hopefully a euphamism for good use of regular java objects, maybe some wrapped JDBC) instead of the fullbore EJB. In my experience, this is a very smart thing. I've had successes with using a lot of the same patterns recommended for EJB with the lighter-weight stuff, and have heard of at least 3 really collosal EJB failures.

    EJB makes it easier to have physically seperate tiers, and adds enough systems-needed overhead that you'll probably need 'em...
  • by Art Popp (29075) on Wednesday October 30 2002, @12:55PM (#4565728)
    ...are interesting when well researched, but basically useless to anyone who would actually have to choose between these two development environments. If you work for a company that designs applications of this kind there will be a host of more important things to consider than raw transactions per machine. The simple fact of e-commerce is that if a user is actually going to buy something at your site, you can waste tremendous processing power making them happy. If you make 2 dollars profit on a transaction and had to use 20% of the CPU on a 2Ghz processor for 40 1 second bursts (like you will if they shop using RH interchange), it's still worth it. What this benchmark argues well is that the MiddleWare product is probably worth buying if you have processor constraint problems. No amount of increased performance would warrant changing a staff of experienced Java programmers into a staff of inexperienced .net programmmers. Extra processors are just too cheap....
  • Yeah, but... (Score:5, Insightful)

    by Schnapple (262314) <tomkidd.viatexas@com> on Wednesday October 30 2002, @12:55PM (#4565731) Homepage
    Isn't The Middleware Company the same one that produced this report for SUN Microsystems [sun.com] and concluded that J2EE is the better of the two platforms for a variety of non-performance-related reasons? I think this report is one of the best, most coherent reports on what exactly J2EE and .NET really are and what the differences are.

    So is it that The Middleware Company will just claim that the winner is the one that paid them? Or is it that .NET really is the performance winner whereas J2EE wins most of the other awards?

    And why is it surprising that the performance winner is the one whose entire platform, from the operating system to the SQL server to the framework, is made by a single vendor? Of course it will perform better - they're all in the same building (or complex in this case).

    • Re:Yeah, but... by skaffen42 (Score:1) Wednesday October 30 2002, @01:08PM
      • 1 reply beneath your current threshold.
    • Re:Yeah, but... by tshak (Score:2) Wednesday October 30 2002, @02:27PM
      • Re:Yeah, but... by styrotech (Score:3) Wednesday October 30 2002, @04:00PM
      • 1 reply beneath your current threshold.
  • Lies, damned lies (Score:3, Interesting)

    by PhysicsScholar (617526) on Wednesday October 30 2002, @12:55PM (#4565734) Homepage Journal
    OK, first off, I don't care how many lines of comments or exception-handling routines you take out, the Microsoft solution was still 7 times smaller. If a sub at two different stores costs the same $5.00, I would definitely buy the 7-inch one over the 1-inch version for the same price; essentially, it's better no matter how you cut it (no pun intended).

    Furthermore, if Yahoo moves from C++ to PHP for the majority of their Web applications, I think that's saying something. Perhaps J2EE and .NET are irrelevant at this stage in the game, and a PHP vs. ASP review would be more relevant.
  • Couldn't Resist Though, Eh? (Score:3, Funny)

    by 4of12 (97621) on Wednesday October 30 2002, @12:55PM (#4565742) Homepage Journal

    It didn't seem all that exciting, and we sort of ignored the story.

    Maybe we could get a bunch of people to whip up a controversy about a benchmark whitepaper comparing performance of rcp and ftp.

  • Rigged and all but... by Cpt_Corelli (Score:1) Wednesday October 30 2002, @12:58PM
    • 1 reply beneath your current threshold.
  • Regus Reporting? (Score:3, Interesting)

    by Yankovic (97540) on Wednesday October 30 2002, @12:58PM (#4565776)
    Anyone find it particularly hilarious that the Register couldn't even report [theregister.co.uk] the results correctly? Fine that they get anti-MS people to put in quotes, but the facts of the case (namely 14k lines of code for java v. 2k lines of code for .NET) were reported in reverse? Ugh... how these guys have a website is beyond me.
  • And in other news by photon317 (Score:1) Wednesday October 30 2002, @01:02PM
  • Sheesh (Score:5, Insightful)

    Starting yesterday, we received a bunch of story submissions about a performance comparison between J2EE and .Net. It didn't seem all that exciting, and we sort of ignored the story. But as usual, it appears that some people take issue with the methodology and conclusions.

    So let me get this straight. A report comes out (that looked pretty fair to my eyes) where .Net kicks the crap out of Java, but that's not interesting. But as soon as someone puts out a (pretty silly IMO) refutation of said report it's suddenly interesting?

    Yeah, yeah, I know -- it's Michael and it's Slashdot. But sheesh, come on.

    Anyway, is anyone really surprised that .Net is going to be much faster than Java? It would be hard to make it slower, and if I were in charge of the .Net project, that would be one of the first issues I would address if I was making a competitor to Java.

    • Re:Sheesh by zenyu (Score:2) Wednesday October 30 2002, @03:08PM
      • Re:Sheesh by gakguk (Score:1) Wednesday October 30 2002, @05:10PM
    • Re:Sheesh by dnoyeb (Score:2) Wednesday October 30 2002, @03:23PM
      • Re:Sheesh by j3110 (Score:2) Wednesday October 30 2002, @04:40PM
        • Re:Sheesh by Fjord (Score:2) Thursday October 31 2002, @11:29AM
          • Re:Sheesh by j3110 (Score:2) Thursday October 31 2002, @03:06PM
            • Re:Sheesh by Fjord (Score:1) Thursday October 31 2002, @03:18PM
    • 3 replies beneath your current threshold.
  • An awful review by ellisDtrails (Score:1) Wednesday October 30 2002, @01:02PM
  • by tenchiken (22661) on Wednesday October 30 2002, @01:02PM (#4565816)
    It's their business ethic I can't stand. .NET is the most exciting thing in distributed component programming since Objective-C and NeXT. Unlike, Microsoft has enough influnce to acutally make a new programming language part of the vernacular that programmers use.

    I have deployed two different production systems off of .NET, and have been utterly amazed at the API. While C++ has about 50/50 curve (50% of the things are really easy to do, the other 50% suck) and Java raises that to about 70/30, C# and more importantly the .NET framework allow programmers to naturally write good n-tier applications. (In fact, my biggest critique on .NET is that it tends to force people to n-tier when that is not completly appropriate).

    J2EE is a horrific mess in many ways. The abstractions don't map well to real world concerns (for example, a bean represents a row, not a business object, unless your business object is a row, in which case you are probably over exposed to changes in the database), and the API's for SOAP et all are poor (unless you use Glue which rocks beyond anything else I have seen in Java).

    Java's basic trade offs are part of the problem. Remember that Java was created for the purpose of running on embeded systems. This makes very simple tradeoffs (for example, optimizing for size in the bytecode instead of performance) that are not real good for large applications.

    Finally, Java is object oriented. .NET is component oriented. Refliction, delegates, events, emission, cross domain calls and third party language itneroperability are all first class in .NET...

    Now, if Microsoft's business guys would just follow suit.
  • Show me the money by evilpenguin (Score:2) Wednesday October 30 2002, @01:03PM
  • Apples and Oranges (Score:5, Insightful)

    by moogy (472637) on Wednesday October 30 2002, @01:04PM (#4565829)

    The original J2EE version of the Petstore application was meant as an EDUCATIONAL example for those new to J2EE. As such, it was not built with performance in mind, but rather was built with the mentality "How can we use every aspect of J2EE to implement this incredibly simple problem." No one in their right mind would use J2EE or EJBs to implement the Petstore app. It would be overkill in the extreme. And even if the J2EE version of the Petstore app was modified for performance, it's unlikely you'll be able to beat something that was built from the ground up with performance issues in mind. I'm sure this was the case with the .NET version.



    If you want a good comparison of a .NET and Java version of the Petstore app, check out JPetstore [ibatis.com] which was built from the ground up with simplicity and performance as high priorities. Hopefully in the upcoming weeks we'll see some good benchmarks using this version instead of the J2EE version.


  • Abstraction at nauseum by gdeciantis (Score:2) Wednesday October 30 2002, @01:04PM
  • performance of programmers (Score:3, Interesting)

    by axxackall (579006) on Wednesday October 30 2002, @01:06PM (#4565852) Homepage Journal
    Run-time performance is really a concern for system administrators, integrators and IT managers. The difference in run-time performance should be compensated by faster hardware, which gives a difference in cost of ownership. I expect such difference will be significantly less comparing to the difference in cost of software production, which is in essence a difference in performance of programmers, which in own turn time is very expensive.

    Therefore, it is much better to compare how both technologies help individual programmers as well as their teams to work faster and to produce a code with less errors (debugging time and QA resources). That would be a function of how API is structured, how concerns could be separated, how customizable code can be and will programmers tend to hardcode "business logic" riles.

    Does anyone know such comparison of J2EE and .NET?

  • well duh (Score:4, Insightful)

    by papskier (263483) on Wednesday October 30 2002, @01:06PM (#4565856)
    Microsoft wrote the .NET version, while these "experts" wrote the Java version - I stopped right there. Of course if you actually have the people who created the technology in the first place they're going to be able to build a faster app - they know everything inside and out of the technology. It's ridiculous. Show me a comparison between a team of Microsoft employees and a team of Sun employees and I might consider it good enough to be annecdotal at best.

    Besides that, look at the line comparison in code - the .NET version was 11,000 lines and the Java version was about 2600 lines. Clearly what happened here is that the Microsofties decided to be smart about it and write all their functions inline - not pretty but fast. Whereas the Java coders invoked class after class after class - which looks better but all the instantiations and memory allocations of classes are a big performance hit.

    Why not just take an Intel chip architect and tell them to come up with something in byte code, I'll bet it'll knock the crap out of everything else!


    The point is, if you created the technology, of course you're going to be able to make it faster because of your intimate knowledge. Unfortunately, I didn't create .NET or Java, so I guess I'll have to judge them on the merits of their realistics pros/cons.

    • Re:well duh by GrayCalx (Score:1) Wednesday October 30 2002, @01:18PM
    • Re:well duh by papskier (Score:1) Wednesday October 30 2002, @01:43PM
      • Re:well duh by fitten (Score:1) Wednesday October 30 2002, @05:19PM
      • 1 reply beneath your current threshold.
    • Re:well duh by eyeN (Score:1) Wednesday October 30 2002, @05:48PM
  • by darthaya (66687) on Wednesday October 30 2002, @01:07PM (#4565862)
    BS stands for bullshit.

    a little history of pet fight.

    the petstore was originally a demo application written by sun. it was a tutorial tool to demo how to use some new j2ee technologies, some best
    practices and good design patterns, a 101 course for j2ee. Nothing involved to run as a real world applicaiton or optimazed for that.

    then came the MS petstore for .Net. a design clearly aimed at performance and competition, MS declared their petstore is much faster than Sun's. It is a absurd and ridiculous marketing trick only MS could think out. (when they hire poople, they do ask them to think out of box by asking some stupid tricky questions, do they?)

    Since it is a marketing trick targeted to nono technical managers, j2ee camp reacted by their own performance petstore, Oracle has their own version
    running under oracle app server and db. I can not remember exactly the figure of the result, but it is at least 10 times faster than the .net one.

    MS lost this round, they must have thought very hard for a while, now we have this new report.

    The report published by TMC, the company has a web site theServerSide.com which has very high reputation in java community. MS obviously put a big money in the boss's hand and forced the report to be published. Some tricks they used now:

    1. a brand new beta version of .Net VS two outdated version of j2ee app servers.
    2. using Wintel machine for .Net. VS linux for j2ee. (linux version of j2ee usually is the slowest one because other venders always tuned to their own hardware first, then windows, last resource is given to linux, recently IBM
    and Oracle changed their priority i think.)
    3. using extensive cache for .Net VS using the slowest and now abandoned BMP Entity Bean for j2ee. (the new CMP Entity Bean not only faster, but also has very good cache machanism.and directly jdbc perhaps even faster if you only
    care about the speed. )
    4. MS invited to tune their application VS IBM, BEA, SUN have zero idea of this project.
    5. running db and app server in same machine. (J2ee is designed for distributed computing, that is why a high overhead for EJB technology etc)
    6. trying to give a impression that TSS j2ee experts joined this competation, but the fact is none of them involed. so they just fighted with a dummy made by themself.

  • Thought it was illegal. (Score:3, Flamebait)

    by www.sorehands.com (142825) on Wednesday October 30 2002, @01:08PM (#4565877) Homepage
    I thought that this type of benchmark was breaching the EULA from Microsoft. But, after reading the report I found it to be legal. Since the benchmarks put .NET into a good light, then it is ok. If the benchmark put .NET in a bad light, then the benchmark is not allowed.
  • .NET is a lot faster by datrus (Score:1) Wednesday October 30 2002, @01:10PM
  • Not exciting? (Score:3, Insightful)

    by targo (409974) <[moc.liamtoh] [ta] [t_ograt]> on Wednesday October 30 2002, @01:11PM (#4565915) Homepage
    You would have been jumping up and down with excitement, had the results been the other way around. Let's try to have at least an illusion of objectivity, OK?
  • Uhhh, why is it suddenly newsworthy? (Score:3, Insightful)

    by coupland (160334) <[dchase] [at] [hotmail.com]> on Wednesday October 30 2002, @01:17PM (#4565974) Journal
    Soooo..... When .NET beats the pants off J2EE it's not newsworthy, but when someone questions the results it is? Surely if one is worthy of posting on /. they both should be...
  • Error rates (Score:3, Interesting)

    by Animats (122034) on Wednesday October 30 2002, @01:20PM (#4566014) Homepage
    What went wrong with "J2EE App Server B"? After two hours, it choked completely. But they don't say why. Even "J2EE App Server A" got 40 errors. The .NET servers supposedly completed the 24 hour load test without errors.

    Incidentally, all this stuff was run on Windows 2000. Somebody should try it on Linux.

    • Re:Error rates by generalpf (Score:1) Wednesday October 30 2002, @01:33PM
  • The real question by Melantha_Bacchae (Score:2) Wednesday October 30 2002, @01:21PM
  • I'm just waiting. (Score:3, Interesting)

    by glh (14273) on Wednesday October 30 2002, @01:22PM (#4566030) Homepage Journal
    There will probably be another J2EE implementation that can "beat" the .NET benchmark. However, I think there is some degree of truth to this particular one. At our .NET User Group Meeting [nwnug.com] last night, we had someone from Microsoft actually talking about this benchmark. He didn't go into much detail on the J2EE side, but said that the MiddleWare company spent 10 weeks trying to get the J2EE implementation tweaked. So either these consultants are really incompetent on the Java platform, or there really is a significant performance difference.

    It's even more convincing in reading the article posted in the link (the "review" that is). Basically it was bringing up how the lines of code count was not correct because J2EE could have done a better job. Bah, that's a silly argument. LOC can't just be brushed off because it really does have something to do with the cost. More lines of code isn't just for "lazy programmers", it's also a factor when you have to think about MAINTAINING that code.

    However, I do buy the argument about not using the "latest and greatest" J2EE. So, I get back to my original point.. I'm just waiting for the next benchmark.

    So since the author complains about the PetStore app as being such a bad design, how about coming up with a new one and then comparing those? It seems to me like, no matter what, the author of the article doesn't believe .NET could *ever* be faster/better/etc. than J2EE. So really, it's a religious thing and I don't think any amount of proof will convince him. And I'm sure there are certainly others out there thinking that way. Of course the other camp also believes .NET is "all that".
  • was MS involved? (Score:4, Informative)

    by loconet (415875) on Wednesday October 30 2002, @01:22PM (#4566031) Homepage

    From their FAQ [middleware-company.com] about the benchmark..

    Was Microsoft involved in this, did they fund this, where were the tests done?

    Yes, Microsoft was certainly involved, as the paper describes. The Middleware Company approached Microsoft regarding performing such an experiment. Microsoft provided the lab, which was located in Seattle, funded the setup costs, and reimbursed us for expenses, including travel expenses. The Middleware Company invested several man-months in this project for which it received no compensation. The activity took much long than we expected, and at various points, we also hired independent consultants experienced in appservers A and B to tune them or provide recommendations, at our own expense. The parameters of the lab were under the control of TMC. TMC controlled the testing process. TMC stated up front that TMC would write a report about the real results, no matter what they were. These experiments are time-consuming, and require resources. Without permission and some support from Microsoft, we would not have been able to conduct the experiment. We would like to have conducted many more experiments than we did, and hope to in the future. TMC stands behind the results of the tests that were conducted.

    Does the fact that Microsoft gave permission for this experiment and provided some support, invalidate the results?

    That is for you to decide. TMC stands behind the results of the tests that were conducted. Should there be other such experiments to be arranged in the future, we will not be able to do them without some assistance with the lab, setup, expenses, and we would hope for more support than Microsoft provided us with for this experiment.

    • 1 reply beneath your current threshold.
  • They used BMP (Score:5, Insightful)

    by vlad_petric (94134) on Wednesday October 30 2002, @01:22PM (#4566033) Homepage
    ... and claim it's gotten them better performance ? With bean-managed persistence the developer writes the SQL code for accessing the beans; this gives a lot of flexibility, but prevents the container from doing a lot of optimizations.

    Anyway, such a comparison is flawed from the start. Bench suites should be developed by independent 3rd parties, or consortiums like SPEC and NOT by vendors.

    I actually don't find the results surprising. Microsoft's pet store is heavily optimized for an app server/SQL server; the standard EJB pet store should work with minimal tweaking on any EJB-compliant app server / SQL server pair.

    The Raven

  • Jackal Feed by waltal (Score:2) Wednesday October 30 2002, @01:31PM
    • Re:Jackal Feed by khuber (Score:1) Wednesday October 30 2002, @10:12PM
      • Re:Jackal Feed by khuber (Score:1) Saturday November 02 2002, @06:02AM
      • 1 reply beneath your current threshold.
  • futile comparisons? by jdkane (Score:1) Wednesday October 30 2002, @01:33PM
  • Are there any reviews that show the opposite? by AxelTorvalds (Score:2) Wednesday October 30 2002, @01:39PM
  • Microsoft already using the report by grungeman (Score:1) Wednesday October 30 2002, @01:41PM
  • Scalability!!! by Dix (Score:1) Wednesday October 30 2002, @01:42PM
  • Would like to have seen Jboss used by rgraham (Score:1) Wednesday October 30 2002, @01:49PM
    • 1 reply beneath your current threshold.
  • What app servers? by utahjazz (Score:1) Wednesday October 30 2002, @01:50PM
    • 1 reply beneath your current threshold.
  • When Reviewing Statistics, Follow the Money by Hornstar (Score:1) Wednesday October 30 2002, @01:52PM
  • Damn... by Find love Online (Score:2) Wednesday October 30 2002, @02:13PM
  • J2EE .vs .NET by ged68 (Score:1) Wednesday October 30 2002, @02:18PM
  • by j3110 (193209) <samterrell @ g mail.com> on Wednesday October 30 2002, @02:20PM (#4566650) Homepage
    I've been using J2EE now for a while, and they made some hideous performance mistakes. The #1 mistake they made was BMP. BMP, for those of you who don't know, is an object persistance model where each object manages it's own storage. It's pretty obvious that for N rows of a database that map to N objects, you will need N SQL statements. That's just wrong and bad. Not only is it the slowest way to access the database, but it requires 10x the amount of code to work with. The other two (common) choices are CMP and JDBC in session beans (others are JDO and other ADO-ish Java API's that wrap JDBC). CMP would require 1 SQL statement to retrieve N rows, and requires no SQL be written, works on all RDBMS's, and you only have to write a skeleton object. It's about a magnitude of 3 faster than CMP. Directly connecting from the Session beans(pretty much a CORPBA object) will make you write your own SQL, but will increase performance yet further(since you can use stored procedures or just do mass updates and still maintain database independance).

    The next thing they did is exclude JBoss, one of the most popular J2EE servers. It's open source, and easy to use. One can only conclude the intentionally left it out because .Net could never hold up to best price/perf. against free. JBoss may not be a speed deamon(it's not slow at all though), but if you disable debugging(on by default), use IBM JDK 1.3.0 and MySQL with innoDB, it will easily win price/performance.

    After reading that TMC had taken money from MS, the only conclusion that I could come up with is that it was rigged. No real J2EE expert would ever make those mistakes. Even free E-Books on TSS will tell you not to make mistakes like that.

    Basically, this really hurts the Java community to see TMC take stabs at J2EE after all it's put into it. Either that or we are to conclude that TMC is unfit for the J2EE educational services they offer. Either way, they may have helped .Net get a foothold, but they are loosing theirs fast.

    Anyone that doesn't know that much about J2EE or doesn't take a look at the code will think this is like the florida recount fiasco, but it really is a legitamit claim that this version of the petstore was really written by A) a monkey, or B) a MS fundee.
    • My conclusion by grungeman (Score:1) Wednesday October 30 2002, @03:43PM
  • Fix it then! by jdevons (Score:2) Wednesday October 30 2002, @02:28PM
  • About scalability by Fugly (Score:2) Wednesday October 30 2002, @02:41PM
  • Every time you read an article praising .Net... by SuperKendall (Score:1) Wednesday October 30 2002, @02:45PM
    • 1 reply beneath your current threshold.
  • Get a grip people by f00zbll (Score:2) Wednesday October 30 2002, @03:13PM
  • So where are the Unix side-by-side numbers? by corey_lawson (Score:1) Wednesday October 30 2002, @03:32PM
  • Missing the point? by DrPepper (Score:1) Wednesday October 30 2002, @03:41PM
  • by carlfish (7229) <cmiller@pastiche.org> on Wednesday October 30 2002, @03:49PM (#4567703) Homepage Journal

    Here's the basic story.

    Once upon a time, Sun wrote a sample application, called PetStore, as a demonstration of various capabilities of the J2EE platform, and various techniques that might be helpful when writing J2EE applications. As such, it was deliberately over-engineered. A tiny shopping site doesn't need all the techniques they threw at it, it was just a context in which to deliver examples of coding pratices that might be useful in other situations. It was example code.

    Speed wasn't a goal. Keeping the LOC low was counter-productive to an application which is basically an example of different coding techniques.

    Microsoft saw this, and realised they had a cheap marketing opportunity. By rewriting the Pet Store in .NET, with completely different goals (speed and low LOC), they could score points just by issuing press releases. It's the marketing equivalent of saying "Hey! Our car is smaller and faster than your truck!" It's true, but meaningless.

    No matter that it was an apples to oranges comparison. No matter that the Pet Store could be rewritten in Java [ibatis.com] using Open Source frameworks with about the same number of LOC by one guy in his spare time. This is marketing, not reality.

    Charles Miller

  • Totally bogus by Serveert (Score:1) Wednesday October 30 2002, @04:03PM
  • Why No JVM On Windows Test? by cmholm (Score:2) Wednesday October 30 2002, @04:13PM
  • Incompetence rather than malicious act... by GrayArea (Score:1) Wednesday October 30 2002, @04:31PM
  • Linux 7.2 by cyborch (Score:1) Wednesday October 30 2002, @04:36PM
  • Websphere is a load of crap - that's it proves.. by Axe (Score:2) Wednesday October 30 2002, @04:37PM
  • Yellow Elf's Maxims on Microsoft by YellowElf (Score:1) Wednesday October 30 2002, @04:37PM
  • Results Analyzed and Refuted. by occam (Score:2) Wednesday October 30 2002, @05:15PM
  • The EULA - I'm surprised nobody has mentioned... by 26199 (Score:1) Wednesday October 30 2002, @05:42PM
  • instead of bitching... by eyeN (Score:1) Wednesday October 30 2002, @05:56PM
  • This story should be modded.... by mattsucks (Score:1) Wednesday October 30 2002, @06:21PM
  • Its Gone:Anybody cached the benchmark pdf quoted?? by Geekonomical (Score:1) Wednesday October 30 2002, @06:46PM
  • Unimportant? by alexo (Score:1) Wednesday October 30 2002, @10:43PM
  • J2EE Linux by ego1024 (Score:1) Thursday November 07 2002, @03:53PM
  • Re:J2EE vs. .Net by Twirlip of the Mists (Score:2) Wednesday October 30 2002, @01:08PM
    • 1 reply beneath your current threshold.
  • Re:J2EE vs. .Net by loconet (Score:2) Wednesday October 30 2002, @01:11PM
    • Re:J2EE vs. .Net by rodgerd (Score:2) Wednesday October 30 2002, @01:43PM
    • Re:J2EE vs. .Net by Svartalf (Score:2) Wednesday October 30 2002, @01:53PM
      • Bytecode by toriver (Score:2) Wednesday October 30 2002, @02:28PM
        • Re:Bytecode by khuber (Score:1) Wednesday October 30 2002, @10:08PM
      • Re:J2EE vs. .Net by grungeman (Score:1) Wednesday October 30 2002, @02:59PM
      • 1 reply beneath your current threshold.
  • Re:Neither of these is actually used by justine_avalanche (Score:1) Wednesday October 30 2002, @01:18PM
  • Re:J2EE vs. .Net by _avs_007 (Score:1) Wednesday October 30 2002, @01:25PM
  • 21 replies beneath your current threshold.