Ich möchte eine Computersimulation, die auf einem Hintergrundprozess läuft (angefangen mit redis rq), wo ich den aktuellen Zustand abfragen und Parameter mit Django ändern kann.Informationen aus lang andauerndem Hintergrundprozess in Django erhalten
Aus Gründen der Einfachheit: Lassen Sie uns sagen, dass ich den folgenden Code für eine lange Zeit ausgeführt werden soll (was ich durch eine Python Arbeiter-Set würde):
def simulation(a=1):
value = 0
while a != None:
value += a
time.sleep(5)
Dann wird durch eine URL besuchen, es würde mir den aktuellen Wert von value
sagen. Ich könnte auch an eine URL POST, um den Wert a
, d. H. a=None
, um die Simulation zu stoppen oder a=-10
, um das Verhalten zu ändern.
Was ist der beste Weg, dies zu tun?
Für mich hört sich das nach einer eher primär meinungsbezogenen Frage an, aber ich würde vorschlagen, wenn Sie bereits mit python-rq vertraut sind. das könnte man wohl auch mit reinem redispy machen. – e4c5
Hi @ e4c5, du hast recht, es hat so angefangen. Ich frage mich nur, ob es eine Technik gab, die Leute benutzten, von denen ich nichts wusste. Es scheint, als ob meine Versuche gescheitert sind, sind Ihnen andere Möglichkeiten bekannt, dies zu erreichen? – Ben
Ich habe dieses Problem mehr als einmal gelöst, indem ich redis.lpush() und redis.rpop() verwendet habe, die einfachste Art, die ich kenne – e4c5