Пул потоков в очереди, высокая загрузка ЦПJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Пул потоков в очереди, высокая загрузка ЦП

Сообщение Anonymous »

У меня на сервере (AlmaLinux) есть Java-процесс, потребляющий более 400% ресурсов ЦП, чего быть не должно.
В ходе анализа я обнаружил несколько QTP (пулов потоков в очереди), потребляющих ЦП: p>
Изображение

После анализа дампа потока и сравнения NID QTP, потребляющие ЦП, находятся в состояниях WAITING и TIMED_WAITING, например:
Это PID(NID) 3221507 который один потребляет 21%:

Код: Выделить всё

"qtp737077247-58814" #58814 prio=5 os_prio=0 tid=0x00007f60e0002000 nid=0x312803 runnable [0x00007f61125f0000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for   (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:546)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:47)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:609)
at java.lang.Thread.run(Thread.java:750)
А этот например PID(NID) 3183314 который жрет 23%:

Код: Выделить всё

"qtp737077247-58803" #58803 prio=5 os_prio=0 tid=0x00007f60fc001800 nid=0x3092d2 waiting on condition [0x00007f61b1606000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for   (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
at org.eclipse.jetty.util.BlockingArrayQueue.offer(BlockingArrayQueue.java:302)
at org.eclipse.jetty.util.thread.QueuedThreadPool.execute(QueuedThreadPool.java:374)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:207)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:750)
Теперь я понятия не имею, почему WAIT ест так много процессора. Я видел этот вопрос, но, похоже, мало что помогло.
Интересно то, что у меня тот же процесс работает на других машинах (Windows), которые никогда не доходят до этой точки процессора. использования, сохраняя его нормальные ожидаемые значения.
Есть идеи, где я могу направить свой анализ?

Подробнее здесь: https://stackoverflow.com/questions/791 ... -cpu-usage
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Пул потоков в очереди, высокая загрузка ЦП
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Пул потоков в очереди, высокая загрузка ЦП
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Пул потоков в очереди, высокая загрузка ЦП
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Почему пул потоков Java ожидает заполнения очереди перед созданием новых потоков вместо того, чтобы делать это при опред
    Anonymous » » в форуме JAVA
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Высокая загрузка ЦП на Raspberry PI при чтении сетевого потока с помощью .NET
    Гость » » в форуме Linux
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость

Вернуться в «JAVA»