Как заставить мое облачное приложение бездействовать с минимальными затратами? - PullRequest
0 голосов
/ 13 апреля 2019

У меня есть легкий скрипт на python, который должен запускаться два раза в день: один раз в фиксированное время, а другой - во время, определенное при первом запуске.

Я хотел бы разместить его в облаке(PythonAnywhere, Google App Engine или AWS lambda ...).

Первое выполнение легко запланировать с помощью предлагаемых crontab-подобных сервисов.Однако, во-вторых, я не нашел другого способа, кроме ожидания простоя (с time.sleep или планировщиком Python).

Я хотел бы:

  • бесплатно ждать / спать
  • динамически планировать новое одноразовое задание
  • сделать запрос к API, который будет вызывать мой API обратно в указанное время

1 Ответ

0 голосов
/ 21 апреля 2019

В AWS это может быть выполнено с использованием конечного автомата.Конечный автомат позволит вам вызывать лямбда-функцию.Вы можете заставить конечный автомат ждать в течение длительного периода времени (я думаю, до одного года) без затрат на исполнение.Затем он вызовет следующую лямбда-функцию.

https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-wait-state.html https://docs.aws.amazon.com/step-functions/latest/dg/connectors-lambda.html

...