为什么GAE Go运行时1.11最大并发请求不起作用?

由于转到GAE运行时1.11,我们注意到实例数量要多得多。当我深入研究问题时,GAE似乎不是并发运行的。

这是前端设置中非常轻巧的模块:

automatic_scaling:
  min_idle_instances: 1
  max_idle_instances: 2
  min_pending_latency: 0.030s
  max_pending_latency: automatic
  max_concurrent_requests: 80
  target_throughput_utilization: 0.95

GAE每秒发出约50个请求,它启动了2个活动实例。每个都有约25 QPS,平均延迟小于20毫秒。甚至图表也显示实例并不十分繁忙。

设置中什么会导致此问题?

我认为Go runtime 1.9没有这个问题。并且该文档说,它忽略了最大并发请求设置,该设置应该使Go runtime 1.11的性能更好。

zhanjial 回答:为什么GAE Go运行时1.11最大并发请求不起作用?

如果延迟超过30ms,则max_pending_latency: automatic设置将使您的应用程序扩展。如果在当前情况下(有2个实例),您的平均延迟略低于20,那么在初始情况下,它有可能在短时间内超过30,从而触发了扩展。如果您不希望发生这种情况,可以随时手动设置max_pending_latency,将其设置为大于30的值。

关于与Go 1.9的比较,已知Go 1.11消耗的内存和CPU能力比其祖先略高,所以这是正常的。

总而言之,我认为您所遇到的情况不是问题,而是正常现象。如果您不同意,可以向我提供您完整的app.yaml消毒过的文件,我会更深入地了解是否有任何问题并编辑我的答案。

本文链接:https://www.f2er.com/3098514.html

大家都在问