On Thu, 30 Sep 1999, Tim Reilly wrote:

> The company I work for is in the late stages of re-architecting our entire
> website using Apache JServ, RedHat Linux 6.0, and MySQL.  The code is just
> about finished (version 1.0 freezes in the two weeks), and we're trying to
> spec the servers we will need for deployment.  The problem is that I
> really have no idea what class of machine is required.

Be very very very cautious about even thinking of deploying any site that
has a high load and significant Java code using Linux.  This is not a
slight to Linux, but simply due to the immaturity and poor performance of
JVMs on Linux.

The JVMs that are out there either have horrible performance or are
unstable under load.  The blackdown 1.1 one is pretty stable using green
threads, but is horribly slow for IO due to green threads, and IO is about
all most server side java code does.

The current blackdown 1.2 using native threads (with or without jit) is
quite unstable under high load. Some bits of code will crash it fairly
reliably, other times it just hangs or SEGVs under heavy load.

IBM's JVM is so-so in terms of performance, but may have problems under
load due to the immaturity of Linux threads.  Until recently, there were
also problems that made it not work right with jserv due to it improperly
reporting that there was no more data to be read on a socket instead of
blocking.

In my experience, the price/performance for a sparc box running Solaris is
actually _better_ than that on Linux (even if the box is 5x as expensive),
and a whole lot more reliable, since the JVMs are so much better.

You also need to be very careful about what queries you give to mysql.  It
does not (at least did not) handle concurrent queries; ie. it finishes one
before starting the next, so a single expensive query can kill the whole
site for some time, make things backup, etc.  As long as everything is an
easy select that can be done via indexes, things are reasonable but it
requires careful design of accesses and updates.

Now, my definition of "high traffic" may or may not be more than your
definition.  But the above is based on my experience trying to deploy a
fairly high traffic site running a JVM on Linux.


----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to