Тема: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же
Часто бывает, что на сервере что-то зависает или увеличивается количество посетителей сайта, и нагрузка (load average) возрастает. Всё начинает сначало дико тормозить и работать частично, а потом сервер может и вовсе зависнуть.
Не во всех Дата-Центрах можно оперативно перезагрузить зависший сервер. Поэтому полезно проверять его нагрузку. Для Unix-систем пишем и размещаем на сервере такой скрипт на Perl:
#!/usr/bin/perl
$res=`uptime`;
@res_array=split(/ /,$res);
$res_array[$#res_array]=~s/[\r\n]//g;
print "Content-type: text/plain\n\n";
print $res_array[$#res_array];
Затем вы можете добавить задачу с типом проверки "HTTP(S) GET", в которой в качестве URL указываете адрес, где вы разместили скрипт, и в настройках задачи указываете: искать число в диапазоне от 0 до 5 (тут значение зависит от конкретного сервера). Если выдаваемое скриптом число выйдет из указанного диапазона, вам придёт уведомление от Ping-Admin.Ru, и вы сможете попытаться оперативно снизить нагрузку, например, убив зависшие процессы.
Все примеры скриптов на Perl и PHP для мониторинга внутренних ресурсов сервера.