0
votes

I'm really new to deployment and I wanted to see if anybody had some experience cutting costs. By requirement, I need to use Google Cloud Platform and the frontend team is writing all of their code in React/React Native. I plan on creating a REST API with cloud SQL and Node.js. Any advice on whether these technologies are a good choice would also be appreciated.

I've been reading about App Engine and Compute Engine recently and I've been having trouble estimating the cost of deploying this project. Currently, the plan is to deploy my Node.js code to app engine and use cloud SQL functionality. Would it be a better idea to deploy all code to an ubuntu server in compute engine? I am very new to deploying web apps, any and all advice would be greatly appreciated!

1
App Engine standard with datastore (not SQL) is extremely economical.gaefan
This is a very difficult question to answer. Getting something working during a development phase might have one cost, but then scaling your app to handle production traffic you might have a totally different cost and might even have a cost of having to rewrite your app or parts of it to handle the scale. You're likely going to primarily get opinion based answers and not a solid answer for your specific situation. You're likely going to have to bench mark your options with an eye towards forecasted production usage.BrettJ
There's a nice talk by Colt McAnlis on this very topic: "Google Cloud Platform on a shoestring budget (Google I/O '18)" youtube.com/watch?v=N2OG1w6bGFojc275

1 Answers

1
votes

The GCP Pricing Calculator is the best way to work out what a proposed solution will cost for you. As an example, here is a GAE+Cloud SQL HA pricing ($113/month), and here is a single GCE pricing ($30/month).

Bear in mind that this pricing does not include the "Always Free" basic usage.

As a word of caution, you should also think about reliability, scalability and portability as well as cost. For reliability, try and avoid "single VM" solutions as if the VM is broken or a zone unavailable, your application will be completely down. For scalability, single VM solutions are also problematic unless you plan to be able to shard your workload later. For portability, you must be careful when using Google-specific technology like App Engine or Datastore which can be hard to move away from. These are complex topics which I'm only touching on to give you an idea of the kinds of things you can think about when choosing a solution.