24,860
社区成员




while :
do
sleep 5;
ps aux | grep -v PID | sort -rn -k +4 | head -1 | awk '{print $2, $4}' | xargs /home/applications//kill.pl;
done
kill.pl
#! /usr/bin/perl
use Log::Handler;
my $pid = $ARGV[0];
my $mem = $ARGV[1];
my $log = Log::Handler->create_logger( "kill" );
$log->add(
file => {
filename => "/home/applications/record_upload_workspace/log/kill.log",
maxlevel => "debug",
minlevel => "emerg",
timeformat => "%Y-%m-%d %H:%M:%S",
message_layout => "%T [%p] %L: %m",
}
);
$log->info("MaxUseMem: [Pid:$pid, UseMem:$mem]");
if ( $mem >= 20.0 )
{
$log->debug("Kill -9 $pid");
system("kill -9 $pid");
}
Linux下crontab貌似不能定时到“每隔多少秒执行一次”?