2

У меня работает сервер Linux/Debian: postgresql, tomcat. Иногда я не могу получить доступ к серверу по SSH.

Когда я открываю ssh-соединение с моим сервером, я могу ввести свой идентификатор входа в систему (root) и пароль, но когда я ввожу свой пароль и нажимаю enter, ответа нет.

С помощью функции 'sysinfo' я обнаружил, что когда сервер сталкивается с этой ситуацией, происходит около 1600 процессов (это значение взято из sysinfo.procs), а средняя загрузка составляет почти 300 (в обычном случае средняя загрузка находится в диапазоне от 0 до 1)

Я пытаюсь перечислить ТОП 5 процесса по количеству созданных им потоков. Однако я не могу найти легкий способ. Есть какой-то способ, который я нашел.

  1. Записать значение NLWP в ps -efL , чтобы я мог знать, какой процесс ненормально создает слишком много потоков.
  2. Когда средняя нагрузка становится все больше и больше, скопируйте весь файл /procs/*/status в каталог журнала, и я узнаю, какой процесс имеет наибольшее значение «Потоки» позже.

Если есть другие предложения, пожалуйста, дайте мне знать. Это сводит меня с ума, потому что этот сервер Linux не должен выходить из строя

1 ответ1

4

Попробуй это:

$ ps axo nlwp,pid,cmd | sort -rn | head -10

ps ax  - see every process
    o  - format
         nlwp: number of lightweight processes (threads) in the process

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .