Google Cloud Scheduler 和 GAE cron 作业有什么区别?
What's the difference between Google Cloud Scheduler and GAE cron job?
阅读文档后
- 云调度程序 - https://cloud.google.com/scheduler/
- GAE 定时作业 -
https://cloud.google.com/appengine/docs/flexible/nodejs/scheduling-jobs-with-cron-yaml
- 云函数pub/sub触发器-
https://cloud.google.com/functions/docs/calling/pubsub
我觉得他们大部分是一样的。
我可以使用 GAE cron job
+ pub/sub
+ cloud function
来实现 cloud scheduler
具有的相同功能。
在我的理解中,它们之间似乎存在一些差异:
Cloud Scheduler可以更方便的调整频率。要更新 GAE cron job
的频率,您必须更新配置,例如 cron.yaml
的 schedule: every 1 hours
并重新部署。
无需实现cron作业架构(集成GAE
、GAE cron service
、pub/sub
、cloud function
等...)自己动手,这意味着您不再需要编写代码将它们组合在一起。
我说的对吗?或者,还有其他区别吗?
您说得对,Google Cloud Scheduler 是 GAE cron 作业机制的一种演变,使其更加用户友好和灵活。您可以看到它们仍然相关,因为 Cloud Scheduler doc 指定:
To use Cloud Scheduler your project must contain an App Engine app
that is located in one of the supported regions. If your project does
not have an App Engine app, you must create one.
从历史上看,GAE cron 作业是该平台提供的唯一 cron 服务。您只能以 GAE 处理程序为目标来接收来自 cron 的请求。从那里您确实可以执行诸如在 [=20= 上发布]、调用 HTTP 云函数或启动数据流作业之类的操作,但您总是必须部署 GAE 服务来处理它,这不是最佳选择。
新的 Cloud Scheduler 可以更直接地与 Pub/Sub、Cloud Functions 以及任何公开可用的 HTTP 端点(可能是本地的)一起使用。当然还有 App Engine 处理程序。将来可能会为更多用例添加更多目标。
最后,正如您所提到的,用于管理它的 API 将其与 App Engine 及其 cron.yaml 文件分离,并且可以更轻松地动态创建和更新 cron 作业。
阅读文档后
- 云调度程序 - https://cloud.google.com/scheduler/
- GAE 定时作业 - https://cloud.google.com/appengine/docs/flexible/nodejs/scheduling-jobs-with-cron-yaml
- 云函数pub/sub触发器- https://cloud.google.com/functions/docs/calling/pubsub
我觉得他们大部分是一样的。
我可以使用 GAE cron job
+ pub/sub
+ cloud function
来实现 cloud scheduler
具有的相同功能。
在我的理解中,它们之间似乎存在一些差异:
Cloud Scheduler可以更方便的调整频率。要更新
GAE cron job
的频率,您必须更新配置,例如cron.yaml
的schedule: every 1 hours
并重新部署。无需实现cron作业架构(集成
GAE
、GAE cron service
、pub/sub
、cloud function
等...)自己动手,这意味着您不再需要编写代码将它们组合在一起。
我说的对吗?或者,还有其他区别吗?
您说得对,Google Cloud Scheduler 是 GAE cron 作业机制的一种演变,使其更加用户友好和灵活。您可以看到它们仍然相关,因为 Cloud Scheduler doc 指定:
To use Cloud Scheduler your project must contain an App Engine app that is located in one of the supported regions. If your project does not have an App Engine app, you must create one.
从历史上看,GAE cron 作业是该平台提供的唯一 cron 服务。您只能以 GAE 处理程序为目标来接收来自 cron 的请求。从那里您确实可以执行诸如在 [=20= 上发布]、调用 HTTP 云函数或启动数据流作业之类的操作,但您总是必须部署 GAE 服务来处理它,这不是最佳选择。
新的 Cloud Scheduler 可以更直接地与 Pub/Sub、Cloud Functions 以及任何公开可用的 HTTP 端点(可能是本地的)一起使用。当然还有 App Engine 处理程序。将来可能会为更多用例添加更多目标。
最后,正如您所提到的,用于管理它的 API 将其与 App Engine 及其 cron.yaml 文件分离,并且可以更轻松地动态创建和更新 cron 作业。