sendmailメールの一斉配信に失敗します
業務系webアプリの運用担当者です。
システムの機能としてメールの一斉配信ができるのですが、
webアプリからの一斉配信に部分的に失敗します。
300通の配信指定に対し、実際には50通前後で配信が中断されていました。
(前後、というのは何度か配信を実行し50通程度なら一斉配信できたという意味です)
ログレベルが低く細かい解析はできていないのですが、
syslogをみると配送できていたアドレスのみ「Sent OK」で記述されていました。
実際の負荷量によるとは思うのですが、
想定しているのは300通程度の一斉配信です。
宛先MTAはほぼばらばらになります。個人向けフリーアドレスも相当数あります。
配信にたとえ数十分かかっても、ちゃんと送信できればいいのです。
現在の設定では、子プロセスを一切生成しないようになっています。
そこで、sendmail.cf内下記を変更することで解決を試みようと
考えました。
・変更前現在の値
#O ForkEachJob=False
#O MaxDaemonChildren=0
・変更後の想定値
O ForkEachJob=True
O MaxDaemonChildren=20
私の解釈では、この変更によりキューが発生した際には子プロセスを最大20個
まで生成し分散処理され、300通のメールが無事配送されることを想定しています。
マシンスペックは大まかに、
ハードウェアはSunFire、OSはSolaris9、
CPU:1GHz、Mem:1GB
となっています。
what コマンドを使用したsendmailバージョン表示が下記です。
# /usr/ccs/bin/what /usr/lib/sendmail | grep -i version
$Id: version.c,v 8.163.2.8 2006/07/26 17:24:02 ca Exp $
システムの本番環境のために試しにいろいろ変えてみるというのはやりづらく、
運用実績のある方からコメントを頂戴できますと幸甚です。
どなたかこのあたりのチューニングを経験された方はいらっしゃいますでしょうか。
宜しくお願い致します。