Процесс AutoKill на Centos 6.5 с использованием WHM

У меня есть файлы 3gp, которые загружаются на мой сервер через php. Оттуда FFmpeg преобразует файлы 3gp в файлы mp3. Иногда файлы 3gp повреждены, и FFmpeg будет зависать на этом файле и максимально использовать это ядро, пока процесс не будет убит вручную через WHm с помощью диспетчера процессов.

Были случаи, когда несколько таких файлов приводили к полной остановке сервера, потому что ffmpeg использовал все ядра.

Есть ли плагин или скрипт или что-то, что я могу установить на сервер, который может автоматически убивать любой процесс, который превышает определенное время и 90% процессора?

Centos 6.5 Использование WHM У меня есть root-доступ.


person Will R.    schedule 30.01.2014    source источник


Ответы (1)


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

  1. Сначала попробуйте улучшить процесс FFmpeg; это вообще решает массу проблем;
  2. Если вы хотите определенно убить процесс, для этого есть несколько инструментов. Один из них мониторинг

Вам просто нужно программно сгенерировать файлы pid для вашего процесса ffmpeg и конфигурации нескольких monit.

Существует также еще один инструмент под названием cpulimit, который можно использовать для ограничения использования ЦП для каждого процесса. Вот ссылка на Ubuntu, но я уверен, что в CentOS она тоже есть:

http://ubuntuforums.org/showthread.php?t=992706

person Arya    schedule 30.01.2014