我有几个遵循类似格式的python脚本:您传入一个日期,并且它是:-检查我的S3存储桶中文件名中具有该日期的文件,然后进行解析,或者-运行一个python脚本,执行某些操作分析该日期的文件(运行需要1个小时以上)
我正在寻找一种无服务器的解决方案,该解决方案可以让我在一定范围内调用这些函数,然后并行运行它们。由于我的python脚本持续时间长,因此AWS和Google Cloud Functions之类的服务由于超时(分别为15分钟和9分钟)而无法正常工作。我查看了Google Cloud Dataflow,但是不确定相对于我的相对简单用例而言是否过大。
尽可能减少中断的事情很重要,所以我倾向于使用AWS,Google Cloud等产品。
我还希望能够通过日志查看每个作业进度的仪表板,因此我可以看到哪些日期已完成,哪些日期存在错误(以及错误是什么)
Cloud Run路线图中已计划了长时间运行,但目前尚无日期。
今天,最好的推荐方式是use AppEngine in addition of Task Queue。使用推送队列,在manual scaling mode中部署时,您最多可以运行24小时。但是请注意,手动缩放不会缩放为0!
如果您喜欢容器,我知道GCP上有2种“奇怪”的解决方法:
可悲的是,它不像功能或云运行那样容易使用。您没有HTTP端点,只需用您想要和享受的日期来调用它即可。但是您可以将其包装到一个函数中,该函数执行对Cloud Build或AI Platform培训的API调用。