Процесс Java, съедая ЦП; Почему?

Если Вы хотите видеть все свои доступные переменные окружения, используйте следующую команду:

bash$ set

Помните чувствительность к регистру для имени хоста, Вам будут нужны $HOSTNAME и $USER

bash$ echo $USER
sparks
bash$ echo $HOSTNAME
servername
1
задан 4 January 2011 в 23:49
3 ответа

Если Вы останавливаете процесс solr, и процесс Java все еще работает, то существует другой процесс Java на Вашем сервере. Первый шаг должен зарегистрировать все процессы Java, которые работают. Хороший инструмент для этого на Unix ps инструмент. Попробуйте это:

$ ps auxwww | grep java

Тот вывод должен показать Вам, весь Java обрабатывает выполнение и команды, которые выполняются. Попробуйте это прежде и после остановки solr.

Второй вопрос, "какой из этих обрабатывает Java, съедает так много ЦП"? Вы, возможно, должны остановить гагатовый процесс в дополнение к процессу solr. Кроме того, Вы никогда не должны действительно должны быть перезапускать сервер Linux просто, потому что единственный процесс неправильно себя ведет. Можно также использовать kill управляйте для остановки процесса, если Вы теперь, это - идентификатор процесса, от которого можно добраться также top или ps.

В ближайшей перспективе это может быть хорошая идея установить своего рода "сторожевой" сценарий на Вашей машине для помощи с этими ситуациями. Например, monit может использоваться для автоматического перезапуска обслуживания или процесса, когда он использует определенное количество ресурсов ЦП.

В долгосрочной перспективе я вынужден сказать, что у Вас есть проблема производительности. Необходимо посмотреть на реконфигурирование solr и причал по крайней мере. Вы, возможно, также должны изучить настройку сборки "мусора" и возможно добавление большего количества аппаратных средств. Существует большая информация об этих темах онлайн, и я вынужден сказать, что этот процесс может быть несколько трудным.

Удачи!

Tom Purl

3
ответ дан 3 December 2019 в 18:06

Если ЦП становится истраченным, в то время как время отклика отбрасывает, то первое место, я посмотрел бы, является управлением "кучей" в Java - это, вероятно, делает много главных наборов - и самый быстрый способ решить проблему состоит в том, чтобы просто дать контейнеру больше памяти для выполнения в.

2
ответ дан 3 December 2019 в 18:06

Это не действительно правильное место, чтобы попросить программировать отладку вопроса. Если Solr является единственное JAVA-приложение, выполняющее Вас, должен определенно проверить, как часто Ваш индекс Lucene обновляет и сколько поисковых запросов Вы работаете в секунду, когда сервер запускается, перегружается.

-1
ответ дан 3 December 2019 в 18:06

Теги

Похожие вопросы