cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - New to the community? Learn how to post a question and get help from PTC and industry experts! X

When Thingworx is opened, Tomcat sometimes has a very large CPU occupation.

jhe1
1-Newbie

When Thingworx is opened, Tomcat sometimes has a very large CPU occupation.

When Thingworx runs in the background,CPU occupies a great deal,and there will be a lot of postgre.exe processes in the task manager.

1 REPLY 1
cmorfin
19-Tanzanite
(To:jhe1)

Hi

One thing would be  to understand what is using the CPU.

You mentionned when ThignWorx run the CPU is high and a lot of postgre.exe processes are running, what process is using the CPU: is it Tomcat or is it Postgres ?

If it is Tomcat, it probably would be useful to enable JMX and check the state of the threads in the Java Mission Control.

1) To enable JMX, you can start by adding the following parameter tot he Tomcat Java startup command

-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl.need.client.auth=false -Dcom.sun.management.jmxremote.ssl=false

2) Restart Tomcat

3) In Java Mission Control you should be able to create a new connection to the server on port 9999.

4) Access the Mbeans Server, go to threads and tick CPU Profiling

You can then observe for some time to see which thread is using the cpu and check what it is doing.

That should give you some clues on what operation is triggering this cpu usage.


More info on JMX: Monitoring and Management Using JMX Technology - Java SEMonitoring and Management Guide

More info on Java Mission Control (should be automatically install with a JDK I think): Java Mission Control


Hope this helps

Christophe


Top Tags