在澳大利亚本地部署节点应用程序

在澳大利亚本地部署节点应用程序

我为一家公司开发了一个 Web 应用程序。这是一个节点应用程序——基本上,它只需要npm installnpm start即可运行。该应用程序确实需要 Puppetteer 才能运行。数据库方面,我使用的是 JawsDb,它可以位于澳大利亚或美国。目前它在美国,因为主服务器在美国。

我目前正在使用 Heroku,使用 puppeteer-heroku buildpack。然而,现在全部的用户在澳大利亚,而应用程序托管在美国。这很糟糕——尤其是昨晚,海底链路中断,到美国的流量要经过印度 -> 欧洲(下载 1Mb 大约需要 2 分钟)。

我显然需要以某种方式将其部署到澳大利亚。Heroku 确实提供了澳大利亚服务器的位置,但仅适用于“私人空间”和企业客户。我给他们发了电子邮件,基本上是在恳求他们在澳大利亚本地部署,但我并不喜欢这种机会。

一方面,Heroku 确实为你做了一切——只需单击一个按钮,你就会拥有安装好 buildpack 的完美环境。另一方面,还有很多可能出错的地方。

我有什么选择?我正在考虑这些:

  • 从 Amazon 获得一台 Linux 服务器并在其上安装节点。我以前做过。但是,这需要维护另一台服务器。此外,我还需要安装 NginX 作为反向代理等。不知不觉中,我进入了系统管理员地狱。此外,以后扩展将是一个问题。

  • 直接使用亚马逊。我听说亚马逊确实有一个系统,你可以“按原样”提交节点应用程序,他们会为其提供合适的环境。但是,我找不到它。有什么提示吗?

  • 找到一个与 Heroku 相当的服务,我可以在其中部署软件。但是,它需要允许 buildpacks,以便可以运行 Puppetteer。

你会怎么办?

答案1

虽然我不是在 AWS 上托管 Node 应用程序的专家,但您正在寻找的产品似乎是 Elastic Beanstalk,它可以为 AWS 提供您需要的实例,并自动执行大量繁琐的管理工作。但是,您可能需要对您的应用程序进行一些更改才能使其正常工作。

https://aws.amazon.com/getting-started/hands-on/deploy-nodejs-web-app/

相关内容