为什么 Google Cloud Tasks 这么慢?

Why is Google Cloud Tasks so slow?

我使用 Google Cloud Tasks 和 AppEngine 来处理任务,但任务在发送到我的 App Engine 端点之前在队列中等待大约 2-3 分钟。

任务没有"delay"设置,希望马上发送。

所以问题是:Cloud Tasks 很慢吗?

如下图所示,Cloud Tasks 给出的预计到达时间约为 3 分钟:

Google 的官方说法是,这是您可以从他们的任务队列中得到的最好结果。

根据我的经验,您如何配置任务似乎会影响它们的执行速度。

好像是:

  • 如果您不更改任务队列的默认行为(例如,最大并发数等)并且您没有指定任务的执行时间(例如,eta),那么您的任务将执行提交后很快。
  • 如果您搞砸了这两件事中的任何一件,那么 Google 需要更长的时间来执行您的任务。我的猜测是控制任务速率和执行的额外开销。

我从你的屏幕截图中看到你有一个预计到达时间为 2 分 49 秒的任务,这是你的任务 运行 之前的时间。您有 high 桶大小和并发数,所以我认为您的问题更多地与您在排队任务时使用的参数有关,尤其是 scheduled_time 属性。检查您的代码,看看您是否在为您的任务添加延迟,并确保将其调低。