--- lib/MT/App.pm.orig	2005-06-29 16:19:09.000000000 +0100
+++ lib/MT/App.pm	2005-06-29 16:40:44.000000000 +0100
@@ -9,2 +9,3 @@
 use File::Spec;
+use Sys::Load ();
 
@@ -220,2 +221,7 @@
         }
+        my $sys_load = (Sys::Load::getload())[0];
+        if ($sys_load > $app->{cfg}->MaxSystemLoad) {
+            die $app->translate('Maximum system load exceeded. Please try later.') .
+                "\n";
+        }
 
--- lib/MT/ConfigMgr.pm.orig	2005-06-29 16:32:27.000000000 +0100
+++ lib/MT/ConfigMgr.pm	2005-06-29 16:32:58.000000000 +0100
@@ -101,2 +101,3 @@
     $mgr->define('ThrottleSeconds', Default => 20);
+    $mgr->define('MaxSystemLoad', Default => 4.0);
 }
--- mt.cfg.orig	2005-06-29 16:24:45.000000000 +0100
+++ mt.cfg	2005-06-29 16:35:20.000000000 +0100
@@ -462 +462,5 @@
 ThrottleSeconds 60
+
+# paulm, 2005-06-29
+# Maximum system load permitted beyond which MT won't process a request.
+MaxSystemLoad 4.0
