Google App Engine Autoscaling如何运作?

时间:2016-12-02 03:34:59

标签: google-app-engine autoscaling quota

此问题与Google App Engine配额和实例有关。

我部署了一个GAE应用,但未指定任何特定的缩放算法。从他们的文档来看,似乎默认是自动缩放。

那么他们什么时候将应用程序扩展到另一个实例,即什么时候新的实例确实产生?什么请求/ s导致第二个实例启动并且流量被拆分?

1 个答案:

答案 0 :(得分:5)

实际上它解释得很清楚。

来自Scaling dynamic instances

  

App Engine计划程序决定是否为每个新请求提供服务   使用现有实例(空闲或接受的实例)   并发请求),将请求放入待处理的请求队列,或   为该请求启动一个新实例。该决定考虑在内   可用实例的数量,应用程序的速度   一直在提供请求(延迟),以及启动需要多长时间   一个新的实例。

     

每个实例都有自己的传入请求队列。 App Engine   监视每个实例队列中等待的请求数。如果   App Engine检测到应用程序的队列过长   由于负载增加,它会自动创建一个新的实例   用于处理该负载的应用程序。

可以调整自动缩放的参数,请参阅Change auto scaling performance settingsScaling elements

如果您真的想对实例数量设置硬限制,则可能需要使用@NodeEntity public class Right{ @GraphId Long graphId; String id; //random generated UUID String name; //Properties & Constructor } @NodeEntity public class Left{ @GraphId Long graphId; String id; //random generated UUID String name; ParentClass parent; //Properties & Constructor } @NodeEntity public class ParentClass{ @GraphId Long graphId; String id; //random generated UUID String name; //Properties & Constructor } @NodeEntity public class LeftRight { @GraphId Long graphId; String id; @Relationship(type = "LEFTRIGHT_LEFT", direction = "OUTGOING") private Left left; @Relationship(type = "LEFTRIGHT_RIGHT", direction = "OUTGOING") private Right right; //Properties & Constructor } 配置或手动缩放来进行基本缩放。