issue 3
(Probleme de charge) reported by saiama...@msn.com
- Bonjour,
suite au développement d'un système d'envoi de mail MT, en utilisant
MTdaemon, je me retrouve avec un probleme de charge serveur lorsque la
liste d'envoi est trop élevée. Le fait est que le nombre de processus fils
dépasse le nombre de threads maximum imposé...ce qui n'est pas normal.
Avez vous une solution???
Ci dessous le code :
public function getNext($slot)
{
if($this->count+1 <= $this->total){
$next = array_pop($this->list);
//usleep(SLEEP_SENT);
$this->count++;
return $next;
}
if($this->getThreads()<=1){
$this->sendReport();
die();
}
return null;
}
public function run($next, $slot)
{
//MTLog::getInstance()->info("Je commence : $next");
if(preg_match('/^([.0-9a-z_-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,4})$/i',$next)){
try{
$t = $this->count%count($this->tabServers);
$transport = new Zend_Mail_Transport_Smtp($this->tabServers[$t]);
$mail=clone $this->message;
$mail->setBodyText(str_replace("{email}",$next,$this->text));
$mail->setBodyHtml(str_replace("{email}",$next,$this->html));
$mail->addTo($next);
$mail->send($transport);
MTLog::getInstance()->info( ( $this->count ) . " / ".$this->total." -
" . " - " . $next ." - ".$this->tabServers[$t]) ;
}catch(Exception $e){
MTLog::getInstance()->error($e->getMessage());
}
}
}
PLEASE HELP !!!
Bonjour,
suite au développement d'un système d'envoi de mail MT, en utilisant
MTdaemon, je me retrouve avec un probleme de charge serveur lorsque la
liste d'envoi est trop élevée. Le fait est que le nombre de processus fils
dépasse le nombre de threads maximum imposé...ce qui n'est pas normal.
Avez vous une solution???
Ci dessous le code :
public function getNext($slot)
{
if($this->count+1 <= $this->total){
$next = array_pop($this->list);
//usleep(SLEEP_SENT);
$this->count++;
return $next;
}
if($this->getThreads()<=1){
$this->sendReport();
die();
}
return null;
}
public function run($next, $slot)
{
//MTLog::getInstance()->info("Je commence : $next");
if(preg_match('/^([.0-9a-z_-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,4})$/i',$next)){
try{
$t = $this->count%count($this->tabServers);
$transport = new Zend_Mail_Transport_Smtp($this->tabServers[$t]);
$mail=clone $this->message;
$mail->setBodyText(str_replace("{email}",$next,$this->text));
$mail->setBodyHtml(str_replace("{email}",$next,$this->html));
$mail->addTo($next);
$mail->send($transport);
MTLog::getInstance()->info( ( $this->count ) . " / ".$this->total." -
" . " - " . $next ." - ".$this->tabServers[$t]) ;
}catch(Exception $e){
MTLog::getInstance()->error($e->getMessage());
}
}
}
PLEASE HELP !!!
Apr 08, 2009
issue 2
(mail queue multithread) reported by saiaman01
- Hi,
i'm trying to implement a mail queue system, very easy, just in order to
send mails using X SMTP servers.
The fact is that i'm trying to understand your PHPmultithread daemon while
testing with examples, but it's still very ambiguous for me.
Do you plan writting a documentation?
Thank you
Hi,
i'm trying to implement a mail queue system, very easy, just in order to
send mails using X SMTP servers.
The fact is that i'm trying to understand your PHPmultithread daemon while
testing with examples, but it's still very ambiguous for me.
Do you plan writting a documentation?
Thank you