ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/checkrusage.ext
Revision: 1.5
Committed: Wed Nov 14 08:09:46 2007 UTC (16 years, 6 months ago) by root
Branch: MAIN
CVS Tags: rel-2_82, rel-2_81, rel-2_80, rel-2_6, rel-2_7, rel-2_4, rel-2_5, rel-2_72, rel-2_73, rel-2_71, rel-2_76, rel-2_77, rel-2_74, rel-2_75, rel-2_54, rel-2_55, rel-2_56, rel-2_79, rel-2_52, rel-2_53, rel-2_32, rel-2_90, rel-2_92, rel-2_93, rel-2_78, rel-2_61, rel-2_43, rel-2_42, rel-2_41
Changes since 1.4: +8 -14 lines
Log Message:
switch from Event to EV

File Contents

# Content
1 #! perl
2
3 # restart server when certain resource limits are exceeded
4
5 our $MAX_VMSIZE = $cf::CFG{checkrusage}{vmsize} || 1_000_000_000;
6
7 $^O eq "linux" or die "only linux supported right now.\n";
8
9 our $TIMER = cf::periodic 10, sub {
10 open my $fh, "</proc/self/stat"
11 or return;
12
13 sysread $fh, my $stat, 4096; # only a single line
14 my $vmsize = (split / /, $stat)[22];
15
16 cf::cleanup "memory usage growing high, server would run out of memory soon", 0
17 if $vmsize >= $MAX_VMSIZE;
18 };