Re: [PHP4BETA] How does Java support work
| From: | rubys at us dot ibm dot com | Date: | Mon, 13 Mar 2000 13:58:33 +0000 |
| Subject: | Re: [PHP4BETA] How does Java support work | ||
| Groups: | php.version4 | ||
| Request: | Send a blank email to php-version4+get-12050@lists.php.net to get a copy of this message | ||
Andi Gutmans wrote:
>By the way, how does your Java support work? Does it start a JVM for each
>hit? Or does it cleanup the JVM in someway in between hits? In general I'm
>interested in the performance issues.
sapi/servlet will use the existing JVM, and is as fully multi-threaded to
the extent that PHP will allow it.
If you simply use ext/java by itself, a single JVM will be spawned per
process on the first request to a Java object. This JVM will live until
module shutdown. Apache 1.3.x will therefore have a pool of JVMs, and CGI
will create a JVM per request.
As a historical note, I wrote ext/java first. When I started to look into
issues such as performance, robustness, and JVM pooling, I realized that
this was not only a hard problem, but also a solved problem. So I took
what was essentially the lazy way out and opted to use the existing JVM
from the web server. In retrospect, I do believe that this actually is the
right answer.
- Sam Ruby