Merge pull request #5055 from annando/worker-spawning
Fix for the slow spawning of workers
This commit is contained in:
commit
0848cef605
12
src/App.php
12
src/App.php
|
@ -861,18 +861,6 @@ class App
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// If the last worker fork was less than 2 seconds before then don't fork another one.
|
|
||||||
// This should prevent the forking of masses of workers.
|
|
||||||
$cachekey = 'app:proc_run:started';
|
|
||||||
$result = Cache::get($cachekey);
|
|
||||||
|
|
||||||
if (!is_null($result) && ( time() - $result) < 2) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set the timestamp of the last proc_run
|
|
||||||
Cache::set($cachekey, time(), CACHE_MINUTE);
|
|
||||||
|
|
||||||
array_unshift($args, ((x($this->config, 'php_path')) && (strlen($this->config['php_path'])) ? $this->config['php_path'] : 'php'));
|
array_unshift($args, ((x($this->config, 'php_path')) && (strlen($this->config['php_path'])) ? $this->config['php_path'] : 'php'));
|
||||||
|
|
||||||
for ($x = 0; $x < count($args); $x ++) {
|
for ($x = 0; $x < count($args); $x ++) {
|
||||||
|
|
|
@ -999,6 +999,7 @@ class Worker
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @brief Spawns a new worker
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public static function spawnWorker()
|
public static function spawnWorker()
|
||||||
|
|
Loading…
Reference in a new issue