[PHP-users 26921] Re: mb_send_mail()の処理
Kenichi Nakano
star-light @ web4ad.com
2005年 9月 17日 (土) 23:40:01 JST
中野です。
私は実際に1.の方法で会員へメールを送信しております。
メールサーバによって速度が全く違いますのでPHPの処理には
問題はないがメールを受ける側(MTA)の問題と思います。
xmail(window環境) , postfix(Fedora Core) , qmail(Fedora Core)
3つのMTAを試しましたが全く速度が違いました。
(色々設定を変えて試してみました)
結果どのMTAとは言いませんが
現在8000人へのメールの配信(PHPの処理のみ(メールキューに入るまで))
は5〜6分です。キューから完全に配信し終えるまでは10分くらいでしょうか。
1時間くらい掛かるMTAもありました。(^^;
この時はタイムアウト値を
max_execution_time = 86400
って適当に時間を増やしていました。
全てのメール内容にニックネームやその他の差込をして配信をしています。
mb_send_mail() の処理の部分のみコメントアウトして
メールを送信しない場合とコメントアウトを外して実際に
送信する場合の時間を測定してみれば原因がphpなのかメール送信
なのかハッキリすると思います。
とりあえずメールサーバを変えてみてはどうでしょうか?
> mb_send_mail() の場合、あて先は複数指定できるとなっていますが、以下の2つのやり方では、どちらの方
> が良いのでしょうか?
>
> 1.----------------------------------------------------
> while($rec = mysql_fetch_array($result)){
> mb_send_mail($rec[0], $subject, $text, $header);
> }
> -------------------------------------------------------
> 2.----------------------------------------------------
> while($rec = mysql_fetch_array($result)){
> $to = $to.$rec[0].",";
> }
> $to = rtrim($to, ",");
> mb_send_mail($to, $subject, $text, $header);
> -------------------------------------------------------
PHP-users メーリングリストの案内