Очень вероятно убийца OOM . Если вы действительно действительно действительно хотите остаться вне его досягаемости, как root , попросите ваш процесс записать -17
в /proc/self/oom_adj
. Осторожно: Ядро обычно знает лучше. Уклонение от убийцы OOM может нанести вред той же СУБД, к которой вы пытаетесь обратиться. Какой это порочный круг:)
Возможно, вы (вместо этого) хотите разбивать запросы на основе того, что вы прочитали из /proc/loadavg
и /proc/meminfo
. Если вы увеличиваете нагрузку или меняетесь в геометрической прогрессии, вам необходимо отступить, особенно в фоновом режиме:)
Кроме того, монитор IOWAIT во время работы. Это может быть усреднено от /proc/stat
по сравнению со временем загрузки системы. Обратите внимание, когда вы начинаете и прогрессируете.
К сожалению, серийный убийца, известный как убийца OOM, не поддерживает количество тела, доступное за пределами анализа сообщений ядра.
Или ваша задача cron продолжает увеличивать количество выделенной кучи на ulimit
. В любом случае, перед выполнением какой-либо работы ваша работа должна в случае необходимости отступать или предотвращать ее упадок (как отмечено выше).
Как примечание, вам, вероятно, не следует делать то, что вы делаете на виртуальном хостинге. Если он такой большой, самое время получить VPS (по крайней мере), где у вас есть некоторый контроль над тем, что процесс должен делать и что.