Google app engine 在Google云平台(App Engine)中,有没有办法通过基本的扩展设置最小实例数

Google app engine 在Google云平台(App Engine)中,有没有办法通过基本的扩展设置最小实例数,google-app-engine,google-cloud-platform,scaling,Google App Engine,Google Cloud Platform,Scaling,与自动缩放相比有一些实质性的好处,例如,对后台任务执行的限制更长 但是,从中可以看出,在基本的扩展设置中不可能设置最小数量的空闲实例,这似乎是一个重大疏忽。结果是,在使用率较低的情况下,我们的应用程序通常只剩下一个B2实例,然后,即使有两个请求命中,也会抛出500个错误,并且无法及时启动新实例 在自动缩放设置中,我们只需要增加空闲实例的数量来解决这个问题 我们的设置是: instance_class: B2 basic_scaling: max_instances: 35 idle_

与自动缩放相比有一些实质性的好处,例如,对后台任务执行的限制更长

但是,从中可以看出,在基本的扩展设置中不可能设置最小数量的空闲实例,这似乎是一个重大疏忽。结果是,在使用率较低的情况下,我们的应用程序通常只剩下一个B2实例,然后,即使有两个请求命中,也会抛出500个错误,并且无法及时启动新实例

在自动缩放设置中,我们只需要增加空闲实例的数量来解决这个问题

我们的设置是:

instance_class: B2
basic_scaling:
   max_instances: 35
   idle_timeout: 10m
当然,我们可以通过频繁地向预热实例添加cron作业来解决这一问题,以便始终需要>1个实例,但这似乎是一个糟糕的解决方法


还有其他人经历过这个问题吗?这是当前基本缩放的真正限制吗

很长一段时间以来,我一直对此感到沮丧,但是没有办法让最少数量的实例用于基本的扩展

正如您所想,crontab可以避免这种情况,但我想以一种干净的方式实现它,所以我使用了

具体来说,我实现了一个虚拟端点,它将每4分钟调用一次。我选择4是因为默认情况下,
idle\u超时时间是5分钟

<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
  <cron>
    <url>/admin/keepalive</url>
    <target>my-module</target>
    <description>Keepalive to get an always on instance with basic scaling</description>
    <schedule>every 4 minutes</schedule>
  </cron>
</cronentries>

/管理/保留
我的模块
Keepalive可获得具有基本缩放功能的始终打开实例
每4分钟