ようこそゲストさん

CPA-LABテクニカル

2008/04/23(水) 火が出るほど恥ずかしい

はてブ情報 はてブに登録 はてブ数 qdmailspok
QdmailをCakePHPで動かしてみて、あれっと思ったことが。。。。
なぜか、noticeエラー頻発。

おかしいなこれまで特にQdmailで開発していてでなかったのに。。。
ソースを確認すると、確かに、エラーでるような状況。。。。
ではこれまでは。。。。


と気づいた。

PHP5からPHP4にダウングレードした時に、php.iniの設定を間違えていたのだ。
error_reporting = E_ALL
とすべきとこを
error_reporting = E_ALL & ~E_NOTICE
としていた。。。。

初期化されていない変数使ったよ、とか、配列のインデックスがないよ、とか、いろんな警告がでていました。

急ぎ修正しましたが、まだあるかも知れません。

お恥ずかしい限りです。。。。。

へたにPHP4対応なんかするんじゃなかった。
ますますPHP4が嫌いになりました。
PHP5が好きです。

いや自分が悪いのですが。

名前:  非公開コメント   

  • TB-URL  http://cpa-lab.com/tech/0131/tb/

2008/04/23(水) PHP-mail関数よりSMTP送信の方が高速

はてブ情報 はてブに登録 はてブ数 qdmailspok
現在、QdmailのSMTP対応の作業中です。
ちまたでは、mail関数は、ソケット通信をその都度、ONOFFするので、SMTP送信の方が早い、と言われているようです。

Qdmailで100通のメールを自分あてに送ってみると以下のような結果になりました。
mail関数2.036秒
SMTP自作メソッド1.94秒
※さくらインターネットでの3回平均。PHP5。*1

SMTP送信の方が約5%高速でした。

体感的には、50%ぐらいSMTPのほうが速い感じはしました。
今回は自作のSMTP通信メソッドでしたが、Pear::Mailとかだとどうなんでしょうね。

Qdmailは、重い前処理があり、最後の最後に、mail関数に渡すか、SMTP送信するかにわかれる(予定)なので、そのへんのオーバーラップを考えると、もっと大量のメールを送信した場合には、如実に速度差が現れるのではないかと思います。
(レンタルサーバーで数千~数万通のテストは怖くてできない)

しかし、SMTP対応にする意義は、mail関数が使用できない環境でもメールを送信することができるようになるということかと思っています。

*1 : ラフなテストなので詳細は省略


名前:  非公開コメント   

  • TB-URL  http://cpa-lab.com/tech/0130/tb/
  • SMTP送信を使うべき3つの理由-PHP CPA-LABテクニカル spok
    ■さらば、mail,mb_send_mail関数SMTP送信を使うべし!mail,mb_send_mailはトラブルの元改行コードこちらmail関数のハマりどころ でも書いたように、mail関数は、改行コードが難解である。mb_send_mailも、文字化...