什么是在Google App Engine中运行预定的应用程序的最佳实践?

时间:2018-08-13 06:16:48

标签: google-app-engine google-cloud-platform

我创建了一个非常小的应用程序,该应用程序调用外部网站,接收JSON数据并将其作为JSON文件存储在我的应用程序根文件夹中。 在Google Cloud / App引擎中自动执行此应用程序的最佳做法是什么?

  • 使用cron.yaml选项吗? -使用Queue.yaml选项吗?

1 个答案:

答案 0 :(得分:1)

根据您的情况进行阅读,您必须使用cron.yaml选项(也就是Cron服务),但是有一些地方需要解释。请记住,其中一些链接是针对Python的,但是您可以切换到您的编程语言,而该语言在问题中并未提及:

  • “接收JSON数据,并将其作为JSON文件存储在我的应用程序根目录中文件夹”。 App Engine Standard中的You can't write to local disk和App Engine Flexible中的磁盘都是临时的,因此,我不会依赖它。如果您想存储此信息,我建议您使用Cloud Storage,有StandardFlexible都可以使用的库。
  • 如果使用Standard,则可以同时使用queue.yaml选项(也称为the Task Queue serviceCron service)。在这种情况下,我建议您使用Cron服务,因为配置Task Queue服务要简单得多。您只需要configure the cron.yaml file即可在需要的时候运行您的应用程序,仅此而已。如果您的请求超过了App Engine Standard中所有请求的60秒限制,我将只建议使用Task Queue服务,因为有了Task Queue服务,您可以将该任务“放入”队列。
  • 如果您决定使用Flexible,请记住Task Queue服务has limited availability on this environment。至于Cron服务,the configuration is more or less the same

因此,最后,我将选择App Engine Standard,并与Cloud Storage结合使用以保留JSON文件,因为Standard环境也比Flexible环境便宜。