私のサーバが12:00:05に5つのクライアントデバイスに同じ要求を送信したとします。私は90秒(12:01:35まで)待ってから、どのクライアントがリクエストに適切に応答したかチェックして、何か他のことをしたいと思います。このようなことを達成する最良の方法は何ですか?Laravel 5.2でジョブをどのように遅延させるのですか?
ジョブをキューに入れて最初にsleep(90)
を使用する必要がありますか?問題は、この種のジョブが完了するまでに少なくとも90秒かかることで、サーバーはデフォルトで60秒後にタイムアウトに設定されます。私はサーバーの設定を変更することができますが、他のジョブは60秒以上経過してもタイムアウトしたと見なされます。
代わりにスケジュールされたタスクをキューに入れる必要がありますか?ここで問題となるのは、Laravelとcronは、最も近い分(12:01または12:02、ただし12:01:35ではなく)に精度をスケジューリングするだけだと思います。
「遅延ディスパッチ」キューにジョブを送信するとどうなりますか? –