Allow setting number of workers

tags/ipasserelle-groupware-0.2.37-1 0.2.35_1_el6
Daniel Berteaud 8 years ago
parent 3367ad69ac
commit 78dd537c35
  1. 18
      root/etc/e-smith/templates/etc/sysconfig/sogo/Prefork

@ -1,12 +1,18 @@
{
use esmith::AccountsDB;
my $a = esmith::AccountsDB->open_ro || die "Couldn't open AccountsDB\n";
my $users = scalar($a->users());
my $fork = int($users/8);
$fork = 3 if ($fork < 3);
my $activeSync = $sogod{'ActiveSync'} || 'disabled';
$fork = $fork*2 if ($activeSync =~ m/^enabled|on|1|yes$/i);
use esmith::ConfigDB;
my $fork;
if ($sogod{Workers}){
$fork = $sogod{Workers};
}
else{
my $users_per_worker = (defined $sogod{UsersPerWorker}) ? $sogod{UsersPerWorker} : (($sogod{'ActiveSync'} || 'disabled') =~ m/^enabled|on|1|yes$/i) ? 4 : 7;
my $a = esmith::AccountsDB->open_ro || die "Couldn't open AccountsDB\n";
my $users = scalar($a->users());
$fork = int($users/$users_per_worker);
$fork = 3 if ($fork < 3);
}
$OUT .= "PREFORK=$fork";

Loading…
Cancel
Save