----------------------------------------------------------------
BEFORE YOU POST, search the faq at <http://java.apache.org/faq/>
WHEN YOU POST, include all relevant version numbers, log files,
and configuration files. Don't make us guess your problem!!!
----------------------------------------------------------------
Michael Amster wrote:
>
> Hi:
>
> We have been developing a site using Apache JServ 1.1b3 on Sun Solaris
> 2.7 with JVM 1.1.8_09 and Apache 1.3.9. During development we had
> apache and JServ on a single box and all worked well.
>
> Now we are going to production with a load balancing. We have Apache
> 1.3.9 running on 2 Intel Linux boxes running RH6.1.
>
> It seems that any input stream behavior does not work reliably, in
> particular POST operations and multi-part form reading.
>
> We see that I/O is acting very differently on the separated setup. It
> looks like what is good for the goose is not good for the different
> production architecture. Yesterday I made some changes in the
> Multipart form implementation to handle the case of the stream not being
>
> available. It turns out that there is something truly different,
> I/O-wise, between having Apache/JServ on one box and having them on
> separate boxes. In other words one multipart implementation does not
> satisfy both scenarios. The change I made to fix the production setup
> was bombing out on the development setup. Here is the gist:
>
> On one box ->
> 1. the input stream always seems to report not ready and no
> bytes
> available.
> 2. calls to read() simply work and and return non-zero lengths
> until
> the end of file is reached. this (I believe) is the way things
> are supposed to work.
>
> On 2 boxes ->
> 1. the input stream correctly reports if it is ready with calls
> to ready(). the fix I had was to wait until the stream was ready
>
> before each read.
> 2. calls to read when the stream was not ready would hang the vm
>
> 3. discovery of EOF was due to a wait for a finite amount of
> time
> without the stream being ready. I.E. read() never returns
> negative number.
>
> Any help really appreciated.
>
> Thanks,
Hi,
difficult to imagine what's happening, because you changed 4 parameters
at the same time :
the OS (from Solaris to Linux), the JVM, separated Apache & JServ on 2
machines, and used load-balancing.
The test I'd try : run Apache on 1 linux box & JServ on the "less
unstable" JVM (Solaris).
You can use load-balancing here. just don't start JServ ont the Linux
box.
And see what's happening. If it works, you've something wrong either
with Linux (glibc version?), either with the JVM.
Believe me load-balancing is working on Solaris. Seems to be working on
Linux too.
Send me an exemple of a servlet causing problems, and I'll try it here.
Jean-Luc
--
--------------------------------------------------------------
Please read the FAQ! <http://java.apache.org/faq/>
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Archives and Other: <http://java.apache.org/main/mail.html>
Problems?: [EMAIL PROTECTED]