Я использую centos, cpanel/whm, и у меня установлен cpulimit.
У меня проблема в том, что один из моих пользователей использует слишком много ресурсов процессора. Более 100% последовательно, и это замедляет мой сервер.
Еще одна проблема - они друзья, а не злые, поэтому я не хочу их приостанавливать.
Кроме того, проблема заключается в том, что я не могу ограничить это процессом, потому что этот процесс меняется каждую секунду. Каждый раз это другой процесс.
Я попробовал следующее, но это не работает.
cpulimit -l 10 -e /home/[username]/public_html/theirwebsite.org/index.php
Я только что вернулся,
No process found
No process found
No process found
No process found
No process found
No process found
так далее
Есть две вещи, которые используют это экстремальное использование процессора.
Во-первых, этот файл в этом месте, index.php
.
Другое - это [php], что бы это ни значило в WHM. Но главным является проблема index.php
.
Если бы я мог ограничить этот файл index.php
в этом месте, это могло бы помочь смягчить эту проблему.
Кстати, я попробовал флаг -P
но он недоступен в качестве опции в отличие от документации.
cpulimit -l 10 -P /home/[username]/public_html/theirwebsite.org/index.php
возвращается
cpulimit: invalid option -- 'P'
Usage: cpulimit [OPTIONS...] TARGET
OPTIONS
-l, --limit=N percentage of cpu allowed from 0 to 1600 (required)
-v, --verbose show control statistics
-z, --lazy exit if there is no target process, or if it dies
-i, --include-children limit also the children processes
-h, --help display this help and exit
TARGET must be exactly one of these:
-p, --pid=N pid of the process (implies -z)
-e, --exe=FILE name of the executable program file or path name
COMMAND [ARGS] run this command and limit it (implies -z)
Похоже, я должен сделать это с флагом -e
.
В идеале, однако, я хотел бы ограничить всю учетную запись пользователя.
И да, я знаю о cloudlinux, но сейчас не могу этого сделать. Пока я не могу это сделать, мне нужна помощь, чтобы сделать это вручную с чем-то, что не требует перезагрузки сервера.