В чем разница между Google Cloud Scheduler и GAE cron? - PullRequest
0 голосов
/ 09 января 2019

После прочтения документов

Я думаю, они в основном одинаковы.

Я могу использовать GAE cron job + pub/sub + cloud function для реализации тех же функций, которые есть у cloud scheduler.

В моем понимании, между ними, похоже, есть некоторые различия:

  1. Облачный планировщик может быть более удобным для настройки частоты. Чтобы обновить частоту GAE cron job, необходимо обновить конфигурацию, например schedule: every 1 hours из cron.yaml, и заново развернуть ее.

  2. Нет необходимости реализовывать архитектуру заданий cron (интегрировать GAE, GAE cron service, pub/sub, cloud function и т. Д.) Самостоятельно, что означает, что вам не нужно писать код для объединения их вместе.

Я прав? Или какие-то другие отличия?

1 Ответ

0 голосов
/ 09 января 2019

Вы правы в том, что Google Cloud Scheduler является своего рода развитием механизма работы cron GAE, чтобы сделать его более удобным и гибким. Вы можете видеть, что они все еще связаны, так как Cloud Scheduler doc указывает:

Чтобы использовать Cloud Scheduler, ваш проект должен содержать приложение App Engine который расположен в одном из поддерживаемых регионов. Если ваш проект делает у вас нет приложения App Engine, вы должны создать его.

Исторически GAE cron была единственной службой cron, предлагаемой платформой. Вы могли только предназначаться для обработчика GAE, чтобы получить запрос от cron. Оттуда вы действительно можете выполнять такие действия, как публикация в pub / sub, вызывать функцию HTTP Cloud или запускать задание потока данных, но вам всегда приходилось развертывать службу GAE для ее обработки, что было неоптимально.

Новый Cloud Scheduler (все еще в бета-версии на данный момент) делает его более простым для использования с Pub / Sub, Cloud Functions, а также с любой общедоступной конечной точкой HTTP (может быть локально). И, конечно, обработчики App Engine. В будущем может быть добавлено больше целей для большего количества вариантов использования.

Наконец, как вы упомянули, API, управляемый им, отделяет его от App Engine и его файла cron.yaml и упрощает динамическое создание и обновление заданий cron.

...