首页 > 解决方案 > 如何将 Cron 作业节点 Js 脚本部署到 Google Cloud?

问题描述

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

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

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

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

我之前通过使用 Heroku Scheduler 实现了这一点,但是我在将 Puppeteer 部署到 Heroku 时遇到了问题,因此我使用 GCP,因为 Puppeteer 在谷歌云节点 js 环境中运行良好。

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

谢谢

标签: node.jsgoogle-app-enginegoogle-cloud-platformgoogle-cloud-functions

解决方案


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

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

然后,为了能够将您的 Cloud Function 连接到 MongoDB 集群,本详细指南将向您展示如何操作。

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


推荐阅读