У меня есть сценарий bash, который запускает набор сценариев php. Когда он запускается, это занимает час и загружает процессор на 95-99%. Это вызывает проблемы со стеком ламп (в основном процесс apache), и наш веб-сайт на том же сервере начинает выдавать тайм-аут или 500 ошибок.
Как я могу:
Я не уверен, какое решение лучше.
В дополнении к nice
, глядя на ограничение времени процессора, используя ulimit -t
(при условии, что вы находитесь на платформе * nix)
Выполните свои команды через nice
.
отлично запускает утилиту с измененным приоритетом планирования. Если задано приращение, оно используется; в противном случае предполагается приращение 10. Суперпользователь может запускать утилиты с приоритетом выше обычного, используя отрицательное приращение. Приоритет можно настроить в диапазоне от -20 (самый высокий) до 20 (самый низкий).
Available options: -n increment A positive or negative decimal integer used to modify the system scheduling priority of utility.
Как предлагали другие, nice
это то, что вы хотите. Ограничение до 25% ЦП бессмысленно. Это без нужды увеличит количество времени, на которое снизится производительность системы.
Допустим, у вас четыре машины, и вам нужно выполнить несколько поручений. Что имеет больше смысла: использовать одну машину для выполнения поручений или использовать всю неиспользованную машину для выполнения поручений? Первый оставляет 4 машины для важных задач. Последний оставляет только 3. И в большинстве реальных случаев первый также быстрее выполнит низкоприоритетную работу.