Redis を使用して、特定のデータをロック状態にマークするメカニズムを設計する
迷茫
迷茫 2017-06-26 10:49:39
0
1
1249

プログラムはデータベースにアクセスして毎回 10 run_status=0 データを読み取ります。

タスクが実行されると、データベースはフィールドを更新します

run_status=-1

は、このタスクがロックされていることを示します。

もちろん、タスクの実行が完了すると、run_status=0 になり、ロックが解除されたことを示します。

ここで問題が起こります。タスクの実行時、パブリッシュ中にサーバーが突然プログラムを中断するなどの何らかの例外により、run_status=-1 は常にロック状態になります。しかし、実際には実装されていません。

次に、これが起こらないようにメカニズムを設計する必要があります。どうしますか?現在の環境ではredisが利用可能です。

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(1)
曾经蜡笔没有小新

この質問は単純すぎると思いました。有効期限が 60 秒のキーを設定します。このキーが存在するかどうかを毎回確認してください

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート