how does has text value for port attribute of server element in server.xml works? e.g.
Hi, I see one jenkins installation on one of the servers in my organization.This jenkins is running on tomcat-7.0.24. When I had a look at server.xmlI see following: .. when I looked at catalina.properties I couldn't see jenPort.From where does tomcat is taking the value of jenPort?? catalina.properties contains this.. tomcat.util.scan.DefaultJarScanner.jarsToSkip=\bootstrap.jar,commons-daemon.jar,tomcat-juli.jar,\annotations-api.jar,el-api.jar,jsp-api.jar,servlet-api.jar,\catalina.jar,catalina-ant.jar,catalina-ha.jar,catalina-tribes.jar,\jasper.jar,jasper-el.jar,ecj-*.jar,\tomcat-api.jar,tomcat-util.jar,tomcat-coyote.jar,tomcat-dbcp.jar,\tomcat-jni.jar,tomcat-spdy.jar,\tomcat-i18n-en.jar,tomcat-i18n-es.jar,tomcat-i18n-fr.jar,tomcat-i18n-ja.jar,\tomcat-juli-adapters.jar,catalina-jmx-remote.jar,catalina-ws.jar,\tomcat-jdbc.jar,\tools.jar,\commons-beanutils*.jar,commons-codec*.jar,commons-collections*.jar,\commons-dbcp*.jar,commons-digester*.jar,commons-fileupload*.jar,\commons-httpclient*.jar,commons-io*.jar,commons-lang*.jar,commons-logging*.jar,\commons-math*.jar,commons-pool*.jar,\jstl.jar,\geronimo-spec-jaxrpc*.jar,wsdl4j*.jar,\ant.jar,ant-junit*.jar,aspectj*.jar,jmx.jar,h2*.jar,hibernate*.jar,httpclient*.jar,\jmx-tools.jar,jta*.jar,log4j*.jar,mail*.jar,slf4j*.jar,\xercesImpl.jar,xmlParserAPIs.jar,xml-apis.jar,\junit.jar,junit-*.jar,ant-launcher.jartomcat.util.buf.StringCache.byte.enabled=true WHere the hell this jenPort is coming from ? I'm confused.. And jenkins site doesn't give any documentation related to this... Thanks,Akshay
Re: Tomcat 7 not honoring maxThreads configuration in catalina.properties and activeCount not going beyond 200
On Friday, January 24, 2014 7:04 PM, Konstantin Kolinko knst.koli...@gmail.com wrote: 2014/1/24 akshay hiremath akshay...@yahoo.com: Through some trials found that its not enough to increase the Executors thread count(maxThreads for Executor element) but also need to increase the Connectors thread count(maxThreads for Connector element). This behavior is not actually clearly captured in tomcat documentation says 1. The rules: http://tomcat.apache.org/lists.html#tomcat-users - 6. do not top-post, 7. do not send attachments 2. Are you sure that you are actually using an Executor? In your original port there is no guarantee that the executor attribute of your Connector matches the name of an Executor that you declared. If the Executor does not exist, the attribute will be ignored. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org 1. The rules: http://tomcat.apache.org/lists.html#tomcat-users - 6. do not top-post, 7. do not send attachments Sorry about Top posting. i didn't know about top post issue. Now I'm taking care of this. In your original port there is no guarantee that the executor attribute of your Connector matches the name of an Executor that you declared. If the Executor does not exist, the attribute will be ignored. I'm using the Executor in the connector. In case if you have missed my original post portions because of my wrong top posting. server.xml content: Executor name=tomcatThreadPool namePrefix=${server.service-Catalina.executor-tomcatThreadPool.namePrefix} maxThreads=${server.service-Catalina.executor-tomcatThreadPool.maxThreads} minSpareThreads=${server.service-Catalina.executor-tomcatThreadPool.minSpareThreads}/ Connector executor=${server.service-Catalina.connector.http1.1.executor} port=${http.port} protocol=${server.service-Catalina.connector.http1.1.protocol} connectionTimeout=${server.service-Catalina.connector.http1.1.connectionTimeout} redirectPort=${https.port} acceptCount=${server.service-Catalina.connector.http1.1.acceptCount} maxKeepAliveRequests=${server.service-Catalina.connector.http1.1.maxKeepAliveRequests}/ catalina.properties: server.service-Catalina.connector.http1.1.executor=tomcatThreadPool --Akshay
Re: Tomcat 7 not honoring maxThreads configuration in catalina.properties and activeCount not going beyond 200
Through some trials found that its not enough to increase the Executors thread count(maxThreads for Executor element) but also need to increase the Connectors thread count(maxThreads for Connector element). This behavior is not actually clearly captured in tomcat documentation says A reference to the name in an Executor element. If this attribute is set, and the named executor exists, the connector will use the executor, and all the other thread attributes will be ignored. Note that if a shared executor is not specified for a connector then the connector will use a private, internal executor to provide the thread pool. all the other thread attributes will be ignored makes impression that its enough to increase the Executor thread count. As executor is a shared thread pool and connector is using that but what I seen is Referencing the Executor in Connector element and setting maxThreads for Executor is not enough. If we do that tomcat creates no. of threads as per maxThread configuration of Executor but not all threads are actually used for request processing. Even if we put more load the activeCount will never go above 200 that is default maxThreads value of Connector. To get threads more than 200 we have to additionally set the maxThread attribute for Connectors element as well. (irrespective of Executor reference) When I explicitly set maxThreads for Connectors activeCount actually went UP to the maxThreads limit. Now I'm able to reach activeCounts beyond 250 see attachment. On Thursday, January 23, 2014 8:45 PM, Christopher Schultz ch...@christopherschultz.net wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 akshay, On 1/23/14, 9:07 AM, akshay hiremath wrote: We have this HP load runner running a load of requests on this system. We don't see request rejected by Tomcat but if I monitor the activeCount attribute of Mbean Catalina:type=Executor,name=tomcatThreadPool over the period of test why the activeCount is not going above 200. if I continuously track activeCount and currentThreadsBusy of MBean Catalina:type=ThreadPool,name=http-bio-8080 I see the graph reahes 200 and flat lines there. Please find monitored graph attached during one of the tests. See time frm start of graph to the 13:30 when test ended. ignore the in between part and rest graph that is of another ongoing test. Attachments are stripped from the list. Find another way to express your thoughts. Is it possible that you are simply not generating enough load? If Tomcat is responding to all of your requests (e.g. none of them are failing to connect, failing to respond, or responding very slowly -- as if queued) than it sounds like your Tomcat instance is handling all the load you are throwing at it. - -chris On Thursday, January 23, 2014 7:06 PM, Mark Thomas ma...@apache.org wrote: On 23/01/2014 13:30, akshay hiremath wrote: Why tomcat is not able to have more than 200 active Threads (parallel threads) processng my requests? It can. The issue is that the combination of the requests you are making (which you fail to describe), your load testing framework (which you fail to describe) and the scheduling in the CPUs of your hardware (which you also fail to describe) mean that the chances of there actually being 300 concurrent requests for Tomcat to process is pretty much zero. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org mailto:users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org mailto:users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org -BEGIN PGP SIGNATURE- Version: GnuPG v1 Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBCAAGBQJS4TH3AAoJEBzwKT+lPKRY1vQP/01g9bL731iYBYV9MQtDhLMJ LeBXfV2996qnpX2VftnltPGXq2V9/l93tjRMiDxrcaGIrdzebkzv+PegRdhIxto1 JeIJh9xBFKd+J/aWTmzDYLzE9/eGoGRW+R+G3MuqqBs3KSXaNbEDHtdB/5zzQ0Bj Ht7iWTvPyEkp3JeKBo/FM/nZG2cnBNwC+kNWkdzlOqPIWUVOPmbqQky2qkM86s+d 65trfkDDSkez1ws2bZJ42TbW3IR9Qv1H/YlMzMmr2BJpGUnTAIKwu0l+bD+kH8pT QQo7anuTpuygwsE30zO3FcgkwzTuPcccHTh0G1XvzCYFJJ+tnAa4h+0Z6GAu7q6E 5ltIyHZjp4KJoLulNFQfqlItjabi6XIUwwQk/Ob4pRpgfsORIwapusY1vFThwhJv m3M0fVgWmxCHc41ed+mMhUPewXqqv0iaXKj4oxuW9GSPfdlQ7wCECwcIR11K39aU Ff9dbEEFuT7yvKgQy589dsSycgydCONTS+4b/25stwR1VgxA2MlvhcF8LBNN3o8L kPefjrOQVGLAuwrSgBiAVsD9dNDis5UhQ0sdGUKoLSuI3HSy1KMANVUWjYmig4bP fUmhGlKiM9CknxUpDK/rdAGWUOQU06rXeWVitQ/2p42UQibtAhXuM+1ymw/v4zou SBh0nxrR6K0AVV8KhomP =TIpT -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Tomcat 7 not honoring maxThreads configuration in catalina.properties and activeCount not going beyond 200
I've a tomcat 7 instance with following configuration in catalina.properties for threads server.service-Catalina.executor-tomcatThreadPool.maxThreads=300 server.service-Catalina.executor-tomcatThreadPool.minSpareThreads=300 server.service-Catalina.connector.http1.1.executor=tomcatThreadPool server.service-Catalina.connector.http1.1.protocol=HTTP/1.1 server.service-Catalina.connector.http1.1.connectionTimeout=2 server.service-Catalina.connector.http1.1.acceptCount=300 server.service-Catalina.connector.http1.1.maxKeepAliveRequests=15 server.xml configuration Service name=Catalina Executor name=tomcatThreadPool namePrefix=${server.service-Catalina.executor-tomcatThreadPool.namePrefix} maxThreads=${server.service-Catalina.executor-tomcatThreadPool.maxThreads} minSpareThreads=${server.service-Catalina.executor-tomcatThreadPool.minSpareThreads}/ Connector executor=${server.service-Catalina.connector.http1.1.executor} port=${http.port} protocol=${server.service-Catalina.connector.http1.1.protocol} connectionTimeout=${server.service-Catalina.connector.http1.1.connectionTimeout} redirectPort=${https.port} acceptCount=${server.service-Catalina.connector.http1.1.acceptCount} maxKeepAliveRequests=${server.service-Catalina.connector.http1.1.maxKeepAliveRequests}/ I want 300 threads to serve the requests. With above configuration tomcat starts 300 threads and I can see through JConsole 300 worker threads are running. but when I hit with 300 concurrent requests load the activeCount goes just till 200. Why tomcat is not able to have more than 200 active Threads (parallel threads) processng my requests? Thanks, Akshay
Re: Tomcat 7 not honoring maxThreads configuration in catalina.properties and activeCount not going beyond 200
We have this HP load runner running a load of requests on this system. We don't see request rejected by Tomcat but if I monitor the activeCount attribute of Mbean Catalina:type=Executor,name=tomcatThreadPool over the period of test why the activeCount is not going above 200. if I continuously track activeCount and currentThreadsBusy of MBean Catalina:type=ThreadPool,name=http-bio-8080 I see the graph reahes 200 and flat lines there. Please find monitored graph attached during one of the tests. See time frm start of graph to the 13:30 when test ended. ignore the in between part and rest graph that is of another ongoing test. On Thursday, January 23, 2014 7:06 PM, Mark Thomas ma...@apache.org wrote: On 23/01/2014 13:30, akshay hiremath wrote: Why tomcat is not able to have more than 200 active Threads (parallel threads) processng my requests? It can. The issue is that the combination of the requests you are making (which you fail to describe), your load testing framework (which you fail to describe) and the scheduling in the CPUs of your hardware (which you also fail to describe) mean that the chances of there actually being 300 concurrent requests for Tomcat to process is pretty much zero. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Regarding thread pool utilization monitoring using ThreadPool MBeans
Hi, I'm using Tomcat 7.0.20. I'm writing java code for automated Thread utilization monitoring and alert system. I'm struggling to find the Mbean descriptor for Mbeans under Catalina.ThreadPool. Can anyone provide any reference? The big question I've is what the currentThreadCount indicates if these are no. of active threads then what is currentThreadsBusy, also minSpareThreads, maxSpareThreads, acceptorThreadCount. I tried to find the descriptors in Tomcat Source Code but didn't get any. Any help on this is really appreciated. Regards, Akshay
Re: Regarding Catalina/Tomcat MBeans attributes/operations description
Hi Konstantin, Thanks for this, hope it will help, I'm using Tomcat version 7.0.20. Regards, Akshay From: Konstantin Kolinko knst.koli...@gmail.com To: Tomcat Users List users@tomcat.apache.org Sent: Wednesday, October 5, 2011 6:30 PM Subject: Re: Regarding Catalina/Tomcat MBeans attributes/operations description 2011/10/5 akshay hiremath akshay...@yahoo.com: Hi, Can anyone tell me where can I get the Catalina MBeans field description. I mean what exactly particular attribute of particular MBean is providing. e.g. In ThreadPool There are two attributes in Mbean http-8080 1. currentThreadCount 2. currentThreadsBusy I'm not able to understand what each of these is doing. Can I get any documentation related to this? I checked the Tomcat documentation but there is not description of MBeans. If it is not in the docs, then read the source code. MBeans are defined by mbeans-descriptors.xml files, and are implemented by properties in Java objects represented by those beans. You are not saying what Tomcat version you are using. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Regarding Catalina/Tomcat MBeans attributes/operations description
Hi, Can anyone tell me where can I get the Catalina MBeans field description. I mean what exactly particular attribute of particular MBean is providing. e.g. In ThreadPool There are two attributes in Mbean http-8080 1. currentThreadCount 2. currentThreadsBusy I'm not able to understand what each of these is doing. Can I get any documentation related to this? I checked the Tomcat documentation but there is not description of MBeans. Thanks. Akshay