[Performance Tuning] - Large number of threads/connections marked "keep alive"
by Ben Hsu
Ben Hsu [http://community.jboss.org/people/benhsu_at_bluefly] created the discussion
"Large number of threads/connections marked "keep alive""
To view the discussion, visit: http://community.jboss.org/message/587341#587341
--------------------------------------------------------------
Hello
We're seeing an issue where the performance of our application would degrade over time, to the point where its unresponsive. Based on what I see, I think it might be related to how we're configuring keep-alive, and I'm wondering where I can find more information about configuring keep-alive in JBoss.
The symptoms:
- The application's performance would degrade over the day
- eventually we will get a message saying "all 200 threads are busy, please increase the maximum thread count"
- at this point, doing a thread dump (using "kill -3") shows many threads in the following state:
<blockquote>
"TP-Processor200" daemon prio=1 tid=0x0000002b31e372c0 nid=0x651a runnable [0x000000005408e000..0x000000005408ec30]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
- locked <0x0000002b082abec0> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:620)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:558)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:685)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
</blockquote>
- when I look at the "connection scoreboard" in the JBoss web console, I see 200 connections marked with a "K" for "keep alive", also these connections look like they've been around for a long time (around 7,000,000ms, which will be 2 hours), long after we've killed all the clientsd
Based on what I saw above and some googling, I'm thinking this might be related to how we're configuring keep alive. I haven't been able to go further than this, because I don't know much about JBoss configuration. Does anybody have any information about how keep alive is being configured in JBoss?
We are using JBoss version 4.0.5 GA
Thank you!
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/587341#587341]
Start a new discussion in Performance Tuning at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 2 months
[jBPM] - Can Human Task component work with JTA
by Patrick Yang
Patrick Yang [http://community.jboss.org/people/patrickyang] created the discussion
"Can Human Task component work with JTA"
To view the discussion, visit: http://community.jboss.org/message/621185#621185
--------------------------------------------------------------
Hi Krisv,
I am trying to control JBPM5 Process Engine / Human Task / Histroy Log / My own application in one atomic transaction using JTA.
Currently I already configured Process Engine / Histroy Log / My own application with JTA (BTM implemenation), but failed to include Human Task in.
It will always report "A JTA EntityManager cannot use getTransaction()" exception, I tracked the source code, it was because, below code always call getTransaction, and it was not allowed when we config Human Task persistence unit as JTA.
Can you give me some suggestion?
Thanks
private void doOperationInTransaction(final TransactedOperation operation) {
final EntityTransaction tx = em.getTransaction();
try {
if (!tx.isActive()) {
tx.begin();
}
operation.doOperation();
tx.commit();
} finally {
if (tx.isActive()) {
tx.rollback();
}
}
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/621185#621185]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 2 months