[Gllug] OT(ish): Advice

Mike Brodbelt mike at coruscant.demon.co.uk
Thu Dec 12 23:22:19 UTC 2002


On Thu, 2002-12-12 at 18:17, Simon Stewart wrote:
> On Wednesday, Dec 11, 2002, at 01:27 Europe/London, Mike Brodbelt wrote:

> > Is there any actual reason why I should choose to run server side
> > software on my web server, where I control the platform, in an emulated
> > environment guaranteed to slow everything to a crawl? Is there any sane
> > reason to choose Java over, well, *anything* else that's not running in
> > a JVM? I'm genuinely curious as to why so many people seem to have
> > bought into servlets, and I can only currently rationalize by assuming
> > that Intel are brainwashing people......
> 
> First of all, your comment about java being slow is demonstrably 
> specious. Startup times might suck, and you could get bitten by GC if 
> you're not careful

That's "slow", in my book :-).

>, but with a modern 1.4 JVM it flies.

OK, I'll grant it *can* be fast, but the general, subjective "feel" of
running a Java program is like wading through molasses. Startup time
does have a big psychological impact here, I'll grant.

> In a word, the "official" reason why people have bought into servlets 
> is "scalability" The idea is that you start small on a little i386 
> Linux box, and then you take the same application (no rewrites) and 
> move to a more powerful machine. When you out-grow the performance 
> offered by Intel, you can move to bigger iron, or perhaps to a 
> clustered environment. All with the same app --- you don't need to 
> start tweaking it. That's the theory.

Hmmm. Ok, I'd buy that in some cases. Web serving however, isn't one of
them.... I'm sure that the *vast* majority of web sites could buy a
Linux/Intel box big enough to saturate their bandwidth, at which point
further horsepower becomes moot. Large sites might end up with a big SMP
machine, but it'll still be cheaper than a Sun. There will, of course,
be exceptions to this, but relatively few compared to the number of
sites that have deployed servlets.
 
<snip>

> As a developer, then, java has the advantage shared by languages such 
> as Perl in that it has a vast and sprawling collection of pre-written 
> libraries and tools that do some task and do it well. It's got a 
> "professional" image, which perl lacks, and which makes me more 
> employable (this in no way disparaging Perl, a language that I've stuck 
> up for to Java zealots before)

I still belive for 90% of cases Perl is a superior language for use on
web servers. With Apache and mod_perl, you get the advantages of
persistent processes, and you don't blow your memory and CPU
requirements through the roof by running a JVM.

> I'm not tied to one vendor (IBM provide 
> some of the best java tools, compilers and JVMs) In short, Java is a 
> comfortable place to work.

Agreed - it's a nice environment, and there are some good tools. I'd be
happier about it if there were any real, complete, free implementations
though - Sun has a tighter hold on it than I think is good.
 
> Speedwise, even from reasonably low end hardware I've managed to get 
> some pretty serious performance out of the language. It runs on my 
> favourite OSs, and I know that when I hand some work to a client, as 
> long as it's in pure java, it'll work on theirs too.

This is a big advantage - the ability to deploy an app to end users with
an operating environment which varies, and over which you have no
control. For me, this is, I think the single best reason for using Java,
and it's the reason I'm finding myself starting to push it. It's not a
gain when using servlets though, which was my bone of contention.
 
> And I'll be honest, it's not MS.

<snip>

> So I'm a bigot. Shoot me.

Given MS's history, there's a good case for considering that common
sense. There's a lot of companies out there that made deals with
Microsoft, and regretted not counting all their fingers after the
handshake....
 
> OTOH, there's lots that Java can learn from c#, and I think that those 
> lessons will be learnt a lot faster than might otherwise be expected. 
> And if you wave "it's not native" in my face, and slap you around with 
> the CLR ;)

C# and .NET have always looked to me to be MS's "clone Java" option. The
only big, obvious difference is that Microsoft have made an effort to
make their "VM" language neutral, whereas Sun bound the Java VM tightly
to the Java language. Java is obviously something Microsoft feel
threatened by enough to copy...

Mike.


-- 
Gllug mailing list  -  Gllug at linux.co.uk
http://list.ftech.net/mailman/listinfo/gllug




More information about the GLLUG mailing list