0

Digital Ocean (Ubunu 12.04) で LAMP スタックをセットアップしましたが、これはかなり安定しています。クラッシュが発生したのは、約 30,000 人に一斉メールを送信したときだけです。サーバーを使用してメッセージを送信するのではなく、サードパーティの電子メール サービス (iContact) を使用しています。Top でサーバーを監視すると、サーバーがしばらくの間 apache エントリ (それぞれ約 20MB) でいっぱいになり、メールの送信が完了すると元に戻ることがわかります。

クラッシュしないように Apache の設定を正常に調整しました。少しだけ遅くなります。これらはページへのヒットではありませんが、電子メール送信プロセス中に何かが apache を起動させ、大量のワーカーをスピンオフさせています。

私の質問は、何が起こっているのかを知るためにどこを見ればよいのでしょうか? 残念ながら、iContact は何の役にも立たず、私が見たログ ファイルはあまり情報を与えてくれませんでした。

4

1 に答える 1

0

以前は、1 台のマシンから直接 20 万人以上にメールを送信していました。ウェブページからそれをしようとするのは非常にクレイジーなので、コマンドラインベースのスクリプトを作成して、最初にデータベースに書き込み、次にデータベースから一度に最大50個送信し、途中で削除しました.

Symfony/Swiftmailer を使用すると、最近では非常に簡単です。送信部分は、'app/console swiftmailer:spool:send' を実行し続けるシェル スクリプトであり、データベースが空になるまでスリープして再起動します。

于 2014-12-16T16:32:10.147 に答える