0

I developed a web application for a company. It's a node app -- basically, all it needs is npm install and npm start to run. The app does need Puppetteer to run. DB wise, I am using JawsDb which can be located in Australia or the US. Right now it's in the US since the main server is in the US.

I am using Heroku at the moment, using the puppeteer-heroku buildpack. However, right now all of the users are in Australia, whereas the app is hosted in the US. This is proving bad -- especially last night, when the submarine link went down and traffic to the US was going through India -> Europe (it took about 2 minutes to download 1Mb).

I obviously need to deploy this in Australia somehow. Heroku does offer location of servers in Australia, but only for "private spaces" and enterprise customers. I emailed them, basically begging for a local Australian deployment, but I don't like my chances.

On one hand, Heroku really does everything for you -- click on one button, and you have the perfect environment with the buildpack installed. On the other hand, there is a lot more that can go wrong.

What are my options? I am considering these:

  • Get a Linux server from Amazon and install node on it. I've done it before. But, it would be another server to maintain. Also, I would need to install NginX as a reverse proxy etc. etc. Before I know it, I've entered sysadmin hell. Plus, scaling will be a problem later on.

  • Use Amazon directly. I heard that Amazon does have a system where you submit a node app "as is" and they provide the right environment for it. However, I can't find it. Hints?

  • Find a service equivalent to Heroku where I can deploy the software. However, it will need to be something that allows buildpacks so that it can run Puppetteer.

What would you do?

Merc
  • 719
  • 1
  • 6
  • 16

1 Answers1

1

While I'm not an expert on hosting Node applications on AWS, it seems like the product you're looking for is Elastic Beanstalk, it provisions the instances you need to AWS and automates a lot of the tedious admin work. However, you'll probably need to do some changes to your app to get it to work.

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

Stuggi
  • 3,366
  • 4
  • 17
  • 34