www-community mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Noel J. Bergman" <n...@devtech.com>
Subject WORA Considered Evil ;-)
Date Thu, 26 Jun 2003 06:03:10 GMT
> [WORA] is the reason why we basically we have mod_* where * is any
> programming language, but not mod_java

> for apache 2.0, a JNI-based mod_java is perfectly valid
> architecturarely, but nobody works on it

Well, there seems to be a JNI (in-process) worker on some platforms, but
personally I prefer to have workers outside of httpd for purposes of
security, load balancing, etc., which seems to be the approach you prefer as
well (below).

> Also, java programmers tend *not* to have any knowledge of things like
> "how to link a library in a native environment".

Do you really know only such cloistered Java programmers despite all of the
ones you meet?  The majority of Java programmers I know have rich and varied
backgrounds.  I highly recommmend the www.softwaresummit.com conference as
the place to meet Java programmers who are both serious about Java and well
versed in other areas.

> basically they are totally isolated, which leads to concepts such as
server
> microkernel architectures (avalon Phoenix) which look cool from a purely
> architectural perspective, but are totally weak from a security and
> stability perspective, because they use one JVM for the entire thing, a
> very weak setup.

However, having something like httpd front-end lots of backend JVMs on
multiple machines is nice.  And what prevents mod_jk2 from using a launcher
to control and monitor JVM processes?  It would be nice to be able to do
something like:

  <virtualhost ...>
    ServerName RingBearer
    JkUserID frodo FoTR
    Jk...
    ...
  </virtualhost>

and have Coyote communicate to a "jkLauncher" a connection request for a JVM
running as that user (configuration of the JVM not being the launcher's
responsibility).  It would certainly make my configuration easier, and more
robust.  Currently, I do something similar by hand.

A problem with multiple JVM instances is the lack of sharing between
multiple instances.  If you run multiple instances of tomcat, one per
virtual host for example, your memory overhead is considerable since none of
the class code is shared.  I would like to see the JVM/JIT generate and
share common class code on platforms that support it.

Sun appears to prefer intra-process threading or inter-process communication
over network interfaces.  You might find:

  http://www.iee.org/Publish/Journals/ProfJourn/Proc/SEN/vinter.pdf
  http://www.cs.berkeley.edu/~szewczyk/cs267/Final.html
  http://matsu-www.is.titech.ac.jp/~sohda/research/javag2001.pdf

interesting.  I didn't say practical.  :-)  Although JPS looks interesting.

True, Java is not a systems programming language.  But without WORA, I do
not believe that Java would have the success that it has on the server.

	--- Noel


---------------------------------------------------------------------
To unsubscribe, e-mail: community-unsubscribe@apache.org
For additional commands, e-mail: community-help@apache.org


Mime
View raw message