- 504 名前:login:Penguin [2012/07/08(日) 13:44:17.11 ID:sh/N6Cl5]
- webプログラムと関連する質問なんですが、お願いします。(PHPとcentOS6を想定してます)
よくwebサービスで、自動送信メールという機能があって(会員登録時の確認メールとか) あれは exec("/path/to/mail.php " &> /dev/null &'); みたいな方法で処理すると思いますが プロセスとか負荷という側面で考えた時、 バックグラウンド処理させず、mail.phpに一度アクセスする=メール送信するという単純な仕組みで サイトのユーザーがmail.phpに100人アクセスするのと、 バックグラウンド処理で上記のexec();で100人が実行するのとどう違うんでしょうか exec();での実行の場合、mail.phpを実行するというプロセスが大量に立ち上がることになるんですか? また、そうだとしたらどのタイミングで終了するんでしょうか 「直接exec();で叩かずにメール送信のプログラムをサービス化するなどして、 DBに一定周期でアクセスしてデータがあればそれを拾って送信」 というやり方が良いというのは知ってるんですが、内部的にどんな理由なのかはわからず聞きたいと思いました よろしくお願いします
|

|