Google App Engine中的实例延迟

时间:2012-01-28 19:23:09

标签: google-app-engine latency

我正在运行一个免费的应用程序,并使用GAE的Python运行时使用1个最大空闲实例。

根据http://code.google.com/appengine/docs/adminconsole/instances.html

  

您的应用程序的延迟对数量的影响最大   为您的流量提供服务所需的实例如果您提供服务请求   很快,单个实例可以处理大量请求。

这似乎表明将“应用程序设置”中的滑块调整到最小延迟是最好的。

然而,根据http://code.google.com/appengine/docs/adminconsole/performancesettings.html#Setting_the_Minimum_Pending_Latency

似乎具有高延迟可以防止负载高峰引发新实例。

延迟基本上是在响应请求峰值的能力(高延迟)与在给定时间段内处理的请求数量(低延迟)之间的权衡吗?

1 个答案:

答案 0 :(得分:4)

“待定延迟”是指在App Engine决定启动另一个实例之前,请求可以在队列中停留多长时间。如果请求到达时所有应用程序实例都处于忙碌状态,请求将在队列中等待由下一个可用实例处理。如果它超出最小值,App Engine可能会决定启动一个新实例来处理请求。 (您还可以调整最大挂起延迟设置。)

最小挂起延迟是可配置的,因为启动新实例需要花费时间并且需要花钱。较大的最小挂起延迟意味着App Engine将在启动新实例之前保留更长的待处理请求(并让它们等待),从而有利于实例成本以处理更多流量。较小的最小待决延迟意味着随着流量的增加,App Engine将更频繁地启动新实例。

术语“延迟”只是指您的应用响应请求所需的时间。您的应用程序响应请求的速度越快,单个实例可以处理的请求就越多,请求队列通常就越短。较低的延迟总是很好,但应由应用程序来完成它需要快速完成的任务。