2016-12-20 11 views
1

私はLAMP(Linux Apache MySQL PHP)で稼働している修理状況&の注文の注文状況を追跡するためのWebアプリケーションを開発しています。私は、ユーザーが電子メール通知の頻度をカスタマイズできるようにする方法について、いくつかの入力が必要です。LAMP Web Appのユーザー設定可能な通知頻度

現在、毎週月曜日の午前6時にcronジョブを実行して、未処理ジョブの各ユーザーに電子メールを送信するPHPスクリプトを実行しています。しかし、私は、ユーザーには送信時刻を選択するだけでなく、週の曜日も柔軟に選択できるようにしたいと考えています。

私が持っていたアイデアの1つは、電子メール通知設定をMySQLデータベースに保存してから、現在の日付/時刻が設定した基準に合致する場合のみ、電子メールで通知するPHPスクリプトを作成することでした&は、同じサイクル内で2回送信されないようにするコードで記述します。それから私はちょうど毎分、または何でも、cronの仕事を実行することができます。

または、どういうわけか、PHPを使ってプログラマチックに各ユーザーの個別のcronジョブを作成する方がよいでしょうか?

すべての入力をいただければ幸いです! :)

答えて

0

あなたは正しくありません。

個々のcronは多くのリソースを消費します。さまざまな時間にメールを送信する要求で、10kのユーザーを想像してみてください...これは10kのタスクを意味します。

最適な解決策は、ユーザーに対して実行され、正しい処置をとるcronタスクを作成することです。ユーザーの

反復、設定した日付/時刻を確認し、変更を検出し、どこかにフラグを追加してメールを送信するので

(属性 last_cron_scandateまたは next_calculated_cron_scandateは良い解決策かもしれない)「それは完了だ」と述べました
関連する問題