<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Arial; font-size: 12pt; color: #000000'>Do the configuration elements align with the default executor in JBoss Web, which is not the JBoss Threads implementation?<br><br>Andy<br><br><hr id="zwchr"><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><b>From: </b>"Brian Stansberry" &lt;brian.stansberry@redhat.com&gt;<br><b>To: </b>jboss-as7-dev@lists.jboss.org<br><b>Sent: </b>Thursday, October 20, 2011 1:24:41 PM<br><b>Subject: </b>Re: [jboss-as7-dev] Controlling Maximum Number of JBoss Web HTTP Threads<br><br>If the web subsystem config is going to change, I'd like to see if it <br>can be made to work the way JCA does[1] -- a config element aligned with <br>the appropriate pool type in the jboss-as-threads.xsd.<br><br>[1] <br>https://github.com/jbossas/jboss-as/blob/master/build/src/main/resources/docs/schema/jboss-as-jca_1_0.xsd#L120<br><br>On 10/20/11 2:17 PM, Andrig Miller wrote:<br>&gt; Good thing you looked at the code. I assumed that it impacted the<br>&gt; threads. I guess the defaults have always been big enough for all the<br>&gt; tests I have done then. We should open a JIRA on JBoss Web to add the<br>&gt; maxThreads attribute to the XML schema that goes into domain.xml and<br>&gt; standalone.xml, and have it defined as read-write, so this can be changed.<br>&gt;<br>&gt; Andy<br>&gt;<br>&gt; ------------------------------------------------------------------------<br>&gt;<br>&gt; &nbsp; &nbsp; *From: *"Benjamin Browning" &lt;bbrowning@redhat.com&gt;<br>&gt; &nbsp; &nbsp; *To: *"Andrig Miller" &lt;anmiller@redhat.com&gt;<br>&gt; &nbsp; &nbsp; *Cc: *"jboss-as7-dev@lists.jboss.org Development"<br>&gt; &nbsp; &nbsp; &lt;jboss-as7-dev@lists.jboss.org&gt;<br>&gt; &nbsp; &nbsp; *Sent: *Thursday, October 20, 2011 12:02:56 PM<br>&gt; &nbsp; &nbsp; *Subject: *Re: Controlling Maximum Number of JBoss Web HTTP Threads<br>&gt;<br>&gt; &nbsp; &nbsp; The max-connections attribute has no impact on the maximum http<br>&gt; &nbsp; &nbsp; threads. If you look at the code, all it does is set the maximum<br>&gt; &nbsp; &nbsp; poller size and sendfile size for the underlying JIoEndpoint.<br>&gt;<br>&gt; &nbsp; &nbsp; To control the threads you either have to use an external executor<br>&gt; &nbsp; &nbsp; or set the maxThreads attribute on the protocol handler (which in<br>&gt; &nbsp; &nbsp; turn sets it on the underlying JIoEndpoint).<br>&gt;<br>&gt; &nbsp; &nbsp; Ben<br>&gt;<br>&gt; &nbsp; &nbsp; On Oct 20, 2011, at 1:47 PM, Andrig Miller wrote:<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; Ben,<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; I think all you have to do is set max-connections="n" to the<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; number of threads you want. That's what I have been doing, and<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; based on looking at the running threads through JConsole, it<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; seems to work just fine. In terms of the executor attribute, and<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; setting up a pool using JBoss Threads, I have done extensive<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; testing. I usually see only a small degradation between the two,<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; like around 1% or so.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; Of course, that may vary based on what executor you choose to<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; use, but I was using the unbounded queue thread thread pool with<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; good success. I also changed the keepalive time, to keep the<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; threads around for at least an hour, so to avoid churn in my<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; testing between executions.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; Andy<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; ------------------------------------------------------------------------<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; *From:*"Benjamin Browning" &lt;bbrowning@redhat.com<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;mailto:bbrowning@redhat.com&gt;&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; *To:*"Andrig Miller" &lt;anmiller@redhat.com<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;mailto:anmiller@redhat.com&gt;&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; *Cc:*"jboss-as7-dev@lists.jboss.org<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;mailto:jboss-as7-dev@lists.jboss.org&gt;Development"<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;jboss-as7-dev@lists.jboss.org<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;mailto:jboss-as7-dev@lists.jboss.org&gt;&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; *Sent:*Thursday, October 20, 2011 10:32:01 AM<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; *Subject:*Controlling Maximum Number of JBoss Web HTTP Threads<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; I split this thread off from "Two thread pools section in<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; management API" since it's not directly related.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; In my testing I was never able to create an executor for<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; JBoss Web that didn't have dismal performance. Since<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TorqueBox needs to be able to easily control the maximum<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; number of http threads we've written a simple service that<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; reads a system property and sets the http connector's<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; protocol handler's maxThreads. This works great and doesn't<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; incur the performance hit of using a separate executor. If<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; there's interest, we could submit a patch upstream to accept<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; a max-threads attribute on the connector definitions.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Ben<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; On Oct 20, 2011, at 12:15 PM, Andrig Miller wrote:<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; One thing that I have found with playing around with the<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; various subsystems, is JBoss Web. JBoss Web doesn't<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; expose a thread pool configuration, just a single<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; attribute called max-connections. It also then has an<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "executor" attribute, which just takes a thread pool<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; name from the JBoss Threads configuration.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; So, this one is inconsistent with the other subsystems,<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; and I'm not sure if it should be changed to be<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; consistent or not, since the default doesn't use JBoss<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Threads. This would also complicate any "global" view in<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; the console.<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Andy<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; _______________________________________________<br>&gt; jboss-as7-dev mailing list<br>&gt; jboss-as7-dev@lists.jboss.org<br>&gt; https://lists.jboss.org/mailman/listinfo/jboss-as7-dev<br><br><br>-- <br>Brian Stansberry<br>Principal Software Engineer<br>JBoss by Red Hat<br>_______________________________________________<br>jboss-as7-dev mailing list<br>jboss-as7-dev@lists.jboss.org<br>https://lists.jboss.org/mailman/listinfo/jboss-as7-dev<br></blockquote><br></div></body></html>