Ich habe einen eigenständigen Batch-Job konvertiert, um Sellerie für den Versand der Arbeit zu verwenden. Ich benutze RabbitMQ. Alles läuft auf einer einzigen Maschine und keine anderen Prozesse verwenden die RabbitMQ-Instanz. Mein Skript erstellt nur eine Reihe von Aufgaben, die von Arbeitern verarbeitet werden.Messung Sellerie Aufgabe Ausführungszeit
Gibt es eine einfache Möglichkeit, die Zeit vom Beginn meines Skripts bis zum Abschluss aller Aufgaben zu messen? Ich weiß, dass dies bei der Verwendung von Nachrichtenwarteschlangen etwas kompliziert ist. Aber ich möchte es nicht in der Produktion machen, nur zum Testen und um eine Leistungsschätzung zu bekommen.
Aber dummy_task eine andere Aufgabe sein wird, und kann auf verschiedenen Arbeiter ausgeführt werden oder signifikant später als die ursprüngliche Aufgabe. – homm
@homm, ja, aber das OP hat explizit gesagt, dass es einen einzelnen Worker-Knoten gibt und keine anderen Prozesse den RabbitMQ-Knoten verwenden, daher werden nur die Tasks berechnet, die wir messen. Die einzige Verzögerung ergibt sich aus dem Empfang der Zeitmessaufgaben zum letzten Mal, aber der Akkord ist auf einem 1-Sekunden-Zeitgeber. –
Keine anderen Prozesse, aber keine "anderen Aufgaben", oder? Wenn es keine freien Worker-Prozesse gibt, wartet dummy_task. – homm