Your SlideShare is downloading. ×
0
Jconsole JMX data capture      of a Camel server This document contains screenshots taken on a production server. Its sole...
Memory
Threads
Camel threads•   Some 1000 of them, most of them waiting for some lock, or parked.•   424 <route> tags in a 4200 lines con...
Camel threads (continued)Name: Camel (myCamel) thread #463 - ftp://retalixcon@SRV0153/export    State: WAITING on java.uti...
Quartz threads•   10 of them, mostly seem to be waiting (which should be normal).Name: DefaultQuartzScheduler_Worker-1    ...
Classes
Summary
JMX Mbeans• Many thread pools (some 100) of  FileConsumer and FtpConsumer type alike.• Many ProducerCache
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Jmx capture
Upcoming SlideShare
Loading in...5
×

Jmx capture

564

Published on

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
564
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Jmx capture"

  1. 1. Jconsole JMX data capture of a Camel server This document contains screenshots taken on a production server. Its solely purpose is to share the collected data withpeople on the Camel list and help diagnose some performance issues.
  2. 2. Memory
  3. 3. Threads
  4. 4. Camel threads• Some 1000 of them, most of them waiting for some lock, or parked.• 424 <route> tags in a 4200 lines config file, there are some 626 routes available in the Mbeans :-? (several routes are FTP from one URI to many URI)Name: Camel (myCamel) thread #10 - ftp://retalixcon@SRV0043/export State: WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@16c83b9 Total blocked: 147 Total waited: 2 Stack trace: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) java.util.concurrent.DelayQueue.take(DelayQueue.java:160) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) java.lang.Thread.run(Thread.java:662)Name: Camel (myCamel) thread #192 - ftp://retalixcon@SRV0126/export State: WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@e91163 Total blocked: 28 Total waited: 2 Stack trace: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) java.util.concurrent.DelayQueue.take(DelayQueue.java:160) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) java.lang.Thread.run(Thread.java:662)
  5. 5. Camel threads (continued)Name: Camel (myCamel) thread #463 - ftp://retalixcon@SRV0153/export State: WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1a1156f Total blocked: 426 Total waited: 2 Stack trace: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) java.util.concurrent.DelayQueue.take(DelayQueue.java:160) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) java.lang.Thread.run(Thread.java:662)Name: Camel (myCamel) thread #942 - ftp://retalixcon@SRV1004/export State: WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@195f6a7 Total blocked: 130 Total waited: 2 Stack trace: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) java.util.concurrent.DelayQueue.take(DelayQueue.java:160) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) java.lang.Thread.run(Thread.java:662)
  6. 6. Quartz threads• 10 of them, mostly seem to be waiting (which should be normal).Name: DefaultQuartzScheduler_Worker-1 State: TIMED_WAITING on org.quartz.simpl.SimpleThreadPool$WorkerThread@1efb21d Total blocked: 0 Total waited: 123.407 Stack trace: java.lang.Object.wait(Native Method) org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:543)Name: DefaultQuartzScheduler_Worker-5 State: TIMED_WAITING on org.quartz.simpl.SimpleThreadPool$WorkerThread@188145f Total blocked: 0 Total waited: 123.428 Stack trace: java.lang.Object.wait(Native Method) org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:543)
  7. 7. Classes
  8. 8. Summary
  9. 9. JMX Mbeans• Many thread pools (some 100) of FileConsumer and FtpConsumer type alike.• Many ProducerCache
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×