Verwenden Sie Redis, um einen Mechanismus zu entwerfen, der bestimmte Daten in einem gesperrten Zustand markiert
迷茫
迷茫 2017-06-26 10:49:39
0
1
1228

Das Programm geht jedes Mal zur Datenbank, um 10 Daten mit run_status=0 zu lesen,

Wenn eine Aufgabe ausgeführt wird, aktualisiert die Datenbank Felder

run_status=-1

bedeutet, dass diese Aufgabe gesperrt ist.

Nach Abschluss der Aufgabenausführung ist natürlich run_status = 0, was darauf hinweist, dass die Aufgabe entsperrt wurde.

Jetzt kommt das Problem. Wenn eine Aufgabe ausgeführt wird, befindet sich run_status=-1 aufgrund einer Ausnahme, z. B. wenn der Server das Programm während der Veröffentlichung plötzlich unterbricht, immer im gesperrten Zustand. Aber es wird nicht wirklich umgesetzt.

Jetzt müssen Sie einen Mechanismus entwickeln, um dies zu verhindern. Die aktuelle Umgebung kann Redis verwenden.

迷茫
迷茫

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

Antworte allen(1)
曾经蜡笔没有小新

我发现这个问题太简单了。设置一个key,过期时间为60秒即可。每次检测这个key是否存在

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage