Задержанные или случайные задачи с Google Cloud Scheduler - PullRequest
0 голосов
/ 04 мая 2020

В настоящее время я выполняю 2 сценария по недельному расписанию на Raspberry Pi со следующей конфигурацией:

Cron выполняет сценарий python в фиксированное время в неделю. Этот сценарий python ожидает от 0 до 50 часов, затем запускает сценарий python A. Он ждет около 16 часов и запускает сценарий A еще 3 раза каждые 8 ​​часов (выполнение сценария занимает в 4 раза больше времени при первом запуске). Через 8 часов после 4-го запуска запускается сценарий B.

Я хотел бы переместить свои сценарии на виртуальную машину Google Cloud для повышения надежности, но запускать виртуальную машину 24/7 просто для выполнения вычислений за 30 часов в течение 100 часов Период неэффективен и дорог.

Я знаю, что могу использовать Google Scheduler в качестве моего cron для еженедельного запуска виртуальной машины, но я все еще рискую позволить ей работать до 50 часов в ожидании запуска сценария A. Я понимаю, что cron поддерживает добавление случайного интервала ожидания, как указано в примере здесь :

30 8-21/* * * * sleep ${RANDOM:0:2}m ; /path/to/script.php

Однако, как я обнаружил, Google Cloud Scheduler ограничен 60 минутами и по праву так. В этом случае, каковы мои варианты? Поддерживает ли Google Cloud Task отложенный запуск виртуальной машины (до 50 часов)? Это что-то, что Pub Sub поддержит вместо этого?

В моих сценариях используется библиотека python, которая, по моему мнению, не совместима с Google App Engine, поэтому мне нужно будет еще выяснить, как вызвать конкретную c скрипт в ВМ по триггеру.

...