首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >google云上的Python脚本调度

问google云上的Python脚本调度
EN

Stack Overflow用户
提问于 2021-10-30 08:37:11
回答 2查看 87关注 0票数 1

我正面临着这个问题,我有一个python脚本,需要在每天凌晨00:00在google cloud上运行,可能使用Google Cloud Run,我想知道的是我找不到好答案的非常具体的东西,事情是...哪种方法在技术上是实现这一目标的最佳方式?让云在特定时间触发某个脚本是不是更好?或者让一个始终运行的容器等待(使用锁)一天中的某个时间,然后运行一个函数会更好。脚本面临的任务相当繁重,它扫描图片并试图从中提取纯文本(图片是从instagram页面下载的)。

因为我从来没有在云环境中实现过这样的东西,所以我需要知道的归结为:

“锁等待”脚本与云处理的调度器(例如Google cloud Scheduler)相比有多重呢?从经济上讲,像我脚本中的任务这样繁重的任务有什么关系吗?

EN

回答 2

Stack Overflow用户

发布于 2021-10-30 09:22:48

我认为Cloud Scheduler可能是一个很好的首选解决方案/方法。例如,它可以发出一些http请求,或者将消息推送到pubsub (可以用作脚本的拉或推触发器)。

在脚本下,我理解任何所需的功能。它可以以许多不同的方式实现- Cloud Function (或者一组不同的Cloud Function共同工作以归档一个目标),Cloud Run,或者其他任何东西。

我通常的个人偏好是pattern Cloud Scheduler => PubSub Topic => push Cloud Function。其他人可能更喜欢其他变体。

在您的案例中选择解决方案(包括“脚本”实现)-我认为-取决于功能和非功能需求、上下文、范围、开发和维护解决方案的人员的技能和知识、时间、资本支出和运营成本预算等。

票数 2
EN

Stack Overflow用户

发布于 2021-10-31 12:50:05

我不知道这在技术上是否是最好的,但我会选择Cloud Run和Cloud Scheduler的组合(我们目前已经为我们的一个项目运行了这种组合)。

Cloud Run,因为您的脚本似乎一天只运行一次,而Cloud run在不处理请求时基本上会进入睡眠状态。这使得总体成本更低,即它在收到请求时唤醒,执行请求并返回休眠(休眠时不向您收费)。

Cloud Scheduler在凌晨00:00触发Cloud上的url终结点运行顾名思义,Scheduler -安排作业在特定时间运行。

我还建议保护您的url端点(将部署在Cloud Run上的端点)。这确保了只有你的Cloud Scheduler是触发url的人(除非他们拥有必要的权限,否则某人不能“错误地”访问互联网上的url并触发作业)。我们有一个关于如何做到这一点的博客article。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69778026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档