Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Programming IT Technology

Another J2EE vs .NET Performance Comparison 533

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.

Another J2EE vs .NET Performance Comparison

Comments Filter:
  • Some of us (Score:3, Insightful)

    by Anonymous Coward on Wednesday October 30, 2002 @01: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.

  • Hmmmm. (Score:4, Insightful)

    by The Bungi ( 221687 ) <thebungi@gmail.com> on Wednesday October 30, 2002 @01: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.

  • by GreyWolf3000 ( 468618 ) on Wednesday October 30, 2002 @01:48PM (#4565660) Journal
    It's not about loving Linux. It's about loving Freedom (TM). And that means not having a centralized conduit for information exchange. It means my computer being mine.

    On a side note, I wish the 'net were never called the 'Information Superhighway.' That single analogous dubbing has spurred the acceptance of rhetoric in Congress that allows all sorts of regulation.

  • Quel suprise (Score:5, Insightful)

    by JonK ( 82641 ) on Wednesday October 30, 2002 @01: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?

  • by kpansky ( 577361 ) on Wednesday October 30, 2002 @01:49PM (#4565671)
    Actually languages still continue to matter a great deal even now. While computers are getting ever faster, do you really want to offset speed gains by using languages that are inefficient for many tasks?

    Don't get me wrong. I love high-level languages. Python is one of my favorite languages. However, I would not ever consider doing driver implementation or operating system work in python. Something must be said for low-level languages and their ability to relate directly to the hardware they are running on.
  • Re:Save your time (Score:3, Insightful)

    by Thomas Charron ( 1485 ) <twaffle@NoSpAM.gmail.com> on Wednesday October 30, 2002 @01:51PM (#4565685) Homepage
    Lines of code has nothing to do with ease of use, reliability, or scalability.

    This isn't some sort of a 'I can do that task in *3* lines of code, Jack!' contest.. ;-)
  • by Pov ( 248300 ) on Wednesday October 30, 2002 @01: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!!
  • by NitsujTPU ( 19263 ) on Wednesday October 30, 2002 @01:53PM (#4565710)

    Performance is an issue in enterprise applications. The difference between buying 50 servers and 100 servers matters.
  • by Twirlip of the Mists ( 615030 ) <twirlipofthemists@yahoo.com> on Wednesday October 30, 2002 @01:53PM (#4565715)
    (Given your user name and other info, I expected a troll. Turns out you said something reasonable. Weird.)

    What you say is true on the desktop, but this comparison is between two server technologies. Desktops are fast enough these days for what we want to do with them, but servers are still often heavily overloaded. If you build a big n-tier web application, chances are it's for a commercial purpose, right? So your goal in life is to get more and more people to use that web application, so you can make more money and whatever whatever. If your application can't scale as far as you need it to, it's bad, bad. So performance is very important in situations where the size of the application user base needs to scale dependably.
  • Yeah, but... (Score:5, Insightful)

    by Schnapple ( 262314 ) <tomkidd@[ ]texas.com ['via' in gap]> on Wednesday October 30, 2002 @01: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).

  • by Thomas Charron ( 1485 ) <twaffle@NoSpAM.gmail.com> on Wednesday October 30, 2002 @01:57PM (#4565755) Homepage
    Well, I'm going to be written off as a paid Microsoft employee for suggesting this, but..

    I've done some fiddling of some rough benchmarks myself..

    This isn't really a .NET thing here. It's more a demonstration of the speed and bloat associated with doing things in the J2EE way.

    It's not a BAD way to do it. Just as CORBA isn't really a BAD way to handle RPC calls. It's just rather large and has significant overhead.

    The numbers presented actually look pretty much on par, although my local fiddling only went to the extent of using 10 clients connected to the network to beat on the machines..
  • Sheesh (Score:5, Insightful)

    by Reality Master 101 ( 179095 ) <RealityMaster101 AT gmail DOT com> on Wednesday October 30, 2002 @02:02PM (#4565807) Homepage Journal

    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.

  • by tenchiken ( 22661 ) on Wednesday October 30, 2002 @02: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.
  • Apples and Oranges (Score:5, Insightful)

    by moogy ( 472637 ) on Wednesday October 30, 2002 @02: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.

  • by vanguard ( 102038 ) on Wednesday October 30, 2002 @02:04PM (#4565832)
    I've been building web applications since 1997. In nearly every app I write most of the time is spent gathering and sorting the data, not in presenting the page.

    If one of my pages takes 7 seconds to come up, I can almost guarentee that the query is 6.x seconds. For that reason, I agree, language speed isn't that critical to me. What matters is: How easy is it to write/maintain? Will the language be supported? Can we hire guys that know it? Is it hard to learn?
  • Re:Some of us (Score:2, Insightful)

    by Anonymous Coward on Wednesday October 30, 2002 @02:04PM (#4565833)

    Ever wonder why MS is putting .NET ads on Slashdot?

    Well, posts like these are the other shoe dropping.

    Rest assured, many many many companies are evaluating MS technologies vs. OSS technologies for a number of good reasons; Security, reliability, scaleability, non lock-in, no subscription plans, etc.

    For example, see the story posted on Slashdot just yesterday [slashdot.org] where the US DoD is advocating the use of FOSS (Free & Open Source Software). Read the report and the recommendations.

    What's remarkable about this report is that it's written by Mitre and DISA (Defense Information Systems Administration), both very conservative groups when it comes to new technologies.

    I'm posting anonymously because my employer has close ties with MS and after what happened to Bruce Perens for speaking his mind...

  • well duh (Score:4, Insightful)

    by papskier ( 263483 ) on Wednesday October 30, 2002 @02: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.

  • by darthaya ( 66687 ) on Wednesday October 30, 2002 @02: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.

  • Not exciting? (Score:3, Insightful)

    by targo ( 409974 ) <targo_t@hotma[ ]com ['il.' in gap]> on Wednesday October 30, 2002 @02: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?
  • Re:Save your time (Score:3, Insightful)

    by LoRider ( 16327 ) on Wednesday October 30, 2002 @02:12PM (#4565923) Homepage Journal
    So you don't think that maintaining 2000 lines of code as opposed to 14000 makes any difference in the scalability, reliability or ease of use.

    What's more scalable an application which is 7 times larger than it's counterpart? An application that new-to-the-project developers aren't afraid of because it's some big huge pile of code that takes countless hours to become familiar with.

    How about which application is more reliable. Is the one that is 7 times the size going to be more reliable and be easier to fix bugs.

    And our old friend ease of use. Let's see we have here 2 applications and one is 7 times the size as the other, which one will be the easiest and most fun for people to poke with a stick to fix all those annoying problems useability invariably comes up with.

    Now of course the 14000 lines in the .Net application could be the best designed application that is has everything well abstracted and adheres tightly to the MVC model of programming, but I don't give a shit 2000 lines of code always going to better then 14000 if they both accomplish the same goal.

    Writing efficient intelligent code is the way to go, not Microsoft's write tons of shit code and hope for the best mentality towards the development process. I am talking out of my ass a bit here, but I think I make sense - or do I?

  • by steve_l ( 109732 ) on Wednesday October 30, 2002 @02:13PM (#4565924) Homepage
    That's what comes of BEA and WebSphere pricings; if they'd used jboss or HP-app server (still a free download, I believe), app server cost becomes zero, leaving only hardware, OS and database. Move to hypersonic SQL or postgres to take oracle out the loop and you start to get economic performance. Sure, per-cpu perf may be less, but what if all those CPUs are just blade mounted PIII-8000 parts running your favourite linux distro?

    NB, after development costs, the biggest expenses in my last projects were operational costs and hardware depreciation. This review didnt look at either of those, but everyone I know is scared of IIS management, so its operational cost is probably higher.
  • Re:Save your time (Score:5, Insightful)

    by Gaijin42 ( 317411 ) on Wednesday October 30, 2002 @02:14PM (#4565943)
    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.

  • I completely agree. In fact, that's why Python is my language of choice--I get more done faster, and unless I write a shitty algorithm I really don't notice a speed problem.

    However, when it comes to this particular benchmark, it has more to do with performance on a server somewhere handling thousands of simultaneous connections. Web applications, if you will. And in this particular case, a performance difference of 10% could mean a hundred users get locked out, and responsiveness to the others will be very bad.

    If you ask me, it's one of the great mysteries of the computer industry why desktop apps are written in C/C++ and web apps are written in Java, Perl, or .Net. After all, we've been admitting for years that scripting languages are OK unless you need the extra performance, and these guys do need that extra drop. So why aren't they writing these programs in C or C++? :) Clearly it isn't the libraries or types involved, since these are almost always available to C or C++ also.

    That's the $15 million dollar question, now isn't it? We seem to optimizing for RAD and performance, rather than just performance. Perhaps we should rethink our priorities, move scripting languages onto the desktop, and compiled languages onto the server...

  • by coupland ( 160334 ) <(moc.liamtoh) (ta) (esahcd)> on Wednesday October 30, 2002 @02: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...
  • Re:well duh (Score:1, Insightful)

    by GrayCalx ( 597428 ) on Wednesday October 30, 2002 @02:18PM (#4565981)
    Are you even reading the other posts or the article? Apparently not, as stated already the lines of code were reveresed in the Register's report. J2EE used 14k while .NET used 2,600.

    So according to your theory, the Javaites used inline, and they were still slower.

    But also pointed out, does length of code really matter beyond time of development?
  • They used BMP (Score:5, Insightful)

    by vlad_petric ( 94134 ) on Wednesday October 30, 2002 @02: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

  • Re:Some of us (Score:2, Insightful)

    by Lumpy ( 12016 ) on Wednesday October 30, 2002 @02:22PM (#4566039) Homepage
    but if you are in a position to influence the decisions you should have already been doing so.

    i am a lowly technician/specalist that cover's only 5 offices.. Yes I am able to influence infrastructure decisions because of two main factors...

    1- I learned Suit speak.. talk in numbers, money... grubby ol' money is what they want to hear... that's it.. show them savings, increased performance and increased revinue...

    2- if you open your mouth then take ownership of it... If something blows up, stand up and say "My fault! it was my decision!" Many of you think "Ohhh I'll get fired instantly!!!" and that is only true if your boss is a complete moron and idiot. any employee that takes ownership of their work and will admit mistakes needs to be rewarded... I have been, with 2 promotions because of it. (Failures promoted me!)

    i have no problem swaying corperate policy.. just start working on your sales skills as that is all it really is... sales.... can you outsell the microfot rep? I sure can.
  • by mosch ( 204 ) on Wednesday October 30, 2002 @02:24PM (#4566058) Homepage
    Web Servers tend not to be expensive machines. A decent software engineer is going to have a loaded cost of somewhere in the neighborhood of $150k/year, a good one will be more than that. If I can keep from hiring two of these people by buying $300,000 in hardware, I'm even money in year one, and saving $300k/year every year afterwards.

    People on slashdot have some really, really odd ideas about what's expensive and what's not. Here's a clue: web servers are not expensive.

  • Re:Save your time (Score:3, Insightful)

    by Fugly ( 118668 ) on Wednesday October 30, 2002 @03:09PM (#4566549) 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.

    I've said it here before and I'll likely say it again. Lines of code is an absurd measure of anything. It means nothing. A 1000 line source file can be more "elegant" and more readable than a 500 line source file and visa-versa.

    And as for your typing speed comment. Anybody who thinks that even 5% of programming is typing the code in has a lot to learn. Good programming is design, documentation, testing, and refactoring. Typing in code should be a relatively small part of your job as a programmer. If it's not, most likely you're doing something wrong. If you're worried about your typing speed, you're doing something wrong. If you can tell me how many lines are in a single source file you've created without checking, you're probably doing something wrong.

  • Damn... (Score:2, Insightful)

    by Find love Online ( 619756 ) on Wednesday October 30, 2002 @03:13PM (#4566592) Homepage
    It seems like these guys spent a lot of time optimizing for Java, only to see it get the smack down. Of course, there is the issue of how competent they were, but the fact remains that .net is apparently faster for this kind of thing.

    Its kind of crappy that they couldn't name app servers due to 'server B's license, especially since Server B sucked so bad...
  • by iSwitched ( 609716 ) on Wednesday October 30, 2002 @03:16PM (#4566617)
    While I agree that .NET concepts are cool, the reason is because much of the concept is so obviously based on Java, only the names have been changed to protect the innocent.

    I further believe that the .NET implementation would probably turn out to be marginally faster even in a truly fair comparison. It doesn't surprise me that Microsoft engineers working on a Microsoft platform could optimize more heavily than java, which at some point must run up against the constraints of the JVM implementation on the given platform.

    BUT -- raw speed isn't the issue all the time. A quick google turned up the fact that MS has between 40% and 49% of the server OS market (depending on whose figures you believe). Linux at about 25% and everyone else. I write java code for a company with a significant number of customer who are either wholly in the 51% or run mixed environments.

    Here's the kicker -- it is totally possible for java to realize the write once run anywhere promise on the server side, we're doing it. The fact that we don't have to port the app from platform to platform is a significant saving for us. Our customers enjoy greater compatibility, faster updates, increased feature set and LOWER PRICES. Our more adventurous customers then lower their TCO even more by running the app on any of the extremely well-written open-source app servers available.

    MS trained us to view discussions such as these in business terms, not technical ones -- and they loose the argument on business terms.

    (and yes, I do know .NET is being ported to other platforms, but if I can't use it today, it may as well not exist).
  • Re:Some of us (Score:3, Insightful)

    by gmack ( 197796 ) <gmackNO@SPAMinnerfire.net> on Wednesday October 30, 2002 @03:36PM (#4566842) Homepage Journal
    That's the whole problem.. the pet shop example app was never designed to be efficiant or even used.

    It's an *example* app that demonstrats how to implement certain java features. They did not allow or ask anyone to make a new app they did it
    themselves then asked MS to make a competing one.

    Even if there exists a "UPER OPTIMIZED PET SHOP APPLICATION" it's doubtfull they would have used it and optimising the current app would kill it's usefullness as a teaching aid.

    The whole comparison is completely bogus and it reminds me of someone comparing a ferrari with one of those trainer station wagons with random extra wiring the Canadian millitary used to use to train their mechanics.
  • by truth_revealed ( 593493 ) on Wednesday October 30, 2002 @03: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.
  • Get a grip people (Score:2, Insightful)

    by f00zbll ( 526151 ) on Wednesday October 30, 2002 @04:13PM (#4567226)
    Not everything in the world is a stateful application server. It makes absolutely no sense to compare a stateless application server to a stateful one. Go to .NET application server page and look at what it says. For those too lazy, it states emphatically .NET application server does not support stateful persistence management.

    if you want something stateful, you have to do it yourself. Anyone with a clue would never use EJB when all they need is a simple cache of Hashmap. The only thing that tells me is the consultants and the company that did the benchmark are either 1. idiots or 2. doing a poor job of hiding their bias. The fastest way to get blazing speed would have been to use a custom cache in resin with a simple hashmap that handles it for the webapp. Doing transaction in the database isn't the same as an application server that manages transaction in memory using Container Managed persistence.

    It's just the usual marketing bs, move on, nothing to see here.

  • by Fugly ( 118668 ) on Wednesday October 30, 2002 @04:18PM (#4567303) Homepage
    Lines of code has everything to do with ease of programmer replacment, maintenance costs, and flexibility.

    This is about being able to replace your programmers easily if one of them is a pompous ass, being able to move the code base around and adapt it quickly if your OS provider is a pompous ass, and being able to keep maintenance costs down because the overal structure is smaller.

    Bullshit. Organization, design and documentation of code has everything to do with ease of programmer replacement, maintenance costs, and flexibility. It's about quality, not quantity. I can have 50,000 lines of code that are split into well concieved, well documented modules that conform to accepted standards. A new programmer can come on board and maintain this code easily. I can have 3000 lines of crap code that they guy who wrote it can't maintain a year later.
  • Re:Some of us (Score:2, Insightful)

    by chown ( 62159 ) on Wednesday October 30, 2002 @04:26PM (#4567423)

    I suppose there's always the possibility of some people actually liking .Net ;-)

    As someone who's used .NET a bit, but not a whole lot, I have to say I'm not terribly impressed. Had it come out say... 6-7 years ago (in a somewhat stripped-down form, granted), then maybe. I'd have the anti-MS bias going, but at least it would have been semi-innovative.

    All it is is Java, except they're calling it "Visual Basic .NET", "Visual C++ .NET", and "Visual C# .NET". Oh, and while there's no technical basis for me disliking it "Visual C#" gets mad demerit points on name alone :)

    What I will give it, is that from a programmer's point of view, I think it's probably better than VS6, all things considered. There's a lot of new APIs to learn, most of which are at least a little more intuitive than the older ones (but that's not saying much).

    I still find the documentation to be abysmal. There certainly is a lot of it, but have you ever tried to FIND anything on MSDN? And the class reference pages, while being not terribly difficult to find, occaisionally neglect things such as what header file or library things live in - which is important if you're an old-fashioned C++ programmer like me. Not all of them are this way, but I have found a few.

    And of course, the main driving force behind all of this is XML Web Services. Which I am in fact, a big supporter of. And I think their integration with SOAP and UDDI is "neat", although it's still a little early for it to be entirely practical on a large scale, but that's the whole point of releasing .NET in the first place, isn't it? But heck, there are reference implementations (free ones, beer and speech) of this stuff in Java if you want it. Sure, it's not all automagically integrated into an IDE, but if you can't work outside of something like Visual Studio, then what kind of a programmer are you?

    In conclusion, why use .NET over Java? The main reason you'd write something in native Win32 over Java in the past is that Java would just run slower than a native Win32 app most of the time. So why would you want to compile your code to an M$ specific VM? At least if you wrote it in Java, it would be [mostly] platform-independent. .NET still seems to run faster than something in straight Java, but there is a difference, and I think it's reaching the point with computers getting as fast as they are, and with more and more people using "Alternative" OS's, that the benefit of having something run faster on Windows, but ONLY on windows is greatly diminished.

    Just my $0.02, anyway.

Thus spake the master programmer: "Time for you to leave." -- Geoffrey James, "The Tao of Programming"