Как хранить детали для каждого выполнения задания - PullRequest
0 голосов
/ 13 февраля 2019

Я создаю простое приложение Flask, которое пользователи будут использовать для отправки работ и проверки результатов.Поскольку работы будут дорогостоящими вычислениями, моя идея состоит в том, чтобы просто отправить задачу в Celery и позволить удаленным работникам выполнять вычисления и сохранять результаты в корзине S3.Теперь, когда результатом работы APScheduler будет просто идентификатор задачи из Celery, мне нужен способ сохранить этот идентификатор после завершения задания.Затем пользователь будет ссылаться на него позже при проверке фактических результатов.

Поскольку APScheduler хранит только определения заданий, а не какие-либо подробности о фактических выполнениях, моя идея состоит в том, чтобы добавить прослушиватель для события EVENT_JOB_EXECUTED и сохранить его самостоятельно (Я использую хранилище заданий MongoDB, поэтому я бы просто сохранил его в коллекции вместе с коллекцией определений заданий).

Есть ли лучший способ достижения моей цели?

...