aboutsummaryrefslogtreecommitdiffstats
path: root/include/poller.php
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-05-03 21:50:48 -0700
committerfriendica <info@friendica.com>2012-05-03 21:50:48 -0700
commit421acee65b846947c24257f256c900d4881256da (patch)
tree51501745f8456cddb70a8a708480c41b6543fb7e /include/poller.php
parent15542a8690701b403ed7e7bf56d82d1511cfbd63 (diff)
downloadvolse-hubzilla-421acee65b846947c24257f256c900d4881256da.tar.gz
volse-hubzilla-421acee65b846947c24257f256c900d4881256da.tar.bz2
volse-hubzilla-421acee65b846947c24257f256c900d4881256da.zip
implement max load average before queuing/deferring delivery and poller processes
Diffstat (limited to 'include/poller.php')
-rw-r--r--include/poller.php13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/poller.php b/include/poller.php
index 0a0e66b86..f6553c846 100644
--- a/include/poller.php
+++ b/include/poller.php
@@ -30,6 +30,17 @@ function poller_run($argv, $argc){
load_config('config');
load_config('system');
+ $maxsysload = intval(get_config('system','maxloadavg'));
+ if($maxsysload < 1)
+ $maxsysload = 50;
+ if(function_exists('sys_getloadavg')) {
+ $load = sys_getloadavg();
+ if(intval($load[0]) > $maxsysload) {
+ logger('system: load ' . $load . ' too high. Poller deferred to next scheduled run.');
+ return;
+ }
+ }
+
$lockpath = get_config('system','lockpath');
if ($lockpath != '') {
$pidfile = new pidfile($lockpath, 'poller.lck');
@@ -39,6 +50,8 @@ function poller_run($argv, $argc){
}
}
+
+
$a->set_baseurl(get_config('system','url'));
load_hooks();