Hello,
Thanks for your quick replies. I did a mistake for my JBoss level. I post all i have :
Jboss startup :
JBoss Bootstrap Environment JBOSS_HOME: /opt/jboss JAVA: /opt/java/bin/java JAVA_OPTS: -Dprogram.name=run.sh -Xms512m -Xmx512m -Xcompressedrefs -Xoptionsfile=/app/jvm.conf CLASSPATH: /opt/jboss/bin/run.jar:/opt/java/lib/tools.jar *****
01:00:58,734 INFO [Server] Starting JBoss (MX MicroKernel)... 01:00:58,915 INFO [Server] Release ID: JBoss [EAP] 4.3.0.GA_CP07 (build: SVNTag=JBPAPP_4_3_0_GA_CP07 date=200911251949) ….
01:01:04,258 INFO [ServerInfo] Java version: 1.6.0,IBM Corporation 01:01:04,258 INFO [ServerInfo] Java VM: IBM J9 VM 2.4,IBM Corporation 01:01:04,258 INFO [ServerInfo] OS-System: AIX 5.3,ppc64 …....
01:02:01,147 [main] INFO [AjpProtocol] Initializing Coyote AJP/1.3 on ajp-173.5.1.80-8009 …....
01:02:01,215 [main] INFO [StandardEngine] Starting Servlet Engine: JBossWeb/2.0.0.GA_CP
then file /app/jvm.conf
-Dcom.ibm.tools.attach.enable=no -Xlp4k -Xgcpolicy:subpool
then jacorb.properties (where thread pool is defined)
#########################
# #
# POA Configuration #
# #
#########################
# displays a GUI monitoring tool for servers
jacorb.poa.monitoring=off
# thread pool configuration for request processing
jacorb.poa.thread_pool_max=500
jacorb.poa.thread_pool_min=200
# if set, request processing threads in thePOA
# will run at this priority. If not set or invalid,
# MAX_PRIORITY will be used.
#jacorb.poa.thread_priority=
# Properties controlling the POA's request queue. If queue_wait is off,
# then if there are more than queue_max requests in the queue, the
# client gets TRANSIENT exceptions for any requests. If queue_wait is on,
# then the call blocks at the server side until no more than queue_min
# requests are left in the queue. The new request is then delivered as usual.
jacorb.poa.queue_wait=off
jacorb.poa.queue_max=100
jacorb.poa.queue_min=10
Then oracle datasource
<datasources>
<local-tx-datasource>
<jndi-name>MyDS</jndi-name>
<use-java-context>false</use-java-context>
<connection-url>jdbc:oracle:thin:@myHost:1521:DBname</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>myName</user-name>
<password>mypassword</password>
<min-pool-size>15</min-pool-size>
<max-pool-size>1000</max-pool-size>
<new-connection-sql>ALTER SESSION SET CONSTRAINTS = DEFERRED</new-connection-sql>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
<prefill>true</prefill>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
Normally, i expect 200 (corba thread pool) + 15 (datasource) + Jboss thread pool = around 300 threads.
I followed the activethreadcount and the JVM start at
276 at 01H00 up to 7:30
then 670 from 07:30 to 07:40
then 1078 to 1500 from 07:40 to 08:00
This number doesn't go down. In some JVM, it increases. I don't know why i get them as i don't have too much activity on it. I took a thread dump and i saw no activity with 1000 requestProcessor doing nothing. I can post the thread as an attached file but i don't know how.
regards.