suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Verwenden Sie Redis, um einen Mechanismus zu entwerfen, der bestimmte Daten in einem gesperrten Zustand markiert

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.

迷茫迷茫2732 Tage vor1243

Antworte allen(1)Ich werde antworten

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-26 10:51:39

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

    Antwort
    0
  • StornierenAntwort