このカテで良いのか迷いましたが質問させていただきます。
タイマー設定でメールを送信したいと思っています。
Webアプリケーション(Apache+PHP)で利用者が時刻を指定して
登録をすると、指定した時刻にメールが送信される仕組みです。
そこで、登録が発生したタイミングで at コマンド(シェル)を
発行し、atキューに溜める方式を取ろうと考えています。
仮に、同一時刻に数千件のat コマンドが登録された場合、
- それらのコマンドは同時に実行されるのでしょうか?
- それとも登録された順等にシーケンシャルに実行されるのでしょうか?
前者の場合、数千件のプロセスが一時に同時に起動してしまう
自体は避けたいと思うので他の策を練ろうと思います。
ちなみにMTAはqmailです。
また、Webアプリケーションからの登録でタイマーメール送信をする際の
at 登録以外の方式がありましたらご教授ください。
よろしくお願いします。
![](/media/z/2006/img/reference/logo_okwave.gif)
シーケンシャルに」という意味が、1つのコマンドの実行完了を待って次のコマンドを実行するという意味なら、違います。
厳密な順序はわかりませんが、同時刻に登録されたコマンドなら、並行して実行されます。
データベースに登録などして、crontabジョブでデータベース検索して送るんでしょうかね。