Google cloud storage 为bucket中的每个文件运行googlecloud函数

Google cloud storage 为bucket中的每个文件运行googlecloud函数,google-cloud-storage,google-cloud-functions,google-cloud-pubsub,Google Cloud Storage,Google Cloud Functions,Google Cloud Pubsub,我有一个由Google Cloud存储对象触发的Google Cloud函数。finalize事件。当我部署此函数的新版本时,我希望对bucket中的每个现有文件(该函数的前一版本已经处理过)运行它。处理bucket中的所有现有文件是一项长时间运行的任务,因此我不认为googlecloud函数可以处理一行中的所有文件 目前我所能看到的最好的选择是创建一个谷歌云功能,我可以通过HTTP触发该功能,该功能将列出bucket中的所有文件,并通过Google PubSub发布每个文件一个事件,然后使用我

我有一个由Google Cloud存储
对象触发的Google Cloud函数。finalize
事件。当我部署此函数的新版本时,我希望对bucket中的每个现有文件(该函数的前一版本已经处理过)运行它。处理bucket中的所有现有文件是一项长时间运行的任务,因此我不认为googlecloud函数可以处理一行中的所有文件

目前我所能看到的最好的选择是创建一个谷歌云功能,我可以通过HTTP触发该功能,该功能将列出bucket中的所有文件,并通过Google PubSub发布每个文件一个事件,然后使用我最初的Google Cloud函数的一个稍加修改的版本来处理这些事件,该函数接受一个PubSub事件来代替
对象。finalize
存储事件


我认为它可以工作,但我想知道是否有更简单的方法来执行此操作。

如果您尝试执行的操作可能需要比云函数可以运行的最长时间更长的时间,则需要将该操作拆分为多个步骤。您对每个文件使用PubSub触发器的方法对我来说似乎是一种有效的方法。

一个选项可能是编写一个小程序,列出bucket中的所有对象,并为每个对象向云发布一条消息,以GCS更改的方式触发您的功能。

谢谢,我想这是我在问题中试图解释的选项。