首页 > 解决方案 > 水平自动缩放应用程序如何在计算引擎上工作?

问题描述

我使用 Flask 编写了一个 Web 应用程序模型,并将其部署到 Google 计算引擎上的 VM 实例。后端是机器学习模型。我可以通过外部 IP 访问此应用程序。但是,如果两个或更多用户尝试使用此应用程序预测某事,它就会崩溃。我认为解决方案是水平扩展 vm 实例,以便更多用户可以访问。

我查看了谷歌文档和下面的链接,以大致了解这些步骤。 将现有 VM 实例 (bitnami) 用于自动缩放实例组

但我仍然对这种自动缩放的工作原理感到困惑。

  1. vm 实例模板不包含文件和虚拟环境,如何自定义这些信息到模板,还是不可能?
  2. 如果我将应用部署到自动生成的虚拟机实例之一,当更多人使用该应用时,新生成的实例也会与第一个完全相同(包含 Web 应用的所有文件)?

标签: web-applicationsgoogle-compute-enginehorizontal-scaling

解决方案


首先,您遇到的主要问题是当两个或更多用户使用它时应用程序崩溃。您提出 Autoscale 解决方案的原因是因为根本原因可能是 VM 没有足够的资源。我建议先尝试在高资源 VM 上对其进行测试,看看它是否真的是资源问题。或者更可取的是,检查应用程序上的错误日志以查看崩溃原因的线索。

回答您有关自动缩放的问题

  1. 您将根据应用程序的磁盘映像创建您的实例模板,该信息也可以在有关您问题的帖子的答案中找到。
  2. 您需要将应用程序部署到实例模板,它会根据所需资源自动复制自身。

如何在 Google Cloud Platform 中配置托管实例组和自动扩缩


推荐阅读