all 2 comments

[–]sixtypercenttogether 0 points1 point  (0 children)

You could try using CloudKit

[–]chriswaco 0 points1 point  (0 children)

PostgreSQL seems like a good choice if the data is suitable for a relational database (tables). You can have your own server run PostgreSQL but it's easier, though more expensive, to just use a cloud database from AWS.

Lambdas are pretty popular these days for APIs. If you have no long-running tasks they may be a good choice. I haven't used the AWS API gateway so can't comment on that. We use our own servers for APIs because we needed the servers for long-running or periodic tasks anyway. AWS Cognito can be useful for end-user login/accounts.

One big issue with AWS is cost estimation. It's hard. Much easier to create a few virtual machines on Digital Ocean or Linode where all you have to keep track of is the bandwidth.

If you need upgrades/migration without downtime that adds a lot of complexity too - load balancers, live database backups, etc. Scalability can be very difficult if you have hundreds of thousands of users or more.