node.js - 如何将 Cron 作业 Node Js 脚本部署到 Google Cloud?

标签 node.js google-app-engine google-cloud-platform google-cloud-functions

我有一个由 Cron 作业使用 node-cron 模块运行的 nodeJs 脚本

这个nodeJs脚本的目的是循环遍历我的MongoDB中的项目并运行一些函数。

是否可以将此nodeJS脚本/应用程序部署到GCP并让它在每个星期日运行? 在我的 NodeJS 应用程序的 CronJob 配置中,我已经让它只在每个星期日运行。

但是我想知道我是否可以使用 GCP 的调度程序,或者只是将我的 Cron-Job 保留在我的 NodeJs 中。

我之前已经通过使用 Heroku Scheduler 实现了这一目标,但是我在将 Puppeteer 部署到 Heroku 时遇到了问题,因此我使用 GCP,因为 Puppeteer 在 Google Cloud Node js 环境中运行良好。

如果有人能给我一些见解或一些关于我必须做什么的指示,我将不胜感激。

谢谢

最佳答案

您想要实现的目标可以通过使用 Google Cloud 设置 MongoDB Atlas 来完成。在这里您可以找到documentation .

然后,您可以使用 Cloud Scheduler 和 Pub/Sub 来触发 Cloud Function(在 NodeJS 中,就像您的脚本一样)。这是一个例子tutorial .

然后,为了能够将您的 Cloud Function 连接到 MongoDB 集群,此详细信息 guide将向您展示如何执行此操作。

这应该会给您一些见解,以便您开始自己搜索更多信息。请记住,有不同的选择。例如,您可以使用Firestore,而不是使用MongoDB。使用您的 Cloud Functions 并使用前面提到的 Pub/Sub 设置 Cron 计划。

关于node.js - 如何将 Cron 作业 Node Js 脚本部署到 Google Cloud?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69985229/

相关文章:

java - 即使设置 JAVA_HOME 属性后也会出现错误

google-app-engine - 用Python实现谷歌云机器学习引擎的在线预测

java - Google App Engine Java 程序并发

java - 如何在没有 Thread.sleep() 的情况下等待一段时间?

Python apache beam dataflow worker-启动错误: Failed to install packages: failed to install SDK: exit status 2

Python:使用 URL 将文件上传到 Google Cloud Storage

node.js - 让 express.js 从异步回调发送响应

javascript - NodeJS 无法访问子级中的对象范围

node.js - EADDRINUSE 127.0.0.1 :5858 during jest test debugging

javascript - 我的应用程序没有在按钮上关闭,electron.js