是什么原因导致“请求在等待太长时间而无法尝试满足您的请求后被中止”?

2023-12-14

是什么原因导致“请求在等待太长时间而无法尝试满足您的请求后被中止”?

这似乎是某种内部超时的结果,但我不知道这是在哪里配置的。 我们当前正在使用自动缩放,该错误是由于任务队列中的任务数量临时增加而导致的。自动缩放不应该创建更多实例来处理该请求吗?

此外,如果 Cloud Tasks 中的某个任务失败并显示“请求在等待太长时间而无法尝试处理您的请求后被中止”,是否会重试该任务,或者是否将其从队列中删除?

编辑:我发现了问题。 这是我们的 app.yaml 中的缩放配置:

basic_scaling:
  max_instances: 2

当我代理查看 f1-micro 后端上有许多图表的 munin 节点时,我发现了这一点。如果等待时间超过,响应将失败并出现 529 错误(min|max)_pending_latency- 可能它正在尝试创建一个新实例,因为违反了最小值,但发现它不能。

默认值似乎是 5 秒。您可以将其设置为app.yaml最多 15 秒。

automatic_scaling:
  min_pending_latency: 15s
  max_pending_latency: 15s

一旦我这样做了,我就不再收到等待 6 秒的请求的错误。当然,我确信 Google 希望您增加扩展实例的数量,或者使用更快的节点。但也许您只想扩展到一两个,或者 15 秒对于您想要做的事情来说是可接受的延迟。

作为参考,我的完整app.yaml:

runtime: php73
service: munin
instance_class: F1

automatic_scaling:
  max_instances: 1
  min_instances: 0
  target_cpu_utilization: 0.95
  target_throughput_utilization: 0.95
  max_concurrent_requests: 80
  max_pending_latency: 15s

handlers:
- url: .*
  script: auto
  secure: always
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是什么原因导致“请求在等待太长时间而无法尝试满足您的请求后被中止”? 的相关文章

随机推荐