Results 1 to 2 of 2

Thread: Unable to configure tomcat executor?

Threaded View

  1. #1
    Join Date
    Apr 2010
    Posts
    17

    Default Unable to configure tomcat executor?

    I am having bad performance with an application that uses a custom tomcat executor when run in SpringSource DM Server 2.0.2.RELEASE vs standalone tomcat 6.0.18. I am suspicious that the executor/connector config is not working.

    Below is my tomcat-server.xml file using with the 2.0.2.RELEASE.

    As you can see, I have configured a custom Executor named "streamReceiverThreadPool" with 300 threads and configure the port 80 Connector to use it as well as Http11NioProtocol.

    However, when running the server and inspecting it with JMX, I see:
    - There are no JMX MBean nodes for /Catalina/Conector or /Catalina/Executor as there are with a standalone tomcat install.
    - There is a /Catalina/ThreadPool/http-80 MBean with modelerType="org.apache.tomcat.util.net.NioEndpoin t" (seems like that got picked up correctly) but maxThreads="200".

    Code:
    <?xml version='1.0' encoding='utf-8'?>
      <Server port="8005" shutdown="SHUTDOWN">
    
        <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
        <Listener className="org.apache.catalina.core.JasperListener" />
        <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
        <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
        <Listener className="com.springsource.server.web.tomcat.ServerLifecycleLoggingListener"/>
    
        <Service name="Catalina">
    
          <Executor name="streamReceiverThreadPool" namePrefix="catalina-exec-"
              maxThreads="300" minSpareThreads="30"/>
    
          <Connector executor="streamReceiverThreadPool"
              port="80" protocol="org.apache.coyote.http11.Http11NioProtocol"
              enableLookups="false"
              connectionTimeout="40000"
              maxKeepAliveRequests="1"
              keepAliveTimeout="0"
              connectionLinger="-1"
              acceptCount="10000"
              acceptorThreadCount="4"
              processCache="300"
              socket.processorCache="5000"
              socket.tcpNoDelay="true"
              socket.soLingerOn="false" />
    
          <Engine name="Catalina" defaultHost="localhost">
    
          <Realm className="org.apache.catalina.realm.JAASRealm" appName="dm-kernel"
              userClassNames="com.springsource.kernel.authentication.User"
              roleClassNames="com.springsource.kernel.authentication.Role"/>
    
          <Host name="localhost" appBase="webapps"
              unpackWARs="true" autoDeploy="true"
              xmlValidation="false" xmlNamespaceAware="false">
    
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="serviceability/logs/access"
                prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
            <Valve className="com.springsource.server.web.tomcat.ApplicationNameTrackingValve"/>
    
          </Host>
        </Engine>
      </Service>
    </Server>
    Last edited by blahb; Jun 3rd, 2010 at 06:32 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •