----------------------------------------------------------------
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!!!
----------------------------------------------------------------
Well, my problem appears to be related to this. When I cranked up
maxConnections, the problem goes away.
# (this number does not identify the maximum number of concurrent servlet
# requests: see the JServ protocol specification for more info on this)
This is from the jserv.properties comments. What does this mean? I looked
in the ApJServ docs and couldn't find anything relating to this. If I
request 200 concurrent connections, don't I need
security.maxConnections=200?
Also, what's confusing me is that JServ *does* appear to be restarting. The
logs show nothing (except Apache error_log shows "premature end of script
headers", which I also find mysterious). All my servlets' init() methods
are being called again after this.
I think the solution to my problem is to crank up security.maxConnections;
I'd like to understand what's happening.
Thanks,
Ben Flaumenhaft
>JServ is serving up to maxConnections socket connections at the same
>time (default 50)
>JServ won't accept more that maxConnections, so Apahce will probably
>'return internal server errors', but I are you sure that JServ
>restarts itself ? please take a look at the logs.
>
> while (true) {
> //Here we make sure that the number of
> //parallel connections is limited
> semaphore.throttle();
> try {
> JServConnection connection = new JServConnection();
> Thread t = new Thread(connection);
>
>
>Wednesday, January 19, 2000, 7:22:02 AM, you wrote:
>
>rle> ----------------------------------------------------------------
>rle> BEFORE YOU POST, search the faq at <http://java.apache.org/faq/>
>rle> WHEN YOU POST, include all relevant version numbers, log files,
>rle> and configuration files. Don't make us guess your problem!!!
>rle> ----------------------------------------------------------------
>
>
>
>rle> Ben,
>rle> Can you also include the script you are using for the stress
>testing ?
>rle> I can try and run it on my machine and see what turns up.
>
>rle> best regards
>
>rle> Raghu
>
>rle> From:"B. Flaumenhaft" <[EMAIL PROTECTED]> on 01/18/2000 07:37 PM GMT
>
>rle> Sent by: "B. Flaumenhaft" <[EMAIL PROTECTED]>
>
>rle> Please respond to "Java Apache Users"
>rle> <[EMAIL PROTECTED]>
>
>
>rle> To: "Java Apache Users" <[EMAIL PROTECTED]>
>rle> cc: (bcc: Raghu V Singh/rsingh1/LSU)
>
>rle> Subject: Re: Apache/JServ under high-volume requests?
>
>
>
>rle> ----------------------------------------------------------------
>rle> BEFORE YOU POST, search the faq at <http://java.apache.org/faq/>
>rle> WHEN YOU POST, include all relevant version numbers, log files,
>rle> and configuration files. Don't make us guess your problem!!!
>rle> ----------------------------------------------------------------
>
>
>rle> Thanks for all the suggestions, but I'm afraid I've managed to duplicate
>rle> the problem with an extremely basic servlet (no database access or
>rle> potential resource issues).
>
>rle> I took the SimpleServlet program, included as an example in the JSDK.
>This
>rle> servlet simply opens an output stream and prints a "hello world"; I
>added a
>rle> small delay to it (Thread.sleep() for ten seconds). Several hundred
>rle> connections kills Apache/JServ quite effectively.
>
>rle> I've attached this servlet code to the end of this message, in case
>anyone
>rle> would like to try it for themselves.
>
>rle> It certainly occurred to me that there might be bugs in my code (or in my
>rle> VM). Still, to reiterate what noone has responded to: *** I'm not seeing
>rle> deadlock, and I'm not seeing exceptions. I'm seeing JServ restart itself
>rle> and Apache return internal server errors while this is happening. ***
>
>rle> Under what conditions should JServ die and restart? I was under the
>rle> impression that it shouldn't be possible for my code to kill the VM.
>
>rle> I have a number of ideas as to what's happening here (most of them
>rle> involving APJserv issues), but they're pure speculation, and I don't know
>rle> the JServ internals very well. That's why I'm posting this here.
>
>rle> To reiterate: a very vanilla servlet is killing Apache/JServ under
>rle> high-load conditions, and this is perfectly duplicable under Linux and
>rle> Solaris (using several VMs, including the JavaSoft VM).
>
>rle> Thoughts?
>
>rle> Thanks,
>rle> Ben Flaumenhaft
>
>
>
>rle> here's the code that's causing problems when requested by one or two
>rle> hundred concurrent threads:
>
>rle> import java.io.*;
>rle> import javax.servlet.*;
>rle> import javax.servlet.http.*;
>
>rle> public class SimpleServlet extends HttpServlet
>rle> {
>rle> public void doGet ( HttpServletRequest request,
>rle> HttpServletResponse response )
>rle> throws ServletException, IOException
>rle> {
>rle> PrintWriter out;
>rle> String title = "Simple Servlet Output";
>
>rle> // set content type and other response header fields
>first
>rle> response.setContentType("text/html");
>
>rle> // then write the data of the response
>rle> out = response.getWriter();
>
>rle> out.println("<HTML><HEAD><TITLE>");
>rle> out.println(title);
>rle> out.println("</TITLE></HEAD><BODY>");
>rle> out.println("<H1>" + title + "</H1>");
>rle> out.println( "<p> Delaying 10 seconds ..." );
>rle> out.flush();
>
>rle> try
>rle> {
>rle> Thread.sleep( 10 * 1000 );
>rle> out.println( "done" );
>rle> }
>rle> catch( InterruptedException e )
>rle> {
>rle> out.println( "interrupted" );
>rle> }
>
>rle> out.println("<P>This is output from SimpleServlet.");
>rle> out.println("</BODY></HTML>");
>rle> out.close();
>rle> }
>rle> }
>
>
>rle> --
>rle> --------------------------------------------------------------
>rle> Please read the FAQ! <http://java.apache.org/faq/>
>rle> To subscribe: [EMAIL PROTECTED]
>rle> To unsubscribe: [EMAIL PROTECTED]
>rle> Archives and Other: <http://java.apache.org/main/mail.html>
>rle> Problems?: [EMAIL PROTECTED]
>
>
>
>
>
>
>
>
>
>
>rle> --
>rle> --------------------------------------------------------------
>rle> Please read the FAQ! <http://java.apache.org/faq/>
>rle> To subscribe: [EMAIL PROTECTED]
>rle> To unsubscribe: [EMAIL PROTECTED]
>rle> Archives and Other: <http://java.apache.org/main/mail.html>
>rle> Problems?: [EMAIL PROTECTED]
>
>
>
>
>--
>Best regards,
> Ivan mailto:[EMAIL PROTECTED]
>
>
>
>
>--
>--------------------------------------------------------------
>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]
--
--------------------------------------------------------------
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]