【问题标题】:gcp cloud pub/sub push subscription max ack deadline not compatible with cloud run max runtimegcp 云发布/订阅推送订阅最大确认截止日期与云运行最大运行时不兼容
【发布时间】:2021-02-11 15:38:52
【问题描述】:

GCP documentation 表示云运行容器的最大运行时间可以是 60 分钟(超过 15 分钟的超时是 Beta 功能。)现在,触发云运行的方法之一是通过 pub-sub 推送订阅。但是,GCP documentation 表示 pub-sub 推送订阅的最大确认截止日期为 10 分钟。

现在,我的云运行容器需要 15 分钟才能完成。并且在容器启动 10 分钟后,推送订阅错过了确认截止日期,并且主题重新发布了消息,因此创建了另一个云运行实例。而且这个过程会无限循环。

谁能建议这里可以做什么?

【问题讨论】:

  • 如果作业/任务花费的时间超过 Pub/Sub 超时时间,则重新设计需求/目标/服务。使用 Google Cloud Tasks 管理长时间运行的作业。 Pub/Sub 并不是要成为工作经理。 cloud.google.com/tasks

标签: google-cloud-platform google-cloud-pubsub google-cloud-run


【解决方案1】:

TL;DR:使用具有更长超时时间的其他产品,例如 Cloud TaskWorkflows。每人最多 30 分钟。

如果你需要更多,我有一个奇怪的想法。但是让我知道是否已经足够了!


对于这个小故事,我参与了关于 60 分钟超时的 Alpha 版。我的第一个问题是:我该如何测试它?我不想为此创建虚拟机!

因此,Google 的无服务器团队意识到了这个问题,并承诺会改进一些产品。故事结束,我没有更多关于下一步和何时的意见!

【讨论】:

    【解决方案2】:

    discovered,只要tcp连接打开,官方Python客户端就会自动延长确认时间。但我不知道它会维持多久,所以我必须自己测试一下,因为客户端可能也有超时。我也不知道其他语言的任何其他官方客户端实现。 而且您可以使用 Anthos 获得更长的云运行时间,我相信最长可达 24 小时。

    【讨论】:

      猜你喜欢
      • 2021-04-24
      • 2021-02-27
      • 1970-01-01
      • 2021-12-03
      • 2019-06-23
      • 2021-10-30
      • 1970-01-01
      • 2021-05-06
      • 2023-01-01
      相关资源
      最近更新 更多