Google app engine 你能基于云发布/子队列在谷歌应用引擎中触发自动缩放吗?

Google app engine 你能基于云发布/子队列在谷歌应用引擎中触发自动缩放吗?,google-app-engine,google-cloud-platform,google-cloud-pubsub,Google App Engine,Google Cloud Platform,Google Cloud Pubsub,我知道在缩放计算引擎实例组时,可以根据队列大小配置自动缩放,但我不确定如何在灵活的基于应用引擎的环境中复制此行为。这可能吗 我希望能够将我的前端服务与后端分离,并允许它们异步工作,但我不确定如何使用可能变得非常大的发布/子队列大小来扩展后端。我在app.yaml的autoscaling部分看到的唯一缩放选项与CPU利用率有关 App Engine Flexible environment当前仅支持基于目标cpu利用率的自动缩放(有关缩放设置,请参阅) 还请注意,您不能通过自动缩放设置实际运行的实

我知道在缩放计算引擎实例组时,可以根据队列大小配置自动缩放,但我不确定如何在灵活的基于应用引擎的环境中复制此行为。这可能吗


我希望能够将我的前端服务与后端分离,并允许它们异步工作,但我不确定如何使用可能变得非常大的发布/子队列大小来扩展后端。我在
app.yaml
autoscaling
部分看到的唯一缩放选项与CPU利用率有关

App Engine Flexible environment当前仅支持基于目标cpu利用率的自动缩放(有关缩放设置,请参阅)

还请注意,您不能通过自动缩放设置实际运行的实例数,而只能设置“max_num_instances”值。您可以通过appengineadminapi的方法以编程方式将其更新为更高的值,但autoscaler仍将决定仅基于cpu利用率实际生成新实例


您提到的最佳选择是允许并发请求和多线程,以便最大限度地使用每个实例。然后,您可以调整cpu的目标利用率值,以便在需要时生成新实例。

大型发布/子队列是否会自动提高正在运行的后端实例的cpu利用率,从而(间接)充当GAE flex自动缩放触发器?@DanCornilescu我认为可能是这样的,但不一定保证CPU利用率会随着队列大小的增加而增加。API调用或导致主线程空闲的任何其他任务可能会导致长延迟,但CPU利用率仍然较低。也许我需要在后端实现多线程来处理额外的消息,以提高利用率,但这似乎是不必要的?@DanCornilescu如果间接缩放在所有用例中都令人满意,那么为什么GCE存在发布/订阅的自动缩放问题?GCE没有GAE自动缩放…@DanCornilescu GCE可以自动缩放云发布/订阅的stackdriver度量