ホームページ >バックエンド開発 >PHPチュートリアル >crontab がバックグラウンド タスクを実行するときにテーブル全体のスキャンを回避する方法
補足: タスクテーブルがあります。タスクテーブルには、フィールド、予想完了時間 (complete_time)、およびタスクのフィードバック内容 (フィードバック) があります。
タスクのフィードバック情報がなく、予想完了時刻の 1 日前、1 時間、または 1 分前である場合には、テーブルを定期的にスキャンし、タスク実行者にメッセージを送信する必要があります。 私の現在のアプローチは、crontab を使用してタスクを実行し、テーブルを 1 時間に 1 回スキャンすることですが、テーブル全体をスキャンする必要性を回避する方法はありますか。 ?
オンラインで待っています。
最後のスキャン後の位置を記録するためにコンテナを使用します
次回はこの位置からスキャンを開始します
最後のスキャン後の位置を記録するためにコンテナを使用します
次回はこの位置からスキャンを開始します
フルテーブルスキャンを避けたくありませんか?言葉を取り戻しますか? どの記録をスキャンするか決めるのはあなた次第ではありませんか?
スキャン範囲がわからない場合、テーブル全体をスキャンできないわけはありません。
このアプローチとモデレータのコンテナ追加の提案を組み合わせることで、テーブル全体のスキャンを回避できます。
フルテーブルスキャンを回避したくないですか?言葉を取り戻しますか? どの記録をスキャンするか決めるのはあなた次第ではありませんか?
スキャン範囲がわからない場合、テーブル全体をスキャンできないわけはありません。