谷歌云存储上传触发 python 应用程序替代云函数

问题描述

我想了解当文件上传到 Google Cloud Storage 时触发的 Python 应用的最佳架构是什么,是否进行一些处理并将文件输出到 Google 云端硬盘?

我曾尝试使用 Cloud Functions,但我在日志中收到了 Function invocation was interrupted. Error: memory limit exceeded.

我还学习了本教程 Trigger Cloud Run with events from Eventarc,所以我知道一种方法是使用 EventArc 和 Cloud Audit 日志。

2 个问题:

  1. 由于我需要更高的内存限制,还有哪些其他方法
  2. 如何从云审计日志中获取存储桶名称文件名?通过protoPayload.resourceName

解决方法

您可以使用发布订阅。您可以创建 PubSub notification 并创建对所需服务的推送订阅。

  • Http 云功能
  • 应用引擎
  • 云运行
  • 在某处运行的任何 HTTP 服务(VM、Kubernetes、本地,...)

EventArc 主要是这个过程的封装,只能调用 Cloud Run 服务(目前)